【发布时间】:2018-10-22 21:15:19
【问题描述】:
我正在使用 Google 地图路线服务来请求从起点到终点的路径。这显然会返回一个 Lat/Lng 标记列表,这些标记被连接起来以绘制路径。代码如下所示:
directionsService.route(request, function(result, status) {
if (status == 'OK') {
directionsDisplay.setDirections(result);
var myRoute = result.routes[0].legs[0];
//console.log(myRoute);
for (var i = 0; i < myRoute.steps.length; i++) {
var marker = new google.maps.Marker({
position: myRoute.steps[i].start_point,
map: map
});
console.log(myRoute.steps[i].start_point.lat(),myRoute.steps[i].start_point.lng() );
attachInstructionText(marker, myRoute.steps[i].instructions);
markerArray[i] = marker;
}
}
});
我无法找出一种算法,该算法将在现有标记之间生成更多 Lat/Lng '标记'。
为了进一步形象化,这里是另一个图表。红色 X 显示调用返回的点。然后我在顶部添加了 Blue X 以显示我想要的结果。
谢谢!!!
【问题讨论】:
-
你想要多少分?你可以使用现有的点(来自折线)吗?他们之间的距离有什么限制吗?
-
如果点之间的线是直的,那么计算应该相对简单,但是如果线是弯曲的,比如你的第一张图片,那就麻烦多了。
-
@geocodezip 没有限制,只需要比已经提供的更多。更多可以表示从 1 到尽可能多的任何内容
-
@CertainPerformance 这就是我的想法。知道计算实际上会是什么样子吗?我假设类似于两个纬度/经度之间的距离
标签: javascript google-maps web navigation markers