<div dir="ltr"><div>Hi Abdelghani,</div><div><br></div><div>You need to create a symbol, set its data defined properties, assign it to a 3d renderer and then assign the 3d renderer to the layer:</div><div><br></div><div>```</div><div>s = QgsPolygon3DSymbol()</div><div>p = QgsProperty()</div><div>p.setField('field_containing_height')</div><div>c = QgsPropertyCollection()</div><div>c.setProperty(QgsPolygon3DSymbol.Property.ExtrusionHeight, p)</div><div>s.setDataDefinedProperties(c)</div><div>layer.setRenderer3D(QgsVectorLayer3DRenderer(s))</div><div>```</div><div><br></div><div>Best,</div><div>Stefanos<br></div></div>