QGIS API Documentation
3.26.3-Buenos Aires (65e4edfdad)
|
Go to the documentation of this file.
29 QMapIterator<QString, QgsExpression *> i( mExpressions );
40 if ( !mExpressions.contains( expression ) )
44 mExpressions[expression] = expr;
46 return mExpressions[expression];
70 const int pixelsize = s.
font.pointSizeF() /
c.mapToPixel().mapUnitsPerPixel();
71 f.setPixelSize( pixelsize > 0 ? pixelsize : 1 );
75 f.setPixelSize( s.
font.pointSizeF() * 0.376 *
c.scaleFactor() );
83 double scaledValue = value;
90 scaledValue = std::sqrt( scaledValue );
91 scaledLowerValue = std::sqrt( scaledLowerValue );
92 scaledUpperValue = std::sqrt( scaledUpperValue );
96 const double scaledRatio = ( scaledValue - scaledLowerValue ) / ( scaledUpperValue - scaledLowerValue );
98 QSizeF size = QSizeF( is.
upperSize.width() * scaledRatio + is.
lowerSize.width() * ( 1 - scaledRatio ),
112 size.setWidth( size.height() );
QgsExpression * getExpression(const QString &expression, const QgsExpressionContext &context)
Returns a prepared expression for the specified context.
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
Base class for all diagram types.
QSizeF sizeForValue(double value, const QgsDiagramSettings &s, const QgsDiagramInterpolationSettings &is) const
Returns the scaled size of a diagram for a value, respecting the specified diagram interpolation sett...
double minimumSize
Scale diagrams smaller than mMinimumSize to mMinimumSize.
Contains information about the context of a rendering operation.
QFont scaledFont(const QgsDiagramSettings &s, const QgsRenderContext &c)
Calculates a size to match the current settings and rendering context.
void setPenWidth(QPen &pen, const QgsDiagramSettings &s, const QgsRenderContext &c)
Changes the pen width to match the current settings and rendering context.
QSizeF sizePainterUnits(QSizeF size, const QgsDiagramSettings &s, const QgsRenderContext &c)
Calculates a size to match the current settings and rendering context.
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference)
bool prepare(const QgsExpressionContext *context)
Gets the expression ready for evaluation - find out column indexes.
Additional diagram settings for interpolated size rendering.
QgsMapUnitScale lineSizeScale
Line unit scale.
As part of the API refactoring and improvements which landed in the Processing API was substantially reworked from the x version This was done in order to allow much of the underlying Processing framework to be ported into c
QgsMapUnitScale sizeScale
Diagram size unit scale.
QgsUnitTypes::RenderUnit sizeType
Diagram size unit.
QgsDiagram()=default
Constructor for QgsDiagram.
QgsUnitTypes::RenderUnit lineSizeUnit
Line unit index.
Class for parsing and evaluation of expressions (formerly called "search strings")....
@ RenderMapUnits
Map units.
Stores the settings for rendering a single diagram.