15#ifndef QGSPROPERTYTRANSFORMER_H
16#define QGSPROPERTYTRANSFORMER_H
27#include <QDomDocument>
90 void setControlPoints(
const QList< QgsPointXY > &points );
97 void addControlPoint(
double x,
double y );
104 void removeControlPoint(
double x,
double y );
109 double y(
double x )
const;
116 QVector< double > y(
const QVector< double > &x )
const;
124 bool readXml(
const QDomElement &elem,
const QDomDocument &doc );
132 bool writeXml( QDomElement &transformElem, QDomDocument &doc )
const;
140 QVariant toVariant()
const;
148 bool loadVariant(
const QVariant &transformer );
151 void calcSecondDerivativeArray();
153 QList< QgsPointXY > mControlPoints;
155 double *mSecondDerivativeArray =
nullptr;
171 sipType = sipType_QgsGenericNumericTransformer;
173 sipType = sipType_QgsSizeScaleTransformer;
175 sipType = sipType_QgsColorRampTransformer;
177 sipType = sipType_QgsPropertyTransformer;
225 virtual bool loadVariant(
const QVariant &transformer );
292 virtual QString
toExpression(
const QString &baseExpression )
const = 0;
344 QVariant toVariant() const override;
345 bool loadVariant( const QVariant &definition ) override;
346 QVariant transform( const
QgsExpressionContext &context, const QVariant &value ) const override;
347 QString toExpression( const QString &baseExpression ) const override;
367 double value(
double input ) const;
460 QgsSizeScaleTransformer( ScaleType type = Linear,
double minValue = 0.0,
double maxValue = 1.0,
double minSize = 0.0,
double maxSize = 1.0,
double nullSize = 0.0,
double exponent = 1.0 );
464 QVariant toVariant() const override;
465 bool loadVariant( const QVariant &definition ) override;
466 QVariant transform( const
QgsExpressionContext &context, const QVariant &value ) const override;
467 QString toExpression( const QString &baseExpression ) const override;
483 double size(
double value ) const;
554 void setType( ScaleType type );
557 ScaleType mType = Linear;
589 QVariant toVariant() const override;
590 bool loadVariant( const QVariant &definition ) override;
591 QVariant transform( const
QgsExpressionContext &context, const QVariant &value ) const override;
592 QString toExpression( const QString &baseExpression ) const override;
599 QColor color(
double value ) const;
643 std::unique_ptr< QgsColorRamp > mGradientRamp;
Abstract base class for color ramps.
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
#define SIP_CONVERT_TO_SUBCLASS_CODE(code)