这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的

假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这个圆圈

就叫作“赤道”。在赤道的南北两边,画出许多和赤道平行的圆圈,就是“纬圈”;构成这些圆圈的线段,

叫做纬线。我们把赤道定为纬度零度,向南向北各为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;

}

已知两点坐标求水平距离_根据两点经纬度计算距离相关推荐

  1. 高斯投影坐标计算例题_测量学高斯投影已知横坐标如何求在第几度带投影计算而得的?例如:...-y坐标的自然值怎么算-数学-莫囤料同学...

    概述:本道作业题是莫囤料同学的课后练习,分享的知识点是y坐标的自然值怎么算,指导老师为甘老师,涉及到的知识点涵盖:测量学高斯投影已知横坐标如何求在第几度带投影计算而得的?例如:...-y坐标的自然值怎 ...

  2. php根据经纬度计算距离大小,PHP 根据经纬度计算距离的简单示例

    这篇文章主要为大家详细介绍了PHP 根据经纬度计算距离的简单示例,具有一定的参考价值,可以用来参考一下. 这是一个非常有用的距离计算函数,利用纬度和经度计算从 A 地点到 B 地点的距离.该函数可以返 ...

  3. mysql 经纬度距离 自定义函数_mysql 经纬度计算距离 自定义函数

    这些经纬线是怎样定出来的呢? 地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这个圆圈就叫作&quo ...

  4. 已知向量坐标求三角形面积

    引出一个问题 如何判断一个点是否在三角形中?

  5. 【Matlab】已知邻接矩阵怎么求每个节点的度脑网络计算

    邻接矩阵应该是主对角线元素为0的对称矩阵, 如果是无权重的邻接矩阵,矩阵中不为零的元素都是1 它的每一行或者每一列的元素的和就是对应行或列的节点的度 脑网络中,可用Matlab-brain conne ...

  6. php 经纬度 距离排序,php mysql 根据经纬度计算距离和排序

    #1.两点距离(1.4142135623730951) select st_distance(point(0,0),point(1,1)); select st_distance(point (120 ...

  7. matlab已知三点求夹角,已知3点如何求其中两点对第3点的夹角

    公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解. 话题:已知3点如何求其中两点对第3点的夹角? 问题详情:有3个问题:1)已知3点如何求其中两点对第3点的夹角?2)如何回答:1)已知3点求 ...

  8. c++已知2点求中垂线_呆哥数学函数合集——函数的概念【2】

    高中数学函数基本概念,学好函数还是要先懂概念再做题. 下面是呆哥给你们整理好的基本知识要点. 不懂的可以找我私聊,在线帮你解答. 多看我专栏发的每日一题和解析,会对你们有用的 . 加油哈!离高考还有一 ...

  9. 已知网络号求子网掩码c语言,已知ip地址求子网掩码 - 已知ip地址求子网掩码_已知ip地址和子网掩码求网络号、子网号和主机号...

    已知ip地址求子网掩码的方法: 方法一:利用子网数来计算: 1.首先,将子网数目从十进制数转化为二进制数: 2.接着,统计得到的二进制数的位数,设为N: 3.最后,先求出此IP地址对应的地址类别的子网 ...

  10. C#已知三点求圆方程算法

    如果不赶时间可以自己推算出算式或者直接参考另一个博主的文章: 三点确定一个圆的计算方法_Ivan 的专栏-CSDN博客_三点确定一个圆 程序完整部分<C#已知三点求圆方程算法.rar>已经 ...

最新文章

  1. Redis初学:1(NoSQL的简介和Redis的安装)
  2. 如何挖掘系统的业务价值
  3. hdu3018 一笔画问题
  4. asp手机拍照显示_会员动态飞凯材料120吨TFTLCD混合液晶显示项目,建后五年达产...
  5. 基于Alluxio系统的Spark DataFrame高效存储管理技术
  6. 用SVD和字典学习方法重建图像(cifar-10图片集)
  7. 6折入股蚂蚁金服?巨人网络如此回应
  8. java获取页面点击次数_在Java中怎样得出一个按钮点击的次数
  9. jQuery 学习-样式篇(九):jQuery 存储和删除元素私有数据的方法
  10. python3小游戏源代码_Python入门塔防小游戏,开发步骤和源码,带你轻松学python...
  11. (转)ARM Linux启动过程分析
  12. 数据结构之顺序表(C语言版)
  13. 7.Windows口令扫描及3389口令暴力破解
  14. Java中常见的服务器
  15. PS 2020版本放大工具无法鼠标左右拖动精细放大的解决方案
  16. javascript与css压缩工具
  17. 手机抓取蓝牙日志btsnoop的方法汇总(Android一直补充中)
  18. 国赛高教杯使用python/matlab必会基础数学建模-数据处理模块(课程4)
  19. Spring全家桶(四)Bean的生命周期
  20. iOS tableView 右侧索引视图状态获取

热门文章

  1. 众多时间时钟Flash动画素材一键即可获取
  2. SOTA级发丝抠图模型PP-Matting重磅开源,支持多场景精细化分割!
  3. 自定义网站地址栏图标
  4. Java编程之从零开始学Java——初始java
  5. Multisim入门
  6. 基于JAVA《Python程序设计》教辅系统计算机毕业设计源码+系统+lw文档+部署
  7. Windows Tomcat 内存溢出解决方法
  8. MTK平台手机刷机工具分享
  9. android studio调整字体大小,如何在Android Studio中增加字体大小?
  10. 计算机二级考试数据结构题库,计算机二级考试选择题库1.数据结构与算法