ArcGIS上根据经纬度求地球表面两点间距离的实现

以米为单位。.Net2.0,C#实现。
       public static double DistanceOfTwoPoints(double lng1,double lat1, double lng2, double lat2, GaussSphere gs)
        {           
            double radLat1 = Rad(lat1);
            double radLat2 = Rad(lat2);
            double a = radLat1 - radLat2;
            double b = Rad(lng1) - Rad(lng2);
            double s = 2 * Math.Asin(Math.Sqrt(Math.Pow(Math.Sin(a / 2), 2) +
             Math.Cos(radLat1) * Math.Cos(radLat2) * Math.Pow(Math.Sin(b / 2), 2)));

字串3
            s = s * (gs == GaussSphere.WGS84 ? 6378137.0 : (gs == GaussSphere.Xian80 ? 6378140.0 : 6378245.0));
            s = Math.Round(s * 10000) / 10000;
            return s;
        }
       
        private static double Rad(double d)
        {
            return d * Math.PI / 180.0;
        } 字串9

GaussSphere 为自定义枚举类型
    /// <summary>
    /// 高斯投影中所选用的参考椭球
    /// </summary>
    public enum GaussSphere
    {
        Beijing54,
        Xian80,
        WGS84,
    }

from: http://hi.baidu.com/bell9527/item/732ac2fe7db97eec1b111f9d

ArcGIS上根据经纬度求地球表面两点间距离的实现的更多相关文章

  1. 使用ArcGIS实现WGS84经纬度坐标到北京54高斯投影坐标的转换

    [摘 要] 本文针对从事测绘工作者普遍遇到的坐标转换问题,简要介绍ArcGIS实现WGS84经纬度坐标到北京54高斯投影坐标转换原理和步骤. [关键词] ArcGIS 坐标转换 投影变换 1 坐标转换 ...

  2. C# JackLib系列之如何获取地球上两经纬度坐标点间的距离

    获取地球上两经纬度坐标点间的距离,利用[大圆距离公式]   A diagram illustrating great-circle distance (drawn in red) between tw ...

  3. matlab练习程序(地图上画经纬度)

    需要看下生成的数据在地球上的经纬度具体位置. 投影为墨卡托投影.   clear all; close all; clc; load coast; a=load('out.txt'); %自己的经纬度 ...

  4. Portal for ArcGIS上传shp文件中文乱码可能情况

    环境: windows Server 2008:Portal for ArcGIS 10.2:ArcGIS for Server 10.2:PostgreSQL 9.2:ArcGIS for Desk ...

  5. mysql根据经纬度求两地距离

    #1.两点距离(1.4142135623730951) ,),point(,)); select st_distance(point (120.10591, 30.30163),point(120.1 ...

  6. Python计算地图上两点经纬度间的距离

    处理地图数据时,经常需要用到两个地理位置间的距离.比如A点经纬度(110.0123, 23.32435),B点经纬度(129.1344,25.5465),求AB两点之间的距离.我们可以用haversi ...

  7. Onenet GPS上传经纬度的格式 笔记

    首先搞清楚几个问题: 1.GPS输出的经纬度 GPS获取的数据: 3438.1633,N,11224.4992,E 格式是ddmm.mmmmm 2.Onenet服务器识别的经纬度坐标格式 服务器识别需 ...

  8. 利用日期、经纬度求日出日落时间 C语言程序代码(zz)

    先贴在这了,后面应该用得着 http://zhidao.baidu.com/link?url=iw-hcd_tLpRtf4r2Kh-NmDPaQ10UdlunBQUWaz14J-eNEq5fw-y83 ...

  9. C# 后台通过网络地址访问百度地图取回当前在地图上的经纬度,并将取回的复杂Json格式字符串反序列化(Newtonsoft.Json)

    直接上代码:解释都在代码中 ak 要自己去百度地图申请. 其中申请ak的时候,有个属性render直接填*就行. namespace HampWebControl 是我的空间命名! namespace ...

随机推荐

  1. 【转】使用itms-services从浏览器发布iOS App遇到的问题总结

    itms-service是apple为iOS企业用户($299)提供的无线分发安装方式所使用的协议,使用这种方式发布应用不需要通过App Store,任何iOS设备都可以安装企业用户通过这种方式发布的 ...

  2. datatables的Bootstrap样式的分页怎么添加首页和尾页(引)

    找到dataTables.bootstrap.js(版本3):(此项目中文件名为:dataTableExt.js) $.fn.dataTableExt.oApi.fnPagingInfo = func ...

  3. mysql log

    mysql binlog3种格式,row,mixed,statement. 解析工作 mysqlbinlog --base64-output=DECODE-ROWS -v mysql-bin.0001 ...

  4. Java并发之CopyOnWriteArrayList

    CopyOnWriteArrayList是线程安全的.并且读操作无锁的ArrayList.不像ArrayList默认初始化大小为10的Object[],CopyOnWriteArrayList默认初始 ...

  5. window.location.search

    http://i.cnblogs.com/EditPosts.aspx?opt=1&opt2=x 就拿上面这个URL来说window.location.search的返回值为opt=1& ...

  6. 解决每次打开office 2010显示正在配置的问题

    解决每次打开office 2010显示正在配置的问题 OFFICE 2010 MSDN版出来后,下载安装 ,启动后发现每次打开都会出现“正在配置”的进度,删除重装亦不成功,对SETUP.EXE改名也不 ...

  7. PXE-无人值守安装

    [root@rhel6 ~]# cp /root/ks.cfg /var/ftp/ks.cfg [root@rhel6 ~]# cat ks.cfg #platform=x86, AMD64, 或 I ...

  8. [ZZ] MATLAB中Legend的一些控制方法

    http://www.eetop.cn/blog/html/03/6503-23349.html 如果一个图中我们画了n条曲线,但是我们只想加图例说明(legend)的只有m条 (m<n).网上 ...

  9. SSH_框架整合7--整个项目CODE

    一 架构 1Action类 2 配置文件 3 View页面 二  Code 1 src (1)com.atguigu.ssh.actions >EmployeeAction.java packa ...

  10. Func系列3:自定义模块

    简介 Func自带的模块已经非常丰富,但在日常系统运维当中,尤其是面对大规模的服务器集群.不同类别的业务平台,次是Func自带的模块或许已经不能满足我们的需求,所以有必要通过自定义模块来填补这块的不足 ...