精华内容
下载资源
问答
  • 经纬度概念

    2010-07-15 17:07:38
    赤道为0度,北极是北纬90度,南极是南纬90度.以英国伦敦格林维治天文台为界,东面半个叫东半球,西面半个叫西半球,垂直于纬度的线叫经线.格林维治天文台为0度经线,东经180度和西经180度就是同一条线,全球共360度,二个...
    地球是圆的,以赤道为界,平行于赤道的叫纬度,以北叫北纬,以南叫南纬.赤道为0度,北极是北纬90度,南极是南纬90度.以英国伦敦格林维治天文台为界,东面半个叫东半球,西面半个叫西半球,垂直于纬度的线叫经线.格林维治天文台为0度经线,东经180度和西经180度就是同一条线,全球共360度,二个半球各180度,全球分为24个时区,东西半球各12个时区,每个时区360/24=15度,我国处在东八区.经纬度其实就是一个坐标.确定了经纬度,就是确定了坐标,就可以精确定位
    展开全文
  • 因为有需求,在知道一点经纬度和距离的情况下,需要知道另一点的经纬度。 之前在网上也有查找,也有不少的案例,但是多数都是语焉不详,看不太明白。后来自己整理和重新再思考了下,这里给出一个自认为说得还算比较...

    因为有需求,在知道一点经纬度和距离的情况下,需要知道另一点的经纬度。

    之前在网上也有查找,也有不少的案例,但是多数都是语焉不详,看不太明白。后来自己整理和重新再思考了下,这里给出一个自认为说得还算比较简明扼要的版本。

    话不多说,具体如下:

    假设方位角是α, 那从点1到点2的平移距离分别如下所示d*sinα, d*cosα。 这里正北为0度。基中点1经纬度(long1, lat1)和距离d是已知的。 求点2的经纬度(long2,lat2)

     

    还有一个隐藏的信息,就是点1所在的纬度,其实也是一个有用的角度,通过它可以知道当前纬度的那个切面的半径长度,下图红线所示用arc表示。这里假设地球是近似球体,赤道圆的半径是ARC,侧从下图中可以得出:

    就是知道φ是当前点1的纬度。则当前的纬度的切面半径 arc = ARC*cos(φ) ,其中φ其实就是当前的方位的纬度值,即arc = ARC*cos(lat1)

     

    这里还要再讨论下地球半径,其实地球是一个椭球体。

    极半径 从地心到北极或南极的距离,大约3950英里(6356.9088千米)(两极的差极小,可以忽略)。

    赤道半径 是从地心到赤道的距离,大约3963英里(6377.830千米)。

    如果只是做近似计算的,我们这里取平均距离,平均半径 大约3959英里(6371.393千米) 。这个数字是地心到地球表面所有各点距离的平均值。

    这里取平均半径那么ARC=6371.393*1000(米)

     

    通过上面的知识铺垫后, 计算就简单化了,

    【计算思路】

    1. 计算第二点的经度,就是 水平平移的距度(d*sinα)除以 当前纬度切面周长(2π*arc),再每乘以360度) ,就知道了水平横向平移了多少度,再加上long1,就是long2的值了。

     2. 计算第二点的纬度,比较简单,就是, 垂直平移的距离d(d*cosα)除以 地球纵向周长,再乘上360度,就知道纵向平移了多少度,再加上lat1,就知道lat2的值了。

    long2 = long1 + d*sinα/[ARC*cos(lat1)*2π/360]

    lat2 = lat1 +d*cosα/ (ARC *2π/360)

     

    BTW, 最后再啰嗦一句,如果你是要通过编程实现的,一定要注意所用编程语言中,三角函数的值用的是度数还是弧度,不然也是得不到正确的结果的。

     

    C#代码实现:

            /// <summary>
            /// 计算移动后的经纬度
            /// </summary>
            /// <param name="lon">经度</param>
            /// <param name="lat">纬度</param>
            /// <param name="a">方位角(弧度)</param>
            /// <param name="dst">移动距离</param>
            /// <returns></returns>
            public double[] LongLatOffset(double lon, double lat, double a, double dst)
            {
                double arc = 6371.393 * 1000;
                lon += dst * Math.Sin(a) / (arc * Math.Cos(lat) * 2 * Math.PI / 360);
                lat += dst * Math.Cos(a) / (arc * 2 * Math.PI / 360);
    
                return new[] { lon, lat };
            }

     

    展开全文
  • 经纬度计算

    2016-02-22 11:39:42
    根据两点经纬度计算距离 这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的 假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离...

    根据两点经纬度计算距离

    这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的
    假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这个圆圈
    就叫作“赤道”。在赤道的南北两边,画出许多和赤道平行的圆圈,就是“纬圈”;构成这些圆圈的线段,
    叫做纬线。我们把赤道定为纬度零度,向南向北各为90度,在赤道以南的叫南纬,在赤道以北的叫北纬。
    北极就是北纬90度,南极就是南纬90度。纬度的高低也标志着气候的冷热,如赤道和低纬度地地区无冬,
    两极和高纬度地区无夏,中纬度地区四季分明。 
    其次,从北极点到南极点,可以画出许多南北方向的与地球赤道垂直的大圆圈,这叫作“经圈”;构成这
    些圆圈的线段,就叫经线。公元1884平面坐标图年,国际上规定以通过英国伦敦近郊的格林尼治天文台的
    经线作为计算经度的起点,即经度零度零分零秒,也称“本初子午线”。在它东面的为东经,共180度;
    在它西面的为西经,共180度。因为地球是圆的,所以东经180度和西经180度的经线是同一条经线。各国
    公定180度经线为“国际日期变更线”。为了避免同一地区使用两个不同的日期,国际日期变线在遇陆地时
    略有偏离。 
      每一经度和纬度还可以再细分为60分,每一分再分为60秒以及秒的小数。利用经纬线,我们就可以确定
    地球上每一个地方的具体位置,并且把它在地图或地球仪上表示出来。例如问北京的经纬度是多少?我们
    很容易从地图上查出来是东经116度24分,北纬39度54分。在大海中航行的船只,只要把所在地的经度测
    出来,就可以确定船在海洋中的位置和前进方向。 纬度共有90度。赤道为0度,向两极排列,圈子越小,
    度数越大。
    横线是纬度,竖线是经度。 
    当然可以计算,四元二次方程。 
    经度和纬度都是一种角度。经度是个两面角,是两个经线平面的夹角。因所有经线都是一样长,为了度量
    经度选取一个起点面,经1884年国际会议协商,决定以通过英国伦敦近郊、泰晤士河南岸的格林尼治皇家
    天文台(旧址)的一台主要子午仪十字丝的那条经线为起始经线,称为本初子午线。本初子午线平面是起
    点面,终点面是本地经线平面。某一点的经度,就是该点所在的经线平面与本初子午线平面间的夹角。在
    赤道上度量,自本初子午线平面作为起点面,分别往东往西度量,往东量值称为东经度,往西量值称为西
    经度。由此可见,一地的经度是该地对于本初子午线的方向和角距离。本初子午线是0°经度,东经度的最
    大值为180°,西经度的最大值为180°,东、西经180°经线是同一根经线,因此不分东经或西经,而统称
    180°经线。 
      纬度是个线面角。起点面是赤道平面,线是本地的地面法线。所谓法线,即垂直于参考扁球体表面的线。
    某地的纬度就是该地的法线与赤道平面之间的夹角。纬度在本地经线上度量,由赤道向南、北度量,向北
    量值称为北纬度,向南量值称为南纬度。由此可见,一地的纬度是该地对于赤道的方向和角距离。赤道是
    0°纬线,北纬度的最大值为90°,即北极点;南纬度的最大值为90°,即南极点。

    经纬度互换

    度(DDD):E 108.90593度    N 34.21630度

        如何将度(DDD):: 108.90593度换算成度分秒(DMS)东经E 108度54分22.2秒?转换方法是将108.90593整数位不变取108(度),用0.90593*60=54.3558,取整数位54(分),0.3558*60=21.348再取整数位21(秒),故转化为108度54分21秒.

       同样将度分秒(DMS):东经E 108度54分22.2秒 换算成度(DDD)的方法如下:108度54分22.2秒=108+(54/60)+(22.2/3600)=108.90616度

    因为计算时小数位保留的原因,导致正反计算存在一定误差,但误差影响不是很大。1秒的误差就是几米的样子。GPS车友可以用上述方法换算成自己需要的单位坐标。

     

     

    经纬度换算成米

    纬度分为60分,每一分再分为60秒以及秒的小数。

    纬度线投射在图上看似水平的平行线,但实际上是不同半径的圆。有相同特定纬度的所有位置都在同一个纬线上。 
    赤道的纬度为0°,将行星平分为南半球和北半球。 
    纬度是指某点与地球球心的连线和地球赤道面所成的线面角,其数值在0至90度之间。位于赤道以北的点的纬度叫北纬,记为N,位于赤道以南的点的纬度称南纬,记为S。
    纬度数值在0至30度之间的地区称为低纬地区,纬度数值在30至60度之间的地区称为中纬地区,纬度数值在60至90度之间的地区称为高纬地区。
    赤道、南回归线、北回归线、南极圈和北极圈是特殊的纬线。
    纬度1秒的长度
    地球的子午线总长度大约40008km。平均:
    纬度1度 = 大约111km 
    纬度1分 = 大约1.85km 
    纬度1秒 = 大约30.9m 

    根据地球上任意两点的经纬度计算两点间的距离

    地球是一个近乎标准的椭球体,它的赤道半径为6378.140千米,极半径为 6356.755千米,平均半径6371.004千米。如果我们假设地球是一个完美的球体,那么它的半径就是地球的平均半径,记为R。如果以0度经线为基 准,那么根据地球表面任意两点的经纬度就可以计算出这两点间的地表距离(这里忽略地球表面地形对计算带来的误差,仅仅是理论上的估算值)。设第一点A的经 纬度为(LonA, LatA),第二点B的经纬度为(LonB, LatB),按照0度经线的基准,东经取经度的正值(Longitude),西经取经度负值(-Longitude),北纬取90-纬度值(90- Latitude),南纬取90+纬度值(90+Latitude),则经过上述处理过后的两点被计为(MLonA, MLatA)和(MLonB, MLatB)。那么根据三角推导,可以得到计算两点距离的如下公式:

    C = sin(MLatA)*sin(MLatB)*cos(MLonA-MLonB) + cos(MLatA)*cos(MLatB)

    Distance = R*Arccos(C)*Pi/180

    这里,R和Distance单位是相同,如果是采用6371.004千米作为半径,那么Distance就是千米为单位,如果要使用其他单位,比如mile,还需要做单位换算,1千米=0.621371192mile

    如果仅对经度作正负的处理,而不对纬度作90-Latitude(假设都是北半球,南半球只有澳洲具有应用意义)的处理,那么公式将是:

    C = sin(LatA)*sin(LatB) + cos(LatA)*cos(LatB)*cos(MLonA-MLonB)

    Distance = R*Arccos(C)*Pi/180

    以上通过简单的三角变换就可以推出。

    如果三角函数的输入和输出都采用弧度值,那么公式还可以写作:

    C = sin(LatA*Pi/180)*sin(LatB*Pi/180) + cos(LatA*Pi/180)*cos(LatB*Pi/180)*cos((MLonA-MLonB)*Pi/180)

    Distance = R*Arccos(C)*Pi/180

    也就是:

    C = sin(LatA/57.2958)*sin(LatB/57.2958) + cos(LatA/57.2958)*cos(LatB/57.2958)*cos((MLonA-MLonB)/57.2958)

    Distance = R*Arccos(C) = 6371.004*Arccos(C) kilometer = 0.621371192*6371.004*Arccos(C) mile = 3958.758349716768*Arccos(C) mile

    在实际应用当中,一般是通过一个个体的邮政编码来查找该邮政编码对应的地区中心的经纬度,然 后再根据这些经纬度来计算彼此的距离,从而估算出某些群体之间的大致距离范围(比如酒店旅客的分布范围-各个旅客的邮政编码对应的经纬度和酒店的经纬度所 计算的距离范围-等等),所以,通过邮政编码查询经纬度这样一个数据库是一个很有用的资源。
    附:C#代码:

    private const double EARTH_RADIUS = 6378.137;//地球半径
    private static double rad(double d)
    {
       return d * Math.PI / 180.0;
    }

    public static double GetDistance(double lat1, double lng1, double lat2, double lng2)
    {
       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)));
       s = s * EARTH_RADIUS;
       s = Math.Round(s * 10000) / 10000;
       return s;

    }

    本文转载

    展开全文
  • 经纬度小总结

    千次阅读 2013-04-21 18:21:29
    运用百度地图API获取线路图的时候,一直没有出线路结果,调试了半天发现竟然是把目的地的经纬度写反了!网上查到的经纬度是(121.47004, 31.23136),但GeoPoint的构造函数,却是纬度在前:publicGeoPoint(int ...

          运用百度地图API获取线路图的时候,一直没有出线路结果,调试了半天发现竟然是把目的地的经纬度写反了!网上查到的经纬度是(121.47004,  31.23136),但GeoPoint的构造函数,却是纬度在前:publicGeoPoint(int latitudeE6, int longitudeE6)。

          为此特地去google了下经纬度的相关知识,总结如下,至于为什么GeoPoint的构造函数是纬度在前就不明白了。

          经纬度是经度(Longitude)与纬度(Latitude)的合称组成的一个坐标系统,例如人民广场经纬度为(121.480683,  31.239188),即北纬121和东经31。

          零度经线叫做本初子午线,而经度是地球上一个地点离本初子午线的南北方向走线以东或以西的度数。从本初子午线向东、向西,各分作180度,以东的180度属于东经,习惯上用“E”作代号;以西的180度属于西经,习惯上用“W”作代号。

         赤道是最长的纬线,它与两极之间的距离相等,把地球分为南、北两半球。而纬度就是指某点与地球球心的连线和地球赤道面所成的线面角,其数值在0至90度之间。赤道以北的纬度,叫北纬,习惯上用“N”作代号;赤道以南的纬度,叫南纬,习惯上用“S”作代号。北纬、南纬各有90度。北极和南极分别是90度N和90度S。

     

    经纬线与大洲、大洋的关系(摘自维基百科)

    • 纬线

     

    纬线与大洲的关系与大洋的关系附近主要的地理事物
    北极圈通过亚洲北部、欧洲东部、北美洲北部通过挪威海白令海峡冰岛格陵兰岛南部、阿拉斯加
    60°N通过欧洲北部、北亚中部、阿拉斯加南部通过北大西洋北部、北太平洋北部斯堪的纳维亚半岛南部、波罗的海
    40°N通过中国华北、新疆、中亚、欧洲南部、北美中部通过北太平洋中部、北大西洋中部中国北京、中国塔里木盆地土耳其地中海、美国纽约
    30°N通过中国中部、西亚、非洲北部、北美南部同上中国上海印度北部、伊朗苏伊士运河新奥尔良
    北回归线通过中国南部、南非、西亚、北非中部、北美南部通过北太平洋南部、北大西洋南部、印度洋之阿拉伯海台湾、印度半岛、阿拉伯半岛红海撒哈拉沙漠夏威夷群岛
    赤道通过非洲中部、东南亚、南美北部通过太平洋、大西洋、印度洋马来群岛新加坡马六甲海峡刚果盆地、东非高原、亚马逊平原
    南回归线通过非洲南部、南美中部、澳大利亚大陆中部通过南太平洋、南大西洋、南印度洋马达加斯加巴西里约热内卢
    30°S通过非洲南端、南美南部、澳大利亚大陆南部同上 
    60°S(不通过任何大陆)同上 
    南极圈南极洲边缘同上南极半岛


    • 经线

     

    经线与大洲的关系与大洋的关系附近主要的地理事物
    通过欧洲西部、非洲西部、南极洲通过北冰洋、大西洋英国、西班牙、阿尔及利亚玛丽加纳
    20°E通过北部、中欧、非洲中部、南极洲通过北冰洋、大西洋与印度洋的分界线波罗的海波兰匈牙利巴尔干半岛利比亚中非南非
    60°E通过欧洲东部、亚洲西部、南极洲通过北冰洋印度洋西部乌拉尔山咸海伊朗高原阿拉伯海
    90°E通过中国西部、印度半岛东部、南极洲通过北冰洋、印度洋中部叶尼塞河、中国新疆、中国西藏(青藏高原)、恒河平原
    120°E通过北亚东部、中国东部、澳大利亚西部、南极洲通过北冰洋、印度洋东部大兴安岭渤海中国长江三角洲、菲律宾、印度尼西亚澳大利亚西部
    160°E通过北亚东部、大西洋中部(东西半球分界线)、南极洲通过北冰洋、太平洋西部堪察加半岛所罗门群岛
    180°通过亚洲大陆东端、大洋洲岛屿、南极洲通过北冰洋、太平洋中部阿留申群岛斐济群岛汤加新西兰东部
    120°W通过北美西部、南极洲通过北冰洋、太平洋东部西雅图温哥华圣弗朗西斯科洛杉矶
    75°W通过北美东部、南美西部、南极洲通过北冰洋、大西洋西部、太平洋东南部费城古巴加勒比海中部、哥伦比亚秘鲁
    20°W通过冰岛、南极洲通过北冰洋、大西洋冰岛

     

     

     

     

     

     

    展开全文
  • 经纬度简介 这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的 假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这个...
  • 因为有需求,在知道一点经纬度和距离的情况下,需要知道另一点的经纬度。之前在网上也有查找,也有不少的案例,但是多数都是语焉不详,看不太明白。后来自己整理和重新再思考了下,这里给出一个自认为说得还算比较...
  • 这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离...北极就是北纬90度,南极就是...
  • 以下面这幅鱼眼图像为例:视场角假设为180度,如果按照球的北极点(南极点)为图像的中心,展开后会是这个样子:图像中心为北极点图像中心为南极点当然这样做是不行的,所以需要把球绕x轴旋转90度后展开,这样球的.....
  • 根据两点经纬度计算距离 这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的假想线),在地球中腰画...其次,从北极点到南极点,可以画出许多南北方向的与地球赤道垂直的
  • 经纬度计算距离

    2014-03-08 23:19:00
    这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离...北极就是北纬90度,南极就是...
  • 经纬度直线距离

    2017-11-05 07:51:00
    这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的 假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,... 北极就是北纬90度,...
  • 计算经纬度之间的距离

    千次阅读 2017-06-18 02:02:31
    给你两个经纬度,计算他们之间的距离 这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的 假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北...
  • 上海的经纬度是多少

    万次阅读 2019-01-29 15:38:39
    上海的经纬度是多少
  • 经纬度互换和计算距离

    千次阅读 2016-02-27 16:38:26
    经纬度互换 度(DDD):E 108.90593度 N 34.21630度  如何将度(DDD):: 108.90593度换算成度分秒(DMS)东经E 108度54分22.2秒?转换方法是将108.90593整数位不变取108(度),用0.90593*60=54.3558,取整数位54(分),0....
  • 经纬度换算成米

    千次阅读 2020-04-22 11:16:43
    经纬度换算成米 纬度分为60分,每一分再分为60秒以及秒的小数。 纬度线投射在图上看似水平的平行线,但实际上是不同半径的圆。有相同特定纬度的所有位置都在同一个纬线上。  赤道的纬度为0°,将行星平分为南半球...
  • 根据两点经纬度坐标计算距离

    万次阅读 多人点赞 2015-05-09 11:23:29
    其次,从北极点到南极点,可以画出许多南北方向的与地球赤道垂直的大圆圈,这叫作 “经圈” ;构成这些圆圈的线段,就叫经线。公元1884平面坐标图年,国际上规定以通过英国伦敦近郊的格林尼治天文台的 经线作为...
  • mysql计算经纬度公式

    2017-02-24 15:08:56
    第一点经纬度:lng1 lat1    第二点经纬度:lng2 lat2    round(6378.138*2*asin(sqrt(pow(sin( (lat1*pi()/180-lat2*pi()/180)/2),2)+cos(lat1*pi()/180)*cos(lat2*pi()/180)* pow(sin( (lng1*pi()/...
  • Android_通过两个点的经纬度计算距离

    千次阅读 2013-11-16 14:10:37
    这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这...北极就是北纬90度,南极
  • 经纬度互换 度(DDD):E 108.90593度 N 34.21630度 如何将度(DDD):: 108.90593度换算成度分秒(DMS)东经E 108度54分22.2秒?转换方法是将108.90593整数位不变取108(度),用0.90593*60=54.3558,取整数位54(分),0.3558...
  • 来源及怎么计算经纬度 这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这...
  • 经纬度计算距离差

    千次阅读 2014-06-05 10:08:35
    根据两点经纬度计算距离 这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的 假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离...
  • 这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的 假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这个...北极就是北纬90度,

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 521
精华内容 208
关键字:

南极北极经纬度