我现在有一个形状文件,我想添加值以用颜色填充
但现在我遇到了问题
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选择的形状文件?
答案 0 :(得分:6)
一些事情。 如果要添加新图层,则对其进行调用,如下所示(关键字为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