gpt4 book ai didi

javascript - 如何从一组在 google map api 中映射的地理位置点获取行进距离?

转载 作者:行者123 更新时间:2023-11-30 17:54:25 25 4
gpt4 key购买 nike

我正在根据他们的纬度和经度跟踪用户移动。所以在过去的 1 小时里,我得到了 20 多个坐标。使用这些坐标,我正在使用 google map api 绘制 map 。我得到了一条曲线(用户的移动图) 并且我想要获取从起点到终点的距离。

这些是我的坐标:-

[[12.938419, 77.62224],
[12.938494, 77.622377],
[12.938369, 77.622449],
[12.938345, 77.622521],
[12.938322, 77.622575],
[12.938346, 77.622631],
[12.938306, 77.622648],
[12.938299, 77.622695],
[12.938254, 77.622715],
[12.938242, 77.622761],
[12.938227, 77.622805],
[12.93819, 77.622792],
[12.938138, 77.622837],
[12.938129, 77.622887],
[12.938103, 77.622949],
[12.938066, 77.622989],
[12.938006, 77.622966],
[12.937933, 77.623001],
[12.937976, 77.623073],
[12.937954, 77.623128],
[12.937912, 77.623111],
[12.937882, 77.623034],
[12.937933, 77.623001],
[12.938006, 77.622966],
[12.937921, 77.62293]]

最佳答案

使用 google.maps.geometry.spherical.computeDistanceBetween 获取每组点之间的距离(首先将每个点转换为 google.maps.LatLng)。将这些距离相加得出总和。

或者使用 google.maps.geometry.spherical.computeLength根据您的坐标创建的 google.maps.LatLng 对象数组的方法。

fiddle

for (var i=0; i < coordinates.length; i++) {
path.push(new google.maps.LatLng(coordinates[i][0],
coordinates[i][1]));
}
var polyline = new google.maps.Polyline({
path: path,
map: map,
strokeWeight: 2,
strokeColor: "blue"
});
var length = google.maps.geometry.spherical.computeLength(polyline.getPath());
document.getElementById('length').innerHTML = "length="+(length/1000).toFixed(2)+ " km";

关于javascript - 如何从一组在 google map api 中映射的地理位置点获取行进距离?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18359633/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com