http://geojsonlint.com/我收到错误消息
Polygons and MultiPolygons should follow the right-hand rule
我使用了3年之久,旧的geojson文件没有任何问题。现在geojsonlint强制执行右手规则,如何解决该问题。
http://geojsonlint.com/我收到错误消息
Polygons and MultiPolygons should follow the right-hand rule
我使用了3年之久,旧的geojson文件没有任何问题。现在geojsonlint强制执行右手规则,如何解决该问题。
Answers:
从2016年8月开始,GeoJSON现在是正式的IETF规范。与旧的2008年非正式规范相比有些变化。因此,要对2016年规范有效,您的多边形必须为右手缠绕。
参见https://tools.ietf.org/html/rfc7946#section-3.1.6
使用务必表示对规范的绝对要求。但是,随后关于不拒绝其他绕组的语言是很奇怪的,并且有一些争论可以接受-也许解析器应该接受并纠正其他绕组。我认为,导致geojsonlint(来自geojsonhint)使用该词的原因应该是,而不是必须在他们的反馈消息中使用。
因此,我同意geojsonlint.com的位置,因为它们位于页面顶部,即指向2016年规范的链接。根据2016年规范,您的多边形不好。但是,按照2008年的非正式规范,它们还是不错的。因此,如果您不希望更改多边形的缠绕,则需要确定使用的所有短绒毛或解析器都符合旧的2008年规范,并且不要一天之内突然迁移到新的正式规范。
或者,也许您应该考虑更改多边形绕组,因为这样做可以使您既符合规范,又可以在2008规范逐渐消失时更好地定位于未来。
请注意,对我而言,2016年规范的最大变化是对坐标系统的支持完全下降。我将所有GeoJSON放在NAD83中,然后必须悄悄删除,因为现在所有GeoJSON都是WGS84。对我来说,幸运的是,我来自Oracle Spatial,我所有的多边形都已经绕好了。
我的旧geojson与Google地图,传单,openlayer,mapbox,bing地图等一起使用。但是geojsonlint.com验证失败。
我必须使用另一个网站进行验证:http : //geojson.io
https://mapster.me/right-hand-rule-geojson-fixer/此页面具有客户端javascript功能,可解决右手规则问题。
使用可以很容易地在Python中修复此问题geojson-rewind
。
from geojson_rewind import rewind
rewoundGeoJSON = rewind(geoJSONString)