当使用ol.format.WFS
(GML2和GML3)读取特征时,如果投影是EPSG:4326,则始终假定它们在YX中。因此OL翻转它们。我在Geoserver 2.11中使用它,并且在此版本中,服务器可以将坐标发送为XY,具体取决于您如何通过投影。你可以阅读它here。
通过OL代码,我可以看到它从xml读取投影,它决定根据轴方向翻转它,对于4326是neu,导致翻转。
问题是我的配置取决于客户端,服务器可能已经发送了XY。我想知道这是OpenLayers的错误还是决定。
有没有办法阻止它这样做?
答案 0 :(得分:2)
您可以使用自定义投影对象覆盖它
/ override the axis orientation for WMS GetFeatureInfo
var proj = new ol.proj.Projection({
code: 'http://www.opengis.net/gml/srs/epsg.xml#4326',
axis: 'enu'
});
ol.proj.addEquivalentProjections([ol.proj.get('EPSG:4326'), proj]);
确保代码字符串与WFS / GML文档中的字符串匹配。