使用API​​突出显示Google地图中的整条街道

时间:2011-10-22 19:11:36

标签: google-maps

我有一个问题,想知道如何使用API​​在Google地图上突出显示整条街道。就像我说想在我网站上嵌入的地图上显示一些特定道路的数据一样,我怎么能这样做才能让这条道路变成特定的颜色,反映数据?

1 个答案:

答案 0 :(得分:0)

这基本上是通过使用Google地图的方向对象来绘制地图中两个任意街道点之间的路线来完成的。必须使用LatLng坐标对点进行编码。这是一个代码示例(如上所述,这是API V2):

function initMap() {  // called by page onload event
  if (GBrowserIsCompatible()) {
    // set the initial location 
    gMap = new GMap2(document.getElementById("map_canvas"));
    gMap.addControl(new GLargeMapControl());
    gMap.setCenter(GLatLng(49.238326, 6.977761), 15);
// init directions object and attach listener to handle route loads from function     highliteRoute()
    gDir = new GDirections();
    gPoly = null;
    GEvent.addListener(gDir, 'load', function(){
      gPoly = gDir.getPolyline();
      gMap.addOverlay(gPoly);

      // zoom & pan to poly        
      var polyBds  = gPoly.getBounds();
      var polyZoom = gMap.getBoundsZoomLevel(polyBds);
      gMap.setZoom(polyZoom);
      gMap.panTo(polyBds.getCenter());
    });
  }
}

function highliteRoute(){
  if(gPoly!=null)  gPoly.hide();
  gDir.load('from: 49.313530,6.969109 to: 49.238326,6.977761', {getPolyline:true});
}