Google maps api 3 沿路线添加标记

Google maps api 3 沿路线添加标记,google-maps-api-3,routes,google-maps-markers,directions,Google Maps Api 3,Routes,Google Maps Markers,Directions,我正试图从谷歌地图方向沿路线创建几个标记。我已经将航路点作为一个选项进行了研究,但根据我对其文档的理解,它创建了从A点到B点的路线,并通过您设置的航路点,以便从A点到B点。我不希望根据预定的航路点计算我的路线。我想要一个预定的起点和终点,根据地图上的距离计算我的航路点。例如,沿途每隔这么多英里就会创建一个标记。航路点会这样做吗?如果有的话,有没有这样做的例子 有什么建议吗?没有。正如您所发现的,航路点决定路线的路径。您希望沿路线放置“航路点”,无论确定哪条路径 这是可能的,Larry在号上有一个

我正试图从谷歌地图方向沿路线创建几个标记。我已经将航路点作为一个选项进行了研究,但根据我对其文档的理解,它创建了从A点到B点的路线,并通过您设置的航路点,以便从A点到B点。我不希望根据预定的航路点计算我的路线。我想要一个预定的起点和终点,根据地图上的距离计算我的航路点。例如,沿途每隔这么多英里就会创建一个标记。航路点会这样做吗?如果有的话,有没有这样做的例子


有什么建议吗?

没有。正如您所发现的,航路点决定路线的路径。您希望沿路线放置“航路点”,无论确定哪条路径


这是可能的,Larry在

号上有一个例子。正如您所发现的,航路点决定了路线的路径。您希望沿路线放置“航路点”,无论确定哪条路径


这是可能的,拉里在

有一个例子,安德鲁告诉waypoints不会这么做

您没有管线的预定义点(如示例),因此可以执行以下操作:

方向由定义管线多段线的“管线->概述\路径”定义的点组成

因此,您可以沿着此路径行走,使用计算两个路径点之间的距离,并在达到所需距离时创建标记

以下是该建议的实施情况:



请注意:此答案已过时。你最好改用内置的。

正如安德鲁告诉waypoints的那样

您没有管线的预定义点(如示例),因此可以执行以下操作:

方向由定义管线多段线的“管线->概述\路径”定义的点组成

因此,您可以沿着此路径行走,使用计算两个路径点之间的距离,并在达到所需距离时创建标记

以下是该建议的实施情况:



请注意:此答案已过时。您最好改用内置的。

沿方向服务返回的路线每1英里放置一个标记的示例:

代码片段:

var方向显示;
var directionsService=new google.maps.directionsService();
var映射;
var polyline=null;
var gmarkers=[];
var infowindow=new google.maps.infowindow();
函数initMap(){
var directionsService=新的google.maps.directionsService;
var directionsDisplay=新建google.maps.DirectionsRenderer;
map=new google.maps.map(document.getElementById('map'){
缩放:7,
中心:{
拉脱维亚:41.85,
液化天然气:-87.65
}
});
polyline=新的google.maps.polyline({
路径:[],
strokeColor:“#FF0000”,
冲程重量:3
});
方向显示.setMap(地图);
计算显示路线(方向服务、方向显示);
var onChangeHandler=函数(){
计算显示路线(方向服务、方向显示);
};
document.getElementById('btn')。addEventListener('click',onChangeHandler);
}
函数calculateAndDisplayRoute(方向服务、方向显示){
方向服务.路线({
来源:document.getElementById('start')。值,
目标:document.getElementById('end')。值,
travelMode:“驾驶”
},功能(响应、状态){
if(status==google.maps.directionstatus.OK){
polyline.setPath([]);
var bounds=new google.maps.LatLngBounds();
startLocation=新对象();
endLocation=新对象();
方向显示。设置方向(响应);
var route=response.routes[0];
//对于每个管线,显示摘要信息。
var path=response.routes[0]。概述\u路径;
var legs=response.routes[0]。legs;
对于(i=0;i'+html;
var marker=new google.maps.marker({
位置:latlng,
//真的,
地图:地图,
图标:getMarkerImage(彩色),
标题:标签,

zIndex:Math.round(latlng.lat()*-100000)示例,沿从