Quantum GIS API Documentation
1.8
|
A symbol layer for rendering objects with major and minor axis (e.g. More...
#include <qgsellipsesymbollayerv2.h>
Public Member Functions | |
QgsEllipseSymbolLayerV2 () | |
~QgsEllipseSymbolLayerV2 () | |
void | renderPoint (const QPointF &point, QgsSymbolV2RenderContext &context) |
QString | layerType () const |
void | startRender (QgsSymbolV2RenderContext &context) |
void | stopRender (QgsSymbolV2RenderContext &context) |
QgsSymbolLayerV2 * | clone () const |
QgsStringMap | properties () const |
void | toSld (QDomDocument &doc, QDomElement &element, QgsStringMap props) const |
void | writeSldMarker (QDomDocument &doc, QDomElement &element, QgsStringMap props) const |
void | setSymbolName (const QString &name) |
QString | symbolName () const |
void | setSymbolNameField (const QString &field) |
const QString & | symbolNameField () const |
void | setSymbolWidth (double w) |
double | symbolWidth () const |
void | setWidthField (const QString &field) |
const QString & | widthField () const |
void | setSymbolHeight (double h) |
double | symbolHeight () const |
void | setHeightField (const QString &field) |
const QString & | heightField () const |
void | setRotationField (const QString &field) |
const QString & | rotationField () const |
void | setOutlineWidth (double w) |
double | outlineWidth () const |
void | setOutlineWidthField (const QString &field) |
const QString & | outlineWidthField () const |
void | setFillColor (const QColor &c) |
QColor | fillColor () const |
void | setFillColorField (const QString &field) |
const QString & | fillColorField () const |
void | setOutlineColor (const QColor &c) |
QColor | outlineColor () const |
void | setOutlineColorField (const QString &field) |
const QString & | outlineColorField () const |
QSet< QString > | usedAttributes () const |
Static Public Member Functions | |
static QgsSymbolLayerV2 * | create (const QgsStringMap &properties=QgsStringMap()) |
static QgsSymbolLayerV2 * | createFromSld (QDomElement &element) |
Private Member Functions | |
void | preparePath (const QString &symbolName, QgsSymbolV2RenderContext &context, const QgsFeature *f=0) |
Setup mPainterPath. | |
bool | hasDataDefinedProperty () const |
True if this symbol layer uses a data defined property. | |
Private Attributes | |
QString | mSymbolName |
double | mSymbolWidth |
double | mSymbolHeight |
QColor | mFillColor |
QColor | mOutlineColor |
double | mOutlineWidth |
QString | mWidthField |
QString | mHeightField |
QString | mRotationField |
QString | mOutlineWidthField |
QString | mFillColorField |
QString | mOutlineColorField |
QString | mSymbolNameField |
int | mWidthIndex |
int | mHeightIndex |
int | mRotationIndex |
int | mOutlineWidthIndex |
int | mFillColorIndex |
int | mOutlineColorIndex |
int | mSymbolNameIndex |
QPainterPath | mPainterPath |
QPen | mPen |
QBrush | mBrush |
A symbol layer for rendering objects with major and minor axis (e.g.
ellipse, rectangle )
Definition at line 22 of file qgsellipsesymbollayerv2.h.
Definition at line 26 of file qgsellipsesymbollayerv2.cpp.
References QgsMarkerSymbolLayerV2::mAngle, mBrush, mFillColor, mFillColorIndex, mHeightIndex, mOutlineColor, mOutlineColorIndex, mOutlineWidthIndex, mPen, mRotationIndex, mSymbolNameIndex, and mWidthIndex.
Referenced by create(), and createFromSld().
Definition at line 45 of file qgsellipsesymbollayerv2.cpp.
QgsSymbolLayerV2 * QgsEllipseSymbolLayerV2::clone | ( | ) | const [virtual] |
Implements QgsSymbolLayerV2.
Definition at line 203 of file qgsellipsesymbollayerv2.cpp.
References create(), and properties().
QgsSymbolLayerV2 * QgsEllipseSymbolLayerV2::create | ( | const QgsStringMap & | properties = QgsStringMap() | ) | [static] |
Definition at line 49 of file qgsellipsesymbollayerv2.cpp.
References QgsSymbolLayerV2Utils::decodeColor(), QgsEllipseSymbolLayerV2(), QgsMarkerSymbolLayerV2::setAngle(), setFillColor(), setFillColorField(), setHeightField(), setOutlineColor(), setOutlineColorField(), setOutlineWidth(), setOutlineWidthField(), setRotationField(), setSymbolHeight(), setSymbolName(), setSymbolNameField(), setSymbolWidth(), and setWidthField().
Referenced by clone(), and QgsSymbolLayerV2Registry::QgsSymbolLayerV2Registry().
QgsSymbolLayerV2 * QgsEllipseSymbolLayerV2::createFromSld | ( | QDomElement & | element | ) | [static] |
Definition at line 268 of file qgsellipsesymbollayerv2.cpp.
References QgsMarkerSymbolLayerV2::angle(), QgsSymbolLayerV2::color(), doubleNear(), QgsSymbolLayerV2Utils::getVendorOptionList(), QgsDebugMsg, QgsEllipseSymbolLayerV2(), QgsSymbolLayerV2Utils::rotationFromSldElement(), QgsMarkerSymbolLayerV2::setAngle(), QgsSymbolLayerV2::setColor(), setOutlineColor(), setOutlineWidth(), setSymbolHeight(), setSymbolName(), setSymbolWidth(), QgsMarkerSymbolLayerV2::size(), and QgsSymbolLayerV2Utils::wellKnownMarkerFromSld().
Referenced by QgsSymbolLayerV2Registry::QgsSymbolLayerV2Registry().
QColor QgsEllipseSymbolLayerV2::fillColor | ( | ) | const [inline] |
Definition at line 69 of file qgsellipsesymbollayerv2.h.
const QString& QgsEllipseSymbolLayerV2::fillColorField | ( | ) | const [inline] |
Definition at line 72 of file qgsellipsesymbollayerv2.h.
bool QgsEllipseSymbolLayerV2::hasDataDefinedProperty | ( | ) | const [private] |
True if this symbol layer uses a data defined property.
Definition at line 337 of file qgsellipsesymbollayerv2.cpp.
References mFillColorIndex, mHeightIndex, mOutlineColorIndex, mOutlineWidthIndex, and mWidthIndex.
Referenced by startRender().
const QString& QgsEllipseSymbolLayerV2::heightField | ( | ) | const [inline] |
Definition at line 57 of file qgsellipsesymbollayerv2.h.
QString QgsEllipseSymbolLayerV2::layerType | ( | ) | const [virtual] |
Implements QgsSymbolLayerV2.
Definition at line 170 of file qgsellipsesymbollayerv2.cpp.
QColor QgsEllipseSymbolLayerV2::outlineColor | ( | ) | const [inline] |
Definition at line 75 of file qgsellipsesymbollayerv2.h.
const QString& QgsEllipseSymbolLayerV2::outlineColorField | ( | ) | const [inline] |
Definition at line 78 of file qgsellipsesymbollayerv2.h.
double QgsEllipseSymbolLayerV2::outlineWidth | ( | ) | const [inline] |
Definition at line 63 of file qgsellipsesymbollayerv2.h.
const QString& QgsEllipseSymbolLayerV2::outlineWidthField | ( | ) | const [inline] |
Definition at line 66 of file qgsellipsesymbollayerv2.h.
void QgsEllipseSymbolLayerV2::preparePath | ( | const QString & | symbolName, |
QgsSymbolV2RenderContext & | context, | ||
const QgsFeature * | f = 0 |
||
) | [private] |
Setup mPainterPath.
symbolName | name of symbol |
context | render context |
f | feature f to render (0 if no data defined rendering) |
Definition at line 343 of file qgsellipsesymbollayerv2.cpp.
References QgsFeature::attributeMap(), QgsSymbolV2::DataDefinedSizeScale, mHeightIndex, mPainterPath, QgsMarkerSymbolLayerV2::mSize, mSymbolHeight, mSymbolWidth, mWidthIndex, QgsSymbolV2RenderContext::outputLineWidth(), and QgsSymbolV2RenderContext::renderHints().
Referenced by renderPoint(), and startRender().
QgsStringMap QgsEllipseSymbolLayerV2::properties | ( | ) | const [virtual] |
Implements QgsSymbolLayerV2.
Definition at line 317 of file qgsellipsesymbollayerv2.cpp.
References QgsSymbolLayerV2Utils::encodeColor(), QgsMarkerSymbolLayerV2::mAngle, mFillColor, mFillColorField, mHeightField, mOutlineColor, mOutlineColorField, mOutlineWidth, mOutlineWidthField, mRotationField, mSymbolHeight, mSymbolName, mSymbolNameField, mSymbolWidth, and mWidthField.
Referenced by clone().
void QgsEllipseSymbolLayerV2::renderPoint | ( | const QPointF & | point, |
QgsSymbolV2RenderContext & | context | ||
) | [virtual] |
Implements QgsMarkerSymbolLayerV2.
Definition at line 114 of file qgsellipsesymbollayerv2.cpp.
References QgsFeature::attributeMap(), doubleNear(), QgsSymbolV2RenderContext::feature(), QgsMarkerSymbolLayerV2::mAngle, mBrush, mFillColorIndex, mHeightIndex, mOutlineColorIndex, mOutlineWidthIndex, mPainterPath, mPen, mRotationIndex, mSymbolName, mSymbolNameIndex, mWidthIndex, QgsSymbolV2RenderContext::outputLineWidth(), QgsRenderContext::painter(), preparePath(), QgsSymbolV2RenderContext::renderContext(), and symbolName().
const QString& QgsEllipseSymbolLayerV2::rotationField | ( | ) | const [inline] |
Definition at line 60 of file qgsellipsesymbollayerv2.h.
void QgsEllipseSymbolLayerV2::setFillColor | ( | const QColor & | c | ) | [inline] |
Definition at line 68 of file qgsellipsesymbollayerv2.h.
Referenced by create().
void QgsEllipseSymbolLayerV2::setFillColorField | ( | const QString & | field | ) | [inline] |
Definition at line 71 of file qgsellipsesymbollayerv2.h.
Referenced by create().
void QgsEllipseSymbolLayerV2::setHeightField | ( | const QString & | field | ) | [inline] |
Definition at line 56 of file qgsellipsesymbollayerv2.h.
Referenced by create().
void QgsEllipseSymbolLayerV2::setOutlineColor | ( | const QColor & | c | ) | [inline] |
Definition at line 74 of file qgsellipsesymbollayerv2.h.
Referenced by create(), and createFromSld().
void QgsEllipseSymbolLayerV2::setOutlineColorField | ( | const QString & | field | ) | [inline] |
Definition at line 77 of file qgsellipsesymbollayerv2.h.
Referenced by create().
void QgsEllipseSymbolLayerV2::setOutlineWidth | ( | double | w | ) | [inline] |
Definition at line 62 of file qgsellipsesymbollayerv2.h.
Referenced by create(), and createFromSld().
void QgsEllipseSymbolLayerV2::setOutlineWidthField | ( | const QString & | field | ) | [inline] |
Definition at line 65 of file qgsellipsesymbollayerv2.h.
Referenced by create().
void QgsEllipseSymbolLayerV2::setRotationField | ( | const QString & | field | ) | [inline] |
Definition at line 59 of file qgsellipsesymbollayerv2.h.
Referenced by create().
void QgsEllipseSymbolLayerV2::setSymbolHeight | ( | double | h | ) | [inline] |
Definition at line 53 of file qgsellipsesymbollayerv2.h.
Referenced by create(), and createFromSld().
void QgsEllipseSymbolLayerV2::setSymbolName | ( | const QString & | name | ) | [inline] |
Definition at line 41 of file qgsellipsesymbollayerv2.h.
Referenced by create(), and createFromSld().
void QgsEllipseSymbolLayerV2::setSymbolNameField | ( | const QString & | field | ) | [inline] |
Definition at line 44 of file qgsellipsesymbollayerv2.h.
Referenced by create().
void QgsEllipseSymbolLayerV2::setSymbolWidth | ( | double | w | ) | [inline] |
Definition at line 47 of file qgsellipsesymbollayerv2.h.
Referenced by create(), and createFromSld().
void QgsEllipseSymbolLayerV2::setWidthField | ( | const QString & | field | ) | [inline] |
Definition at line 50 of file qgsellipsesymbollayerv2.h.
Referenced by create().
void QgsEllipseSymbolLayerV2::startRender | ( | QgsSymbolV2RenderContext & | context | ) | [virtual] |
Implements QgsSymbolLayerV2.
Definition at line 175 of file qgsellipsesymbollayerv2.cpp.
References QgsSymbolV2RenderContext::feature(), QgsVectorLayer::fieldNameIndex(), hasDataDefinedProperty(), QgsSymbolV2RenderContext::layer(), mBrush, mFillColor, mFillColorField, mFillColorIndex, mHeightField, mHeightIndex, mOutlineColor, mOutlineColorField, mOutlineColorIndex, mOutlineWidth, mOutlineWidthField, mOutlineWidthIndex, mPen, mRotationField, mRotationIndex, mSymbolName, mSymbolNameField, mSymbolNameIndex, mWidthField, mWidthIndex, QgsSymbolV2RenderContext::outputLineWidth(), and preparePath().
void QgsEllipseSymbolLayerV2::stopRender | ( | QgsSymbolV2RenderContext & | context | ) | [virtual] |
Implements QgsSymbolLayerV2.
Definition at line 199 of file qgsellipsesymbollayerv2.cpp.
double QgsEllipseSymbolLayerV2::symbolHeight | ( | ) | const [inline] |
Definition at line 54 of file qgsellipsesymbollayerv2.h.
QString QgsEllipseSymbolLayerV2::symbolName | ( | ) | const [inline] |
Definition at line 42 of file qgsellipsesymbollayerv2.h.
Referenced by renderPoint().
const QString& QgsEllipseSymbolLayerV2::symbolNameField | ( | ) | const [inline] |
Definition at line 45 of file qgsellipsesymbollayerv2.h.
double QgsEllipseSymbolLayerV2::symbolWidth | ( | ) | const [inline] |
Definition at line 48 of file qgsellipsesymbollayerv2.h.
void QgsEllipseSymbolLayerV2::toSld | ( | QDomDocument & | doc, |
QDomElement & | element, | ||
QgsStringMap | props | ||
) | const [virtual] |
Reimplemented from QgsMarkerSymbolLayerV2.
Definition at line 208 of file qgsellipsesymbollayerv2.cpp.
References QgsSymbolLayerV2Utils::createGeometryElement(), and writeSldMarker().
QSet< QString > QgsEllipseSymbolLayerV2::usedAttributes | ( | ) | const [virtual] |
Reimplemented from QgsSymbolLayerV2.
Definition at line 400 of file qgsellipsesymbollayerv2.cpp.
References mFillColorField, mHeightField, mOutlineColorField, mOutlineWidthField, mRotationField, mSymbolNameField, and mWidthField.
const QString& QgsEllipseSymbolLayerV2::widthField | ( | ) | const [inline] |
Definition at line 51 of file qgsellipsesymbollayerv2.h.
void QgsEllipseSymbolLayerV2::writeSldMarker | ( | QDomDocument & | doc, |
QDomElement & | element, | ||
QgsStringMap | props | ||
) | const [virtual] |
Reimplemented from QgsMarkerSymbolLayerV2.
Definition at line 221 of file qgsellipsesymbollayerv2.cpp.
References QgsMarkerSymbolLayerV2::angle(), QgsSymbolLayerV2Utils::createRotationElement(), QgsSymbolLayerV2Utils::createVendorOptionElement(), doubleNear(), QgsMarkerSymbolLayerV2::mAngle, mFillColor, mOutlineColor, mOutlineWidth, mRotationField, mSymbolHeight, mSymbolName, mSymbolWidth, and QgsSymbolLayerV2Utils::wellKnownMarkerToSld().
Referenced by toSld().
QBrush QgsEllipseSymbolLayerV2::mBrush [private] |
Definition at line 129 of file qgsellipsesymbollayerv2.h.
Referenced by QgsEllipseSymbolLayerV2(), renderPoint(), and startRender().
QColor QgsEllipseSymbolLayerV2::mFillColor [private] |
Definition at line 86 of file qgsellipsesymbollayerv2.h.
Referenced by properties(), QgsEllipseSymbolLayerV2(), startRender(), and writeSldMarker().
QString QgsEllipseSymbolLayerV2::mFillColorField [private] |
Definition at line 112 of file qgsellipsesymbollayerv2.h.
Referenced by properties(), startRender(), and usedAttributes().
int QgsEllipseSymbolLayerV2::mFillColorIndex [private] |
Definition at line 122 of file qgsellipsesymbollayerv2.h.
Referenced by hasDataDefinedProperty(), QgsEllipseSymbolLayerV2(), renderPoint(), and startRender().
QString QgsEllipseSymbolLayerV2::mHeightField [private] |
Definition at line 109 of file qgsellipsesymbollayerv2.h.
Referenced by properties(), startRender(), and usedAttributes().
int QgsEllipseSymbolLayerV2::mHeightIndex [private] |
Definition at line 119 of file qgsellipsesymbollayerv2.h.
Referenced by hasDataDefinedProperty(), preparePath(), QgsEllipseSymbolLayerV2(), renderPoint(), and startRender().
QColor QgsEllipseSymbolLayerV2::mOutlineColor [private] |
Definition at line 87 of file qgsellipsesymbollayerv2.h.
Referenced by properties(), QgsEllipseSymbolLayerV2(), startRender(), and writeSldMarker().
QString QgsEllipseSymbolLayerV2::mOutlineColorField [private] |
Definition at line 113 of file qgsellipsesymbollayerv2.h.
Referenced by properties(), startRender(), and usedAttributes().
int QgsEllipseSymbolLayerV2::mOutlineColorIndex [private] |
Definition at line 123 of file qgsellipsesymbollayerv2.h.
Referenced by hasDataDefinedProperty(), QgsEllipseSymbolLayerV2(), renderPoint(), and startRender().
double QgsEllipseSymbolLayerV2::mOutlineWidth [private] |
Definition at line 88 of file qgsellipsesymbollayerv2.h.
Referenced by properties(), startRender(), and writeSldMarker().
QString QgsEllipseSymbolLayerV2::mOutlineWidthField [private] |
Definition at line 111 of file qgsellipsesymbollayerv2.h.
Referenced by properties(), startRender(), and usedAttributes().
int QgsEllipseSymbolLayerV2::mOutlineWidthIndex [private] |
Definition at line 121 of file qgsellipsesymbollayerv2.h.
Referenced by hasDataDefinedProperty(), QgsEllipseSymbolLayerV2(), renderPoint(), and startRender().
QPainterPath QgsEllipseSymbolLayerV2::mPainterPath [private] |
Definition at line 126 of file qgsellipsesymbollayerv2.h.
Referenced by preparePath(), and renderPoint().
QPen QgsEllipseSymbolLayerV2::mPen [private] |
Definition at line 128 of file qgsellipsesymbollayerv2.h.
Referenced by QgsEllipseSymbolLayerV2(), renderPoint(), and startRender().
QString QgsEllipseSymbolLayerV2::mRotationField [private] |
Definition at line 110 of file qgsellipsesymbollayerv2.h.
Referenced by properties(), startRender(), usedAttributes(), and writeSldMarker().
int QgsEllipseSymbolLayerV2::mRotationIndex [private] |
Definition at line 120 of file qgsellipsesymbollayerv2.h.
Referenced by QgsEllipseSymbolLayerV2(), renderPoint(), and startRender().
double QgsEllipseSymbolLayerV2::mSymbolHeight [private] |
Definition at line 85 of file qgsellipsesymbollayerv2.h.
Referenced by preparePath(), properties(), and writeSldMarker().
QString QgsEllipseSymbolLayerV2::mSymbolName [private] |
Definition at line 83 of file qgsellipsesymbollayerv2.h.
Referenced by properties(), renderPoint(), startRender(), and writeSldMarker().
QString QgsEllipseSymbolLayerV2::mSymbolNameField [private] |
Definition at line 114 of file qgsellipsesymbollayerv2.h.
Referenced by properties(), startRender(), and usedAttributes().
int QgsEllipseSymbolLayerV2::mSymbolNameIndex [private] |
Definition at line 124 of file qgsellipsesymbollayerv2.h.
Referenced by QgsEllipseSymbolLayerV2(), renderPoint(), and startRender().
double QgsEllipseSymbolLayerV2::mSymbolWidth [private] |
Definition at line 84 of file qgsellipsesymbollayerv2.h.
Referenced by preparePath(), properties(), and writeSldMarker().
QString QgsEllipseSymbolLayerV2::mWidthField [private] |
Definition at line 108 of file qgsellipsesymbollayerv2.h.
Referenced by properties(), startRender(), and usedAttributes().
int QgsEllipseSymbolLayerV2::mWidthIndex [private] |
Definition at line 118 of file qgsellipsesymbollayerv2.h.
Referenced by hasDataDefinedProperty(), preparePath(), QgsEllipseSymbolLayerV2(), renderPoint(), and startRender().