18 #ifndef QGSVECTORFIELDSYMBOLLAYER_H
19 #define QGSVECTORFIELDSYMBOLLAYER_H
36 ClockwiseFromNorth = 0,
37 CounterclockwiseFromEast
71 void setXAttribute(
const QString& attribute ) { mXAttribute = attribute; }
73 void setYAttribute(
const QString& attribute ) { mYAttribute = attribute; }
76 double scale()
const {
return mScale; }
113 void convertPolarToCartesian(
double length,
double angle,
double& x,
double& y )
const;
116 #endif // QGSVECTORFIELDSYMBOLLAYER_H
virtual QSet< QString > usedAttributes() const
QgsSymbolV2::OutputUnit mDistanceUnit
void setXAttribute(const QString &attribute)
AngleOrientation mAngleOrientation
QString xAttribute() const
QgsSymbolV2::OutputUnit outputUnit() const
void setYAttribute(const QString &attribute)
virtual QgsSymbolLayerV2 * clone() const =0
void setMapUnitScale(const QgsMapUnitScale &scale)
void setAngleUnits(AngleUnits units)
void startRender(QgsSymbolV2RenderContext &context)
VectorFieldType mVectorFieldType
virtual void toSld(QDomDocument &doc, QDomElement &element, QgsStringMap props) const
AngleOrientation angleOrientation() const
const QgsMapUnitScale & distanceMapUnitScale() const
void setOutputUnit(QgsSymbolV2::OutputUnit unit)
VectorFieldType vectorFieldType() const
QMap< QString, QString > QgsStringMap
A symbol layer class for displaying displacement arrows based on point layer attributes.
virtual void renderPoint(const QPointF &point, QgsSymbolV2RenderContext &context)=0
QgsMapUnitScale mDistanceMapUnitScale
virtual QgsStringMap properties() const =0
void setDistanceMapUnitScale(const QgsMapUnitScale &scale)
QgsMapUnitScale mapUnitScale() const
QgsSymbolV2::SymbolType type() const
double ANALYSIS_EXPORT angle(Point3D *p1, Point3D *p2, Point3D *p3, Point3D *p4)
Calculates the angle between two segments (in 2 dimension, z-values are ignored)
void drawPreviewIcon(QgsSymbolV2RenderContext &context, QSize size)
QgsSymbolV2::OutputUnit distanceUnit() const
QString yAttribute() const
QString layerType() const
QgsLineSymbolV2 * mLineSymbol
void setDistanceUnit(QgsSymbolV2::OutputUnit unit)
void setAngleOrientation(AngleOrientation orientation)
AngleUnits angleUnits() const
virtual bool setSubSymbol(QgsSymbolV2 *symbol)
void setVectorFieldType(VectorFieldType type)
virtual void stopRender(QgsSymbolV2RenderContext &context)=0
QgsSymbolV2 * subSymbol()