问题描述
|
Google maps API的GDirections类帮助我“显示”两个提供的坐标之间的路线。
现在,我需要该路线上所有坐标的列表。
关于如何获得此的任何提示?
编辑
刚刚发现的http://code.google.com/apis/maps/documentation/javascript/reference.html#DirectionsRoute
它的overview_path属性提供了该路线的所有航点的列表。
DirectionsRoute是解决此问题的正确课程吗?还是我错过了几点?
编辑-2
通过下面的mkram0所示的链接,我对代码进行了如下修改:
地图正在显示。
正在显示路线。
我当时正在考虑在路线的前四个坐标上放置标记。这些标记不会显示。有帮助吗?请。
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],flat:true
});
var point3 = new google.maps.Marker ({
position:pointsArray[2],flat:true
});
var point4 = new google.maps.Marker ({
position:pointsArray[3],flat:true
});
}
});
解决方法
我自己解决了这个问题:)
总览路径是显示坐标的正确方法:
只是为了检查它是否确实显示了某些东西,我在结果的前四个坐标上显示了标记。
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],flat:true
});
var point3 = new google.maps.Marker ({
position:pointsArray[2],flat:true
});
var point4 = new google.maps.Marker ({
position:pointsArray[3],flat:true
});
, overview_path文档说它返回
LatLngs数组,代表
这条路线的整个过程。路径
为了使它简化
适用于小范围的环境
顶点数是必需的。
我不会将其解释为与返回路线上所有航路点的数组相同。在您的问题中,我不清楚您要的是航路点还是坐标(纬度较长),还是两者都需要。如果我是你,我还会考虑legs
,它会返回
一组DirectionsLeg,每个
其中包含有关
它的组成步骤。那里
每个航路点将是一条腿,或者
指定的目的地。
在DirectionsLeg
之内,我认为您也应该看看at4ѭ和via_waypoints
。
, 尝试http://vikku.info/programming/google-maps-v3/draggable-directions/saving-draggable-directions-saving-waypoints-google-directions-google-maps-v3.htm
或Google Maps JavaScript API v3方向功能