2016-07-04 34 views
1

我在我的地圖上使用google maps api v3繪製GeoJSON。隨着層的點它正常運作。但是我有一個MultiLineString Camda,並且幾何圖形的中心給出了一個錯誤。這同樣發生在一個多邊形上,但是這些點很好地工作。有沒有其他方法可以集中到MultiLineString和Polygons?我無法在MultiLineString中使用feature.get Geometry()

google.maps.event.addListener(cicloviasLayer, 'addfeature', function (e) { 
    console.log(e.feature.getGeometry().getType()); // MultiLineString Ok! 
    map.setCenter(e.feature.getGeometry().get()); 

    }); 

埃羅:

e.feature.getGeometry(...).get is not a function 
+0

我仍然有問題,理解問題 - 嗯,對不起。該錯誤告訴我,該事件可能會從event.feature.getGeometry()返回成員,但這不是一個函數。它應該是?或者我們需要查看API來找到一個?你能否在這裏添加一些細節?謝謝。 – Dilettant

+0

@geocodezip去了第二條路線:-) +1從我... – Dilettant

回答

3

Data.MultiLineString類沒有一個get方法,它有一個getAtgetArray方法。

getAt(N:數字)

返回值:Data.LineString

返回第n包含Data.LineString。

返回線段形式具有getAt方法,它返回一個google.maps.LatLng對象

getAt(N:數字)

返回值:經緯度

返回第n包含經緯度。

google.maps.event.addListener(cicloviasLayer, 'addfeature', function (e) { 
    console.log(e.feature.getGeometry().getType()); // MultiLineString Ok! 
    // will center the map on the first vertex of the first LineString 
    map.setCenter(e.feature.getGeometry().getAt(0).getAt(0)); 
});