Schreiben Sie, wie Sie den Wert in Metern erhalten, wobei das Koordinatensystem der Ebene Längen- und Breitengrad ist. Es ist ein Wert, von dem ich denke, dass er ein Referenzwert sein wird. Bitte lassen Sie mich wissen, ob es einen anderen guten Weg gibt.
QGIS 3.4.4
layer = iface.activeLayer()
crs = layer.crs()
feature = layer.selectedFeatures()[0]
geom = feature.geometry()
print(geom.length())
area = QgsDistanceArea()
area.setEllipsoid(crs.ellipsoidAcronym())
print(area.measureLength(geom))
layer = iface.activeLayer()
crs = layer.crs()
feature = layer.selectedFeatures()[0]
geom = feature.geometry()
area = QgsDistanceArea()
area.setEllipsoid(crs.ellipsoidAcronym())
area.setEllipsoidalMode(True)
print area.measureLength(geom)
QGIS Documentation: QgsDistanceArea stackexchange: QGIS Python Distance between points QgsDistanceArea.convertMeasurement not enough arguments error
Recommended Posts