Ich versuche, einige Skripte von ArcPy auf QGIS (1.8 oder 2.0) neu zu programmieren, und es gibt einige einfache Funktionen, die ich wiederholen möchte, aber leider fehlt in bestimmten Bereichen die Dokumentation in QGIS.
Die drei wichtigsten für mich sind nämlich:
Feld hinzufügen - Feld hinzufügen
arcpy.AddField_management(Feature, "ID", "SHORT")
Feldverwaltung berechnen - Aktualisieren Sie dieses Feld
arcpy.CalculateField_management(Feature,"ID","!FID!")
Zeilen aktualisieren / löschen - Zeilen basierend auf der Bedingung aktualisieren / löschen (ohne das Shapefile zu kopieren)
keep = ["Bob","Janet","John","Mike"]
Counter = 0
rows = arcpy.UpdateCursor(Feature)
for row in rows:
if row.Name in keep:
row.ID = Counter
rows.updateRow(row)
else:
rows.deleteRow(row)
Counter += 1
Jetzt kann ich jedes Feature in QGIS mit SEXTANTE durchlaufen und seine Geometrie erhalten, die ich in ein neues Shapefile umschreiben und dadurch eine Zeile oder ein Feld aktualisieren / löschen kann. Beginnend mit etwas in der Art von ...
layer = st.getobject(Polygon)
features = st.getfeatures(layer)
for f in features:
f.geometry().asPolygon()
aber ich kann keine einfache Lösung für die oben genannten Funktionen finden?