gpt4 book ai didi

javascript - 谷歌地图 API v.3 在折线上找到点到点的最近点

转载 作者:行者123 更新时间:2023-11-29 21:32:43 24 4
gpt4 key购买 nike

我有一张带有折线的 map 。服务器将用 map 上的 LatLng 点响应我。我需要检查来自服务器的点是否位于折线边缘。如果没有,我需要找到折线上最近的点并在折线上最近的点上放置一个标记。例如,如果服务器用 A 点响应我,我需要将标记放置到 B 点。

enter image description here

我找到了一个很好的图书馆http://wtp2.appspot.com/cSnapToRouteDemo.html , 但这个库是为谷歌 API 版本。 2,我正在使用 Google API 版本。 3. Google API 版本是否有替代方案? 3?谢谢。

最佳答案

找到了一个更简单的解决方案。使用 turf.js。只需使用折线坐标来创建草坪线和用于创建草坪点的标记位置。

然后;

var line = turf.lineString(Your polyline coordinates in GeoJson array);
var pt = turf.point([Marker_Lon, Marker_Lat]);
var snapped = turf.pointOnLine(line, pt);
var pstnOnLine = { lat: snapped.geometry.coordinates[1], lng: snapped.geometry.coordinates[0] };
var distToLine = snapped.properties.dist

这样您就可以轻松计算多段线上的距离和坐标。

您可以从 Turf website 中了解更多信息.

关于javascript - 谷歌地图 API v.3 在折线上找到点到点的最近点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35746224/

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