Google Maps API的 GDirections 类帮助我“显示”两个提供坐标之间的路线。
现在我需要一个 ALL 列表,列出该路线上的坐标。
有关如何获得此信息的任何提示?
修改 刚刚发现http://code.google.com/apis/maps/documentation/javascript/reference.html#DirectionsRoute
其 overview_path 属性提供路线的所有航点的列表。 DirectionsRoute 是解决此问题的合适类吗?或者我错过了一些观点?
编辑 - 2
在下面 mkram0 显示的this link的帮助下,我修改了以下代码:
显示地图。 路线IS正在显示。
我在考虑在路线的前四个坐标上放置标记。这些标记不会显示。有帮助吗?请。
directionsService.route (request,
function (result, status)
{
if (status == google.maps.DirectionsStatus.OK)
{
directionsDisplay.setDirections (result);
for (var route in result.routes)
{
for (var leg in route.legs)
{
for (var step in leg.steps)
{
for (var latlng in step.path)
{
pointsArray.push(latlng);
}
}
}
}
var point1 = new google.maps.Marker ({
position:pointsArray[0],
draggable:true,
map:map,
flat:true
});
var point2 = new google.maps.Marker ({
position:pointsArray[1],
draggable:true,
map:map,
flat:true
});
var point3 = new google.maps.Marker ({
position:pointsArray[2],
draggable:true,
map:map,
flat:true
});
var point4 = new google.maps.Marker ({
position:pointsArray[3],
draggable:true,
map:map,
flat:true
});
}
});
答案 0 :(得分:6)
自己解决了这个问题:) overview_path 是显示坐标的正确方法w.r.t: 只是为了检查这是否真的显示了什么,我在前四个坐标上显示了标记。
directionsService.route (request,
function (result, status)
{
alert(status);
if (status == google.maps.DirectionsStatus.OK)
{
directionsDisplay.setDirections (result);
var pointsArray = [];
pointsArray = result.routes[0].overview_path;
var point1 = new google.maps.Marker ({
position:pointsArray[0],
draggable:true,
map:map,
flat:true
});
var point2 = new google.maps.Marker ({
position:pointsArray[1],
draggable:true,
map:map,
flat:true
});
var point3 = new google.maps.Marker ({
position:pointsArray[2],
draggable:true,
map:map,
flat:true
});
var point4 = new google.maps.Marker ({
position:pointsArray[3],
draggable:true,
map:map,
flat:true
});
答案 1 :(得分:3)
overview_path doc说它返回
表示的LatLng数组 这条路线的整个过程。路径 为了使它成为简化 适合在小的环境中使用 需要顶点数。
我不认为这与在路线上返回所有航点的数组相同。在你的问题中,我不清楚你是想要航点还是坐标(拉长)或两者兼而有之。如果我是你,我也会考虑legs
,它会返回
每个DirectionsLegs数组 其中包含有关的信息 它组成的步骤。那里 对于每个航路点或将是一条腿 目的地指定。
在DirectionsLeg
内,我认为您还应该看看steps
和via_waypoints
。
答案 2 :(得分:0)