谷歌地图的DirectionsRenderer与OpenLayers

时间:2011-02-03 11:23:59

标签: google-maps google-maps-api-3 openlayers map-directions

我们的应用使用OpenLayers和Google Map图层。我想知道是否可以在此OpenLayers地图上使用Google地图的DirectionsRenderer api渲染路线?

此处的示例 - http://code.google.com/apis/maps/documentation/javascript/services.html#Directions - 在独立环境中正常工作。如果我们尝试将其与OpenLayers集成,则无法呈现方向。

任何帮助?

谢谢, 斯里达尔

1 个答案:

答案 0 :(得分:1)

OpenLayers不会包含Google地图的路线功能。但是,您仍然可以在OpenLayers中使用Google地图图层,并使用Google的API向Directions Services发出请求。

如果您在其文档页面上提供了示例中的请求:

directionsService.route(request, function(result, status) {
if (status == google.maps.DirectionsStatus.OK) {
  directionsDisplay.setDirections(result);
}

});

您会注意到result.routes.overview_path包含路线的所有点。然后,您可以使用OpenLayers.Layers.Vector在Google Maps图层上方的单独图层中呈现此路线。