Hi Calvin,

you might use

feature.geometry().get().z()


Am 18/01/2022 um 15:27 schrieb C Hamilton:
As I iterate through a point vector layer I get each feature. Normally I would get access to the coordinate with
    pt = feature.geometry().asPoint()
Unfortunately, this is a QgsPointXY and not a QgsPoint and I need to have access to the Z attribute. There is no function to return a QgsPoint that includes the Z and M values.

If I do feature.geometry().get() there are member functions such as addZValue(), dropZValue (), but there is no getZValue().

There is a function called vertexAt(QgsVertexId id) which returns a QgsPoint, but the documentation is very unclear on how to actually use this. What really is QgsVertexId and how should it be constructed? Alternatively there is vertices() or vertices_begin () which are iterators that potentially could be used.

This all seems awkward and not documented well. What is the best way to get a QgsPoint from a point feature which is coming from a processing script like this?

    iterator = source.getFeatures()
    for cnt, feature in enumerate(iterator):

Thanks,

Calvin

_______________________________________________
QGIS-Developer mailing list
[email protected]
List info:https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe:https://lists.osgeo.org/mailman/listinfo/qgis-developer

--
Benjamin Jakimow, Doctoral Researcher
Earth Observation Lab | Geography Department | Humboldt-Universität zu Berlin

e-mail:[email protected]

phone:  +49 (0) 30 2093 6846
mobile: +49 (0) 157 5656 8477
fax:    +49 (0) 30 2093 6848
mail:   Unter den Linden 6 | 10099 Berlin | Germany
room: 2'211
web:https://hu-berlin.de/eo-lab

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

_______________________________________________
QGIS-Developer mailing list
[email protected]
List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer

Reply via email to