如何反转多边形中的顶点顺序?


9

我正在使用QGIS中的Oracle空间连接来访问和编辑矢量层。我发现编辑几何图形时,顶点顺序相反(外圈中为顺时针方向),然后在oracle中将其标记为错误。

我在自己的编辑工具中使用了合并功能(http://www.qgis.org/api/classQgsGeometry.html),但我注意到这种情况也发生在本机合并多边形工具中。

我觉得这REO排序顺时针是基于此链接在QGIS默认:https://hub.qgis.org/issues/6283,想知道是否有一种方法把它扭转逆时针?(最好是python)


我不知道如何使用python进行此操作,但是Oracle Spatial具有SDO_UTIL.RECTIFY_GEOMETRY函数,该函数将纠正多边形环的方向。docs.oracle.com/cd/B28359_01/appdev.111/b28400/...
特拉维斯

Answers:


1

也许有些过头了,但是这些帖子可能包含一些有用的提示:

如何在QGIS中切换线的方向?

在QGIS或Pgadmin中切换PostGIS线的线方向

我认为在PyQGIS中提到的代码仍然有效:

geom = feature.geometry()
nodes = geom.asPolyline()
nodes.reverse() 
newgeom = QgsGeometry.fromPolyline(nodes)
layer.changeGeometry(feature.id(),newgeom)

由于QGIS带有GRASS支持,因此请访问v.edit tools=flip https://grass.osgeo.org/grass64/manuals/v.edit.html。

[当前的QGIS版本2.14.5.LTR]

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.