1+ class QgsCurveTransform
2+ {
3+ %TypeHeaderCode
4+ #include <qgspropertytransformer.h>
5+ %End
6+
7+ public:
8+
9+ QgsCurveTransform();
10+ QgsCurveTransform( const QList< QgsPoint >& controlPoints );
11+ ~QgsCurveTransform();
12+ QgsCurveTransform( const QgsCurveTransform& other );
13+
14+ //QgsCurveTransform& operator=( const QgsCurveTransform& other );
15+
16+ QList< QgsPoint > controlPoints() const;
17+
18+ void setControlPoints( const QList< QgsPoint >& points );
19+
20+ void addControlPoint( double x, double y );
21+
22+ void removeControlPoint( double x, double y );
23+
24+ double y( double x ) const;
25+
26+ QVector< double > y( const QVector< double >& x ) const;
27+
28+ bool readXml( const QDomElement& elem, const QDomDocument& doc );
29+
30+ bool writeXml( QDomElement& transformElem, QDomDocument& doc ) const;
31+
32+ };
133class QgsPropertyTransformer
234{
335%TypeHeaderCode
@@ -28,6 +60,8 @@ class QgsPropertyTransformer
2860
2961 QgsPropertyTransformer( double minValue = 0.0, double maxValue = 1.0 );
3062
63+ QgsPropertyTransformer( const QgsPropertyTransformer& other );
64+
3165 virtual ~QgsPropertyTransformer();
3266
3367 virtual Type transformerType() const = 0;
@@ -46,11 +80,18 @@ class QgsPropertyTransformer
4680
4781 void setMaxValue( double max );
4882
83+ QgsCurveTransform* curveTransform() const;
84+
85+ void setCurveTransform( QgsCurveTransform* transform /Transfer/ );
86+
4987 virtual QVariant transform( const QgsExpressionContext& context, const QVariant& value ) const = 0;
5088 virtual QString toExpression( const QString& baseExpression ) const = 0;
5189
5290 static QgsPropertyTransformer* fromExpression( const QString& expression, QString& baseExpression /Out/, QString& fieldName /Out/ ) /Factory/;
5391
92+ protected:
93+
94+ double transformNumeric( double input ) const;
5495};
5596class QgsGenericNumericTransformer : QgsPropertyTransformer
5697{
@@ -66,6 +107,8 @@ class QgsGenericNumericTransformer : QgsPropertyTransformer
66107 double nullOutput = 0.0,
67108 double exponent = 1.0 );
68109
110+ QgsGenericNumericTransformer( const QgsGenericNumericTransformer& other );
111+
69112 virtual Type transformerType() const;
70113 virtual QgsGenericNumericTransformer* clone() /Factory/;
71114 virtual bool writeXml( QDomElement& transformerElem, QDomDocument& doc ) const;
@@ -108,6 +151,8 @@ class QgsSizeScaleTransformer : QgsPropertyTransformer
108151 double nullSize = 0.0,
109152 double exponent = 1.0 );
110153
154+ QgsSizeScaleTransformer( const QgsSizeScaleTransformer& other );
155+
111156 virtual Type transformerType() const;
112157 virtual QgsSizeScaleTransformer* clone() /Factory/;
113158 virtual bool writeXml( QDomElement& transformerElem, QDomDocument& doc ) const;
0 commit comments