Hi Janvier, maybee you need to use it within a startRender and stopRender section:
renderContext = QgsRenderContext() renderContext.setExtent(layer.extent()) renderer = layer.renderer().clone() renderer.startRender(renderContext, layer.fields()) features = layer.getFeatures(fids) for i, featurein enumerate(features): symbol = renderer.symbolForFeature(feature, renderContext) # ... renderer.stopRender(renderContext) Greetings, Benjamin Am 04/03/2021 um 11:46 schrieb Janvier Thomas:
Hi, I got an issue with SIP python bindings…I’m looking to loop over QgsVectorLayer features to convert geometries to mesh primitives (cells) …I had a first problem with the non-const (unexpected crash about SIP methods)|for part in feature.geometry().parts():| that I solved using the const one |for p in f.geometry().constParts():| ||But now I’m facing a similar crash when trying to identify the symbol/category/legendKey of each feature (the aim is to add the legendKey as a cell attribute to link color/LUT between the mesh and vectorlayer)I do it this way: layer.renderer().symbolForFeature(feature, context) But ends up with a : Crash ID: cb1c4f2b11cbd392a38c522a5ed1e194e060e4a0 Stack Trace QgsExpression::evaluate : QgsCategorizedSymbolRenderer::valueForFeature : QgsCategorizedSymbolRenderer::originalSymbolForFeature : PyInit__core : PyMethodDef_RawFastCallKeywords : PyMethodDef_RawFastCallKeywords : PyEval_EvalFrameDefault : PyEval_EvalCodeWithName : I opened an Issue here (not sure this is relevant):Unexpected crash using: QgsFeatureRenderer.symbolForFeature() · Issue #68 · qgis/pyqgis (github.com) <https://github.com/qgis/pyqgis/issues/68>Thanks a lot _______________________________________________ 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
-- Benjamin Jakimow, Doctoral Researcher Earth Observation Lab | Geography Department | Humboldt-Universität zu Berlin e-mail: benjamin.jaki...@geo.hu-berlin.de 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
smime.p7s
Description: S/MIME Cryptographic Signature
_______________________________________________ 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