9

It seems there is no geoalgorithm to drop z values in the QGIS processing toolbox. Can this be done programmatically using the Python console? At the moment I have to save the layer with unchecked 'Include z-dimension' checkbox (non automatic geometry type):

enter image description here

1
  • You could use the QgsVectorFileWriter.writeAsVectorFormat method (see for instance gis.stackexchange.com/questions/153309/… ). There is a includeZ parameter, but you won't need to pass it to the function because it's False by default. Commented Mar 14, 2017 at 12:35

3 Answers 3

12

For future reference - QGIS 3 includes a drop z value processing algorithm

0
5

Specifically, the QGIS 3 tool is called Drop m/z values. It's in the Processing Toolbox, under Vector Geometry. The documentation is here:

https://docs.qgis.org/testing/en/docs/user_manual/processing_algs/qgis/vectorgeometry.html#qgisdropmzvalues

2

Here is how i convert a QgsGeometry (geom) of type PolygonZ to a Polygon in the console:

new_geom = QgsGeometry().fromPolygonXY(geom.asPolygon())

It is some kind of workaround since there is no dedicated method for that. So i dont know if there are better ways to do it. Using the processing tool as recommended in the other answers would be the correct way if you want to convert a whole layer i guess.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.