如何在Python中从2个GPS坐标计算速度、距离和方向(度)?每个点都有纬度、经度、时间。
我在这篇文章中找到了半正矢距离计算:
它还有一个用于速度和方向的 Java 版本,但它们是公制的,我需要 MPH,还有 Python 版本。
我有3个地理位置
(开始位置)11.986242477259117,79.84657287597656`
(中间位置)11.984521304799278,79.84583258628845
(结束位置)11.985014568760436,79.844491481781
我从如何使用kml文件在地图上绘制路径获得了解?
我已经在地理点之间绘制了这条线.

我使用如何使用经度和纬度值计算两个位置之间的距离来计算距离
我的问题是,当用户站在"A"(开始位置)附近时,我想告诉方向,你要移动到"北方","东方","西方","南方"这样,.
如果用户错误地移动其他方向,需要说出"你有错误的方向"并说出正确的方向.
如何获得两个地理点之间的方向.
我从两个经度/纬度点获得方向(指南针)得到了这个值
它返回一定程度,但我告诉正确的方向我是没有意义的.
如何获得两个地理点之间的方向.
经过广泛的研究和有趣的了解Google的映射api,我正在构建一个数字天线地图应用程序.此时,项目计划的下一步是构建谷歌地图的内存映射复制,该地图根据用户地址的输入定位数字电视台.所以,我使用这个数学代码来表示谷歌地图中心的方位和数据库结果集中的纬度/经度点.
我的问题是:我如何完成数学计算以度数表示轴承?
此代码是返回以下数组结果集的数学:
1.21
1.10
1.10
1.10
1.10
2.62
-0.29
-1.17
0.12
3.04
var y = Math.sin(longitude-center.lng()) * Math.cos(latitude);
var x = Math.cos(center.lat())*Math.sin(latitude) - Math.sin(center.lat())*Math.cos(latitude)*Math.cos(longitude-center.lng());
var bearing = (Math.atan2(y, x)).toFixed(2);
Run Code Online (Sandbox Code Playgroud)
在我的计算中似乎缺少一些东西.db表将经度值保持为负数,以表示地球的西上象限.
任何完成我数学的建议都会节省一百万个nuerons,我已经烧掉了一万亿.
考虑到弧度建议,我修改了javascript代码:
var radLat1 = center.lat() * Math.PI / 180;
var radLat2 = latitude * Math.PI / 180;
var radLng1 = center.lng() * Math.PI / 180;
var radLng2 = longitude * Math.PI / 180;
var y = Math.sin(radLng2- radLng1) * Math.cos(radLng2);
var x = Math.cos(radLat1)*Math.sin(radLat2) - Math.sin(radLat1)*Math.cos(radLat2)*Math.cos(radLng2-radLng1);
var bearing …Run Code Online (Sandbox Code Playgroud) android ×1
api ×1
coordinates ×1
direction ×1
geopoints ×1
google-maps ×1
gps ×1
javascript ×1
math ×1
point ×1
python ×1