15#ifndef QGSPROPERTYTRANSFORMER_H 
   16#define QGSPROPERTYTRANSFORMER_H 
   27#include <QDomDocument> 
   93    void setControlPoints( 
const QList< QgsPointXY > &points );
 
  100    void addControlPoint( 
double x, 
double y );
 
  107    void removeControlPoint( 
double x, 
double y );
 
  112    double y( 
double x ) 
const;
 
  119    QVector< double > y( 
const QVector< double > &x ) 
const;
 
  127    bool readXml( 
const QDomElement &elem, 
const QDomDocument &doc );
 
  135    bool writeXml( QDomElement &transformElem, QDomDocument &doc ) 
const;
 
  143    QVariant toVariant() 
const;
 
  151    bool loadVariant( 
const QVariant &transformer );
 
  155    void calcSecondDerivativeArray();
 
  157    QList< QgsPointXY > mControlPoints;
 
  159    double *mSecondDerivativeArray = 
nullptr;
 
  176      sipType = sipType_QgsGenericNumericTransformer;
 
  178      sipType = sipType_QgsSizeScaleTransformer;
 
  180      sipType = sipType_QgsColorRampTransformer;
 
  182      sipType = sipType_QgsPropertyTransformer;
 
  233    virtual bool loadVariant( 
const QVariant &transformer );
 
  241    virtual QVariant toVariant() 
const;
 
  300    virtual QString 
toExpression( 
const QString &baseExpression ) 
const = 0;
 
  323    double transformNumeric( 
double input ) 
const;
 
  357                                  double maxValue = 1.0,
 
  358                                  double minOutput = 0.0,
 
  359                                  double maxOutput = 1.0,
 
  360                                  double nullOutput = 0.0,
 
  361                                  double exponent = 1.0 );
 
  365    QVariant toVariant() const override;
 
  366    bool loadVariant( const QVariant &definition ) override;
 
  367    QVariant transform( const 
QgsExpressionContext &context, const QVariant &value ) const override;
 
  368    QString toExpression( const QString &baseExpression ) const override;
 
  388    double value( 
double input ) const;
 
  395    double minOutputValue()
 const { 
return mMinOutput; }
 
  485                             double minValue = 0.0,
 
  486                             double maxValue = 1.0,
 
  487                             double minSize = 0.0,
 
  488                             double maxSize = 1.0,
 
  489                             double nullSize = 0.0,
 
  490                             double exponent = 1.0 );
 
  494    QVariant toVariant() const override;
 
  495    bool loadVariant( const QVariant &definition ) override;
 
  496    QVariant transform( const 
QgsExpressionContext &context, const QVariant &value ) const override;
 
  497    QString toExpression( const QString &baseExpression ) const override;
 
  518    double size( 
double value ) const;
 
  525    double minSize()
 const { 
return mMinSize; }
 
  589    void setType( ScaleType type );
 
  592    ScaleType mType = Linear;
 
  620                             double maxValue = 1.0,
 
  622                             const QColor &nullColor = QColor( 0, 0, 0, 0 ) );
 
  631    QVariant toVariant() const override;
 
  632    bool loadVariant( const QVariant &definition ) override;
 
  633    QVariant transform( const 
QgsExpressionContext &context, const QVariant &value ) const override;
 
  634    QString toExpression( const QString &baseExpression ) const override;
 
  641    QColor color( 
double value ) const;
 
  661    QColor nullColor()
 const { 
return mNullColor; }
 
  686    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)