1
我遇到了一個問題,即我的GeoJSON按照緯度/經度順序返回座標,但OpenLayers希望它們的順序相反:經度/緯度。 而我不能讓他們從服務器的另一種方式。 是否有可能使用OL3扭轉座標,就像我找到了一些關於老OL這樣OpenLayers 3定義軸順序
formatOptions: { xy: false }
請問像這樣提供OL3?
我遇到了一個問題,即我的GeoJSON按照緯度/經度順序返回座標,但OpenLayers希望它們的順序相反:經度/緯度。 而我不能讓他們從服務器的另一種方式。 是否有可能使用OL3扭轉座標,就像我找到了一些關於老OL這樣OpenLayers 3定義軸順序
formatOptions: { xy: false }
請問像這樣提供OL3?
簡短的回答是否定的。 OL3只接受XY。如果您有可能在GeoJSON源中將其撤消,請執行此操作。
在ol3文檔中,您應該有可能通過在您的幾何圖形中的每個幾何圖形上使用「applyTransform」方法進行自定義轉換,但是這種方法顯然已被刪除。
下面是如何反轉座標的建議。
$.ajax({
url: "http://www.myjsonsource.com",
timeout: 1000,
success: function(response) {
var layerJSONString = $.parseJSON(response);
var size=layerJSONString.features.length;
for (i = 0; i < size; i++){
layerJSONString.features[i].geometry.coordinates.reverse();
};
vectorSource.addFeatures(vectorSource.readFeatures(response));
},
error: loadError
});
對我來說並沒有換座標vectorSource,所以我扭轉他們的反應和只添加功能到vectorSource – Anuket 2014-11-25 15:26:19
@Anuket後,如果您有編輯權限,你可以改變上面的代碼的代碼這對你有用並接受答案。對於那些會遇到同樣情況的人來說,這樣做會更有用。 – 2014-11-26 08:47:54