Yes, that works. Thank you!
2018-01-27 0:43 GMT+01:00 Nyall Dawson <nyall.daw...@gmail.com>: > On 25 January 2018 at 17:30, Daan Goedkoop <dgoedk...@gmx.net> wrote: >> Thank you for the answers! >> >> Ok, so I don't need to manipulate the QgsMultiLineString directly. Yet >> I cannot help to wonder a little bit about this (using a .shp file): >> >>>>> qgis.utils.iface.activeLayer().selectedFeatures()[0].geometry().asGeometryCollection()[0].asWkt() >> 'LineString (4.83090675976269512 52.44278398333691626, >> 4.89922802216601205 52.37283112413303598)' >>>>> qgis.utils.iface.activeLayer().selectedFeatures()[0].geometry().asWkt() >> 'MultiLineString ((4.83090675976269512 52.44278398333691626, >> 4.89922802216601205 52.37283112413303598))' >>>>> qgis.utils.iface.activeLayer().selectedFeatures()[0].geometry().asGeometryCollection()[0].asWkt() >> 'LineString (4.83090675976269512 52.44278398333691626, >> 4.89922802216601205 52.37283112413303598)' >>>>> type(qgis.utils.iface.activeLayer().selectedFeatures()[0].geometry().constGet()) >> <class 'qgis._core.QgsMultiLineString'> >>>>> qgis.utils.iface.activeLayer().selectedFeatures()[0].geometry().constGet().wkbType() >> 5 >>>>> qgis.utils.iface.activeLayer().selectedFeatures()[0].geometry().constGet().numGeometries() >> 0 >>>>> qgis.utils.iface.activeLayer().selectedFeatures()[0].geometry().constGet().asWkt() >> <crash> >> >> Is this expected behaviour? > > I suspect what's happening here is that the feature is being garbage > collected early, deleting the geometry and causing the unpredictable > behavior - try this: > > f = qgis.utils.iface.activeLayer().selectedFeatures()[0] > f.geometry().constGet()...... etc > > > > Nyall _______________________________________________ QGIS-Developer mailing list QGIS-Developer@lists.osgeo.org List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer