我现在有一个形状文件,我想添加值以用颜色填充它

但是现在我有一个问题

http://www.qgis.org/pyqgis-cookbook/vector.html#add-features

 feat = QgsFeature()
  feat.addAttribute(0,"hello")
  feat.setGeometry(QgsGeometry.fromPoint(QgsPoint(123,456)))
  (res, outFeats) = layer.dataProvider().addFeatures( [ feat ] )

这是点的示例,现在我有多边形和折线

我想知道我是否具有多边形如何将特征添加到使用python选择的形状文件中吗?

最佳答案

一些东西。
如果要添加新层,则其调用类似于下面的层(关键字为Polygon)。

 va = QgsVectorLayer("Polygon?crs=epsg:4326", "Segment buffers", "memory")

要将几何设置为折线,代码如下所示:
line_geometry=QgsGeometry.fromPolyline(QgsPoint(x,y),QgsPoint(w,z),...,QgsPoint(t,r))

第一个点和最后一个点将是四肢,而中间的点将提供线要素的实际形状(曲率)

要将几何设置为多边形,代码如下所示:
polygon_geometry=QgsGeometry.fromPolygon( [[ QgsPoint(x,y), QgsPoint(w,z),..., QgsPoint(p,l) ] ] )

属性对所有几何类型都相同。希望能帮助到你。

有关更多引用,请查看http://docs.qgis.org/testing/en/docs/pyqgis_developer_cookbook/geometry.html

09-06 13:51