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