Class: QgsInvertedPolygonRenderer¶
- class qgis.core.QgsInvertedPolygonRenderer¶
Bases:
QgsMergedFeatureRenderer
QgsInvertedPolygonRenderer
is a polygon-only feature renderer used to display features inverted, where the exterior is turned to an interior and where the exterior theoretically spans the entire plane, allowing to mask the surroundings of some features.It is designed on top of another feature renderer, which is called “embedded” Most of the methods are then only proxies to the embedded renderer.
Features are collected to form one “inverted” polygon during
renderFeature()
and rendered onstopRender()
.New in version 2.4.
QgsInvertedPolygonRenderer(embeddedRenderer:
QgsFeatureRenderer
= None) Constructor- Parameters:
embeddedRenderer –
- optional embeddedRenderer. If
None
, a default one will be assigned. Ownership will be transferred.
Methods
Direct copies are forbidden.
Creates a
QgsInvertedPolygonRenderer
by a conversion from an existing renderer.Creates a renderer out of an XML, for loading
- rtype:
str
- rtype:
bool
Render the
feature
with thesymbol
usingcontext
.render editing vertex marker at specified point
render editing vertex marker for a polygon
render editing vertex marker for a polyline
- param doc:
Saves generic renderer data into the specified
element
.- type enabled:
bool
- optional embeddedRenderer. If
- clone(self) QgsInvertedPolygonRenderer ¶
Direct copies are forbidden. Use
clone()
instead.- Return type:
- convertFromRenderer(renderer: QgsFeatureRenderer) QgsInvertedPolygonRenderer ¶
Creates a
QgsInvertedPolygonRenderer
by a conversion from an existing renderer.- Return type:
- Returns:
a new renderer if the conversion was possible, otherwise
None
.
New in version 2.5.
- Parameters:
renderer (QgsFeatureRenderer) –
- convertSymbolRotation(symbol: QgsSymbol, field: str)¶
Note
this function is used to convert old rotations expressions to symbol level DataDefined angle
- convertSymbolSizeScale(symbol: QgsSymbol, method: Qgis.ScaleMethod, field: str)¶
Note
this function is used to convert old sizeScale expressions to symbol level DataDefined size
- create(element: QDomElement, context: QgsReadWriteContext) QgsFeatureRenderer ¶
Creates a renderer out of an XML, for loading
- Parameters:
element (QDomElement) –
context (QgsReadWriteContext) –
- Return type:
- dump(self) str ¶
- Return type:
str
- preprocessingEnabled(self) bool ¶
- Return type:
bool
- Returns:
True
if the geometries are to be preprocessed (merged with an union) before rendering.
- renderFeatureWithSymbol(self, feature: QgsFeature, symbol: QgsSymbol, context: QgsRenderContext, layer: int, selected: bool, drawVertexMarker: bool)¶
Render the
feature
with thesymbol
usingcontext
. Uselayer
to specify the symbol layer,selected
to specify if it should be rendered as selected anddrawVertexMarker
to specify if vertex markers should be rendered.
- renderVertexMarker(self, pt: QPointF | QPoint, context: QgsRenderContext)¶
render editing vertex marker at specified point
- renderVertexMarkerPolygon(self, pts: QPolygonF, rings: Iterable[QPolygonF], context: QgsRenderContext)¶
render editing vertex marker for a polygon
- renderVertexMarkerPolyline(self, pts: QPolygonF, context: QgsRenderContext)¶
render editing vertex marker for a polyline
- save(self, doc: QDomDocument, context: QgsReadWriteContext) QDomElement ¶
- Parameters:
doc (QDomDocument) –
context (QgsReadWriteContext) –
- Return type:
QDomElement
- saveRendererData(self, doc: QDomDocument, element: QDomElement, context: QgsReadWriteContext)¶
Saves generic renderer data into the specified
element
.This method should be called in a subclass’
save()
implementation in order to store all common base class properties in the DOMelement
.New in version 3.22.
- setPreprocessingEnabled(self, enabled: bool)¶
- Parameters:
enabled (bool) – enables or disables the preprocessing. When enabled, geometries will be merged with an union before being rendered. It allows fixing some rendering artifacts (when rendering overlapping polygons for instance). This will involve some CPU-demanding computations and is thus disabled by default.