如何计算经纬度的差?
创作时间:
作者:
@小白创作中心
如何计算经纬度的差?
引用
1
来源
1.
https://acomma.github.io/2024/09/01/how-to-calculate-the-difference-in-latitude-and-longitude/
为了方便定位地球上的点,人为定义了经线和纬线,它们组成了一个经纬网。经度的范围为 [-180°, +180°],本初子午线的位置为 0°,向东走为东经,经度范围为 [0°, +180°],向西走为西经,经度范围为 [-180°, 0°],-180° 和 180° 对应同一根经线,也叫国际日期变更线。纬度的范围为 [-90°, +90°],赤道的位置为 0°,向北走为北纬,纬度范围为 [0°, +90°],向南走为南纬,纬度范围为 [-90°, 0°],-90° 和 90° 的位置对应南极点和北极点。
我们的问题是对于给定两个经度或纬度,如何计算它们之间的差值?
我们来复习一下如何计算数轴上两个点的距离
由于纬度和数轴类似,因此两个纬度之间的差可以类比数轴上两个点的距离进行计算
public static double calculateLatitudeDifference(double lat1, double lat2) {
return Math.abs(lat1 - lat2);
}
对于经度我们可以进行类似的计算
public static double calculateLongitudeDifference(double lon1, double lon2) {
return Math.abs(lon1 - lon2);
}
在上面的计算方式下 +170° 和 -170° 之间差为 340°,我们把世界地图打开,+170° 和 -170° 之间是很近的,它们是国际日期变更线两侧 10° 的经线,它们之间的差为 20° 看起来才合理。
其实上面的计算方式不能算是错误的,对于纬线来说它们只有在赤道的 0° 纬线是重叠的,但是对于经线来说它在本初子午线的 0° 经线和国际日期变更线的 +180°(-180°)两个位置重叠了。按照上面的计算方式计算的是两个经度最远的距离,对于经度来说我们期望计算它们最近的距离
public static double calculateLongitudeDifference(double lon1, double lon2) {
double difference = Math.abs(lon1 - lon2);
if (difference > 180) {
difference = 360 - difference;
}
return difference;
}
完~
热门推荐
电动平板车安全规范:从行业标准到企业管理
双十一物流神器:平板电动搬运车高效装货技巧
驾驶式平板车安全使用指南:规范操作,远离违规
重庆必打卡!十八梯眼镜面、好又来酸辣粉、老麻抄手
SpaceX星舰推进系统揭秘:280吨推力的猛禽发动机如何改变太空旅行?
重庆探秘:钓鱼城与湖广会馆
健康科普 | 老年人的健康呼吸指南:避开吸入性肺炎的“雷区”
肺炎患者饮食调理指南:这些食物有助于病情好转
冬日游绍兴:不可错过的四大名胜
绍兴网红打卡地摄影攻略:4个必拍景点及拍摄技巧详解
美国批准后,韩国航空业整合潮开启
危机公关成功案例分析:某公司如何应对产品质量危机
日本飞机相撞致5死!调查结果公布
泥盆纪的"四不像"——鱼石螈进化史
国家食品安全风险评估中心发布超市购物防风险指南
膝超伸的原因及康复训练思路
站桩的最佳时间是什么时候?
麦芽糖的做法,麦芽糖怎么做好吃又营养
麦芽糖的制作过程
SpaceX星舰揭秘:30X合金如何改变航天未来?
SpaceX超重-星舰第六次试飞成功!
年糕的制作方法
杭州余杭:以良渚古城遗址为载体画好民族团结进步“同心圆”
揭秘银行扫码支付背后的黑科技
沈腾马丽再登春晚:从"钉子户"消失到实力派崛起
户外天幕帐篷选购攻略:从尺寸到使用场景的全方位指南
冬日泰山:雪后的绝美仙境
五一登泰山,红门游览路必打卡!
泰山登山比赛:一次挑战自我、征服巅峰的运动之旅
高考招生提档线揭秘:你真的懂吗?