QGIS API Documentation 3.41.0-Master (45a0abf3bec)
|
Represents a patch shape for use in map legends. More...
#include <qgslegendpatchshape.h>
Public Member Functions | |
QgsLegendPatchShape ()=default | |
Constructor for a null QgsLegendPatchShape. | |
QgsLegendPatchShape (Qgis::SymbolType type, const QgsGeometry &geometry, bool preserveAspectRatio=true) | |
Constructor for QgsLegendPatchShape. | |
QgsGeometry | geometry () const |
Returns the geometry for the patch shape. | |
bool | isNull () const |
Returns true if the patch shape is a null QgsLegendPatchShape, which indicates that the default legend patch shape should be used instead. | |
bool | preserveAspectRatio () const |
Returns true if the patch shape should preserve its aspect ratio when it is resized to fit a desired legend patch size. | |
void | readXml (const QDomElement &element, const QgsReadWriteContext &context) |
Read settings from a DOM element. | |
QgsGeometry | scaledGeometry (QSizeF size) const |
Returns the patch shape's geometry, scaled to the given size. | |
bool | scaleToOutputSize () const |
Returns true if the patch shape should by resized to the desired target size when rendering. | |
void | setGeometry (const QgsGeometry &geometry) |
Sets the geometry for the patch shape. | |
void | setPreserveAspectRatio (bool preserve) |
Sets whether the patch shape should preserve its aspect ratio when it is resized to fit a desired legend patch size. | |
void | setScaleToOutputSize (bool scale) |
Sets whether the patch shape should by resized to the desired target size when rendering. | |
void | setSymbolType (Qgis::SymbolType type) |
Sets the symbol type associated with this patch. | |
Qgis::SymbolType | symbolType () const |
Returns the symbol type associated with this patch. | |
QList< QList< QPolygonF > > | toQPolygonF (Qgis::SymbolType type, QSizeF size) const |
Converts the patch shape to a set of QPolygonF objects representing how the patch should be drawn for a symbol of the given type at the specified size (as geometry parts and rings). | |
void | writeXml (QDomElement &element, QDomDocument &doc, const QgsReadWriteContext &context) const |
Write settings into a DOM element. | |
Represents a patch shape for use in map legends.
Definition at line 33 of file qgslegendpatchshape.h.
|
default |
Constructor for a null QgsLegendPatchShape.
A null QgsLegendPatchShape indicates that the default legend patch shape should be used instead.
QgsLegendPatchShape::QgsLegendPatchShape | ( | Qgis::SymbolType | type, |
const QgsGeometry & | geometry, | ||
bool | preserveAspectRatio = true |
||
) |
Constructor for QgsLegendPatchShape.
The type argument specifies the symbol type associated with this patch.
The geometry argument gives the shape of the patch to render. See setGeometry() for further details on the geometry requirements.
If preserveAspectRatio is true
, then the patch shape should preserve its aspect ratio when it is resized to fit a desired legend patch size.
Definition at line 21 of file qgslegendpatchshape.cpp.
QgsGeometry QgsLegendPatchShape::geometry | ( | ) | const |
Returns the geometry for the patch shape.
Definition at line 34 of file qgslegendpatchshape.cpp.
bool QgsLegendPatchShape::isNull | ( | ) | const |
Returns true
if the patch shape is a null QgsLegendPatchShape, which indicates that the default legend patch shape should be used instead.
Definition at line 29 of file qgslegendpatchshape.cpp.
bool QgsLegendPatchShape::preserveAspectRatio | ( | ) | const |
Returns true
if the patch shape should preserve its aspect ratio when it is resized to fit a desired legend patch size.
Definition at line 44 of file qgslegendpatchshape.cpp.
void QgsLegendPatchShape::readXml | ( | const QDomElement & | element, |
const QgsReadWriteContext & | context | ||
) |
Read settings from a DOM element.
Definition at line 129 of file qgslegendpatchshape.cpp.
QgsGeometry QgsLegendPatchShape::scaledGeometry | ( | QSizeF | size | ) | const |
Returns the patch shape's geometry, scaled to the given size.
Note that if scaleToOutputSize() is false
then no scaling will be applied.
Definition at line 64 of file qgslegendpatchshape.cpp.
bool QgsLegendPatchShape::scaleToOutputSize | ( | ) | const |
Returns true
if the patch shape should by resized to the desired target size when rendering.
Resizing to the target size is the default behavior.
Definition at line 54 of file qgslegendpatchshape.cpp.
void QgsLegendPatchShape::setGeometry | ( | const QgsGeometry & | geometry | ) |
Sets the geometry for the patch shape.
The origin and size of the geometry is not important, as the legend renderer will automatically scale and transform the geometry to match the desired overall patch bounds.
Geometries for legend patches are rendered respecting the traditional "y values increase toward the top of the map" convention, as opposed to the standard computer graphics convention of "y values increase toward the bottom of the display".
Definition at line 39 of file qgslegendpatchshape.cpp.
void QgsLegendPatchShape::setPreserveAspectRatio | ( | bool | preserve | ) |
Sets whether the patch shape should preserve its aspect ratio when it is resized to fit a desired legend patch size.
The default behavior is to respect the geometry()'s aspect ratio.
Definition at line 49 of file qgslegendpatchshape.cpp.
void QgsLegendPatchShape::setScaleToOutputSize | ( | bool | scale | ) |
Sets whether the patch shape should by resized to the desired target size when rendering.
Resizing to the target size is the default behavior.
Definition at line 59 of file qgslegendpatchshape.cpp.
void QgsLegendPatchShape::setSymbolType | ( | Qgis::SymbolType | type | ) |
Sets the symbol type associated with this patch.
Definition at line 148 of file qgslegendpatchshape.cpp.
Qgis::SymbolType QgsLegendPatchShape::symbolType | ( | ) | const |
Returns the symbol type associated with this patch.
Definition at line 143 of file qgslegendpatchshape.cpp.
QList< QList< QPolygonF > > QgsLegendPatchShape::toQPolygonF | ( | Qgis::SymbolType | type, |
QSizeF | size | ||
) | const |
Converts the patch shape to a set of QPolygonF objects representing how the patch should be drawn for a symbol of the given type at the specified size (as geometry parts and rings).
Definition at line 113 of file qgslegendpatchshape.cpp.
void QgsLegendPatchShape::writeXml | ( | QDomElement & | element, |
QDomDocument & | doc, | ||
const QgsReadWriteContext & | context | ||
) | const |
Write settings into a DOM element.
Definition at line 136 of file qgslegendpatchshape.cpp.