Quantum GIS API Documentation
1.7.4
|
#include <qgssymbolv2.h>
Public Types | |
enum | OutputUnit { MM, MapUnit } |
enum | SymbolType { Marker, Line, Fill } |
enum | RenderHint { DataDefinedSizeScale = 1, DataDefinedRotation = 2 } |
Public Member Functions | |
virtual | ~QgsSymbolV2 () |
SymbolType | type () const |
QgsSymbolLayerV2 * | symbolLayer (int layer) |
int | symbolLayerCount () |
bool | insertSymbolLayer (int index, QgsSymbolLayerV2 *layer) |
insert symbol layer to specified index | |
bool | appendSymbolLayer (QgsSymbolLayerV2 *layer) |
append symbol layer at the end of the list | |
bool | deleteSymbolLayer (int index) |
delete symbol layer at specified index | |
QgsSymbolLayerV2 * | takeSymbolLayer (int index) |
remove symbol layer from the list and return pointer to it | |
bool | changeSymbolLayer (int index, QgsSymbolLayerV2 *layer) |
delete layer at specified index and set a new one | |
void | startRender (QgsRenderContext &context) |
void | stopRender (QgsRenderContext &context) |
void | setColor (const QColor &color) |
QColor | color () |
void | drawPreviewIcon (QPainter *painter, QSize size) |
QImage | bigSymbolPreviewImage () |
QString | dump () |
virtual QgsSymbolV2 * | clone () const =0 |
OutputUnit | outputUnit () const |
void | setOutputUnit (OutputUnit u) |
qreal | alpha () const |
void | setAlpha (qreal alpha) |
void | setRenderHints (int hints) |
int | renderHints () |
Static Public Member Functions | |
static QgsSymbolV2 * | defaultSymbol (QGis::GeometryType geomType) |
return new default symbol for specified geometry type | |
Protected Member Functions | |
QgsSymbolV2 (SymbolType type, QgsSymbolLayerV2List layers) | |
QgsSymbolLayerV2List | cloneLayers () const |
bool | isSymbolLayerCompatible (SymbolType t) |
check whether a symbol layer type can be used within the symbol (marker-marker, line-line, fill-fill/line) | |
Protected Attributes | |
SymbolType | mType |
QgsSymbolLayerV2List | mLayers |
OutputUnit | mOutputUnit |
qreal | mAlpha |
Symbol opacity (in the range 0 - 1) | |
int | mRenderHints |
Definition at line 23 of file qgssymbolv2.h.
Definition at line 27 of file qgssymbolv2.h.
Definition at line 41 of file qgssymbolv2.h.
Definition at line 33 of file qgssymbolv2.h.
QgsSymbolV2::~QgsSymbolV2 | ( | ) | [virtual] |
Definition at line 40 of file qgssymbolv2.cpp.
References mLayers.
QgsSymbolV2::QgsSymbolV2 | ( | SymbolType | type, |
QgsSymbolLayerV2List | layers | ||
) | [protected] |
Definition at line 20 of file qgssymbolv2.cpp.
References isSymbolLayerCompatible(), mLayers, and type().
qreal QgsSymbolV2::alpha | ( | ) | const [inline] |
Definition at line 93 of file qgssymbolv2.h.
Referenced by QgsSymbolLayerV2Utils::saveSymbol().
bool QgsSymbolV2::appendSymbolLayer | ( | QgsSymbolLayerV2 * | layer | ) |
append symbol layer at the end of the list
Definition at line 94 of file qgssymbolv2.cpp.
References isSymbolLayerCompatible(), mLayers, and QgsSymbolLayerV2::type().
QImage QgsSymbolV2::bigSymbolPreviewImage | ( | ) |
Definition at line 195 of file qgssymbolv2.cpp.
References QgsSymbolLayerV2Utils::createRenderContext(), Fill, Line, Marker, mType, startRender(), and stopRender().
bool QgsSymbolV2::changeSymbolLayer | ( | int | index, |
QgsSymbolLayerV2 * | layer | ||
) |
delete layer at specified index and set a new one
Definition at line 124 of file qgssymbolv2.cpp.
References isSymbolLayerCompatible(), mLayers, and QgsSymbolLayerV2::type().
virtual QgsSymbolV2* QgsSymbolV2::clone | ( | ) | const [pure virtual] |
Implemented in QgsFillSymbolV2, QgsLineSymbolV2, and QgsMarkerSymbolV2.
Referenced by QgsGraduatedSymbolRendererV2::addClass(), QgsSingleSymbolRendererV2::clone(), QgsGraduatedSymbolRendererV2::clone(), QgsCategorizedSymbolRendererV2::clone(), QgsComposerSymbolV2Item::clone(), QgsRuleBasedRendererV2::clone(), QgsGraduatedSymbolRendererV2::createRenderer(), QgsRuleBasedRendererV2::Rule::operator=(), QgsRendererCategoryV2::QgsRendererCategoryV2(), QgsRendererRangeV2::QgsRendererRangeV2(), QgsRuleBasedRendererV2::QgsRuleBasedRendererV2(), QgsRuleBasedRendererV2::refineRuleCategories(), QgsRuleBasedRendererV2::refineRuleRanges(), QgsRuleBasedRendererV2::refineRuleScales(), QgsSingleSymbolRendererV2::startRender(), QgsGraduatedSymbolRendererV2::startRender(), and QgsCategorizedSymbolRendererV2::startRender().
QgsSymbolLayerV2List QgsSymbolV2::cloneLayers | ( | ) | const [protected] |
Definition at line 255 of file qgssymbolv2.cpp.
References QgsSymbolLayerV2::clone(), mLayers, QgsSymbolLayerV2::setLocked(), and QgsSymbolLayerV2::setRenderingPass().
Referenced by QgsMarkerSymbolV2::clone(), QgsLineSymbolV2::clone(), and QgsFillSymbolV2::clone().
QColor QgsSymbolV2::color | ( | void | ) |
Definition at line 160 of file qgssymbolv2.cpp.
References mLayers.
Referenced by dump(), QgsMarkerLineSymbolLayerV2::setSubSymbol(), and QgsCentroidFillSymbolLayerV2::setSubSymbol().
QgsSymbolV2 * QgsSymbolV2::defaultSymbol | ( | QGis::GeometryType | geomType | ) | [static] |
return new default symbol for specified geometry type
Definition at line 47 of file qgssymbolv2.cpp.
References QGis::Line, QGis::Point, QGis::Polygon, QgsDebugMsg, and setColor().
Referenced by QgsFeatureRendererV2::defaultRenderer(), and QgsVectorLayer::drawRendererV2Levels().
bool QgsSymbolV2::deleteSymbolLayer | ( | int | index | ) |
delete symbol layer at specified index
Definition at line 104 of file qgssymbolv2.cpp.
References mLayers.
void QgsSymbolV2::drawPreviewIcon | ( | QPainter * | painter, |
QSize | size | ||
) |
Definition at line 171 of file qgssymbolv2.cpp.
References QgsSymbolLayerV2Utils::createRenderContext(), Fill, Line, mAlpha, mLayers, mOutputUnit, mRenderHints, mType, QgsLineSymbolLayerV2::renderPolygonOutline(), QgsSymbolLayerV2::startRender(), and QgsSymbolLayerV2::stopRender().
Referenced by QgsComposerLegend::drawSymbolV2(), and QgsSymbolLayerV2Utils::symbolPreviewPixmap().
QString QgsSymbolV2::dump | ( | ) |
Definition at line 236 of file qgssymbolv2.cpp.
References color(), QgsSymbolLayerV2Utils::encodeColor(), Fill, Line, Marker, mLayers, and type().
Referenced by QgsRendererRangeV2::dump(), QgsRendererCategoryV2::dump(), and QgsSingleSymbolRendererV2::dump().
bool QgsSymbolV2::insertSymbolLayer | ( | int | index, |
QgsSymbolLayerV2 * | layer | ||
) |
insert symbol layer to specified index
Definition at line 82 of file qgssymbolv2.cpp.
References isSymbolLayerCompatible(), mLayers, and QgsSymbolLayerV2::type().
bool QgsSymbolV2::isSymbolLayerCompatible | ( | SymbolType | t | ) | [protected] |
check whether a symbol layer type can be used within the symbol (marker-marker, line-line, fill-fill/line)
Definition at line 72 of file qgssymbolv2.cpp.
References Fill, Line, and mType.
Referenced by appendSymbolLayer(), changeSymbolLayer(), insertSymbolLayer(), and QgsSymbolV2().
OutputUnit QgsSymbolV2::outputUnit | ( | ) | const [inline] |
Definition at line 90 of file qgssymbolv2.h.
Referenced by QgsComposerLegend::drawSymbolV2(), and QgsSymbolLayerV2Utils::saveSymbol().
int QgsSymbolV2::renderHints | ( | ) | [inline] |
Definition at line 99 of file qgssymbolv2.h.
void QgsSymbolV2::setAlpha | ( | qreal | alpha | ) | [inline] |
Definition at line 94 of file qgssymbolv2.h.
Referenced by QgsMarkerSymbolV2::clone(), QgsLineSymbolV2::clone(), QgsFillSymbolV2::clone(), QgsSymbolLayerV2Utils::loadSymbol(), QgsMarkerLineSymbolLayerV2::startRender(), and QgsCentroidFillSymbolLayerV2::startRender().
void QgsSymbolV2::setColor | ( | const QColor & | color | ) |
Definition at line 151 of file qgssymbolv2.cpp.
References mLayers.
Referenced by QgsGraduatedSymbolRendererV2::createRenderer(), defaultSymbol(), QgsVectorLayer::drawRendererV2Levels(), QgsMarkerLineSymbolLayerV2::setColor(), and QgsCentroidFillSymbolLayerV2::setColor().
void QgsSymbolV2::setOutputUnit | ( | OutputUnit | u | ) | [inline] |
Definition at line 91 of file qgssymbolv2.h.
Referenced by QgsMarkerSymbolV2::clone(), QgsLineSymbolV2::clone(), QgsFillSymbolV2::clone(), QgsComposerLegend::drawSymbolV2(), QgsSymbolLayerV2Utils::loadSymbol(), QgsMarkerLineSymbolLayerV2::startRender(), and QgsCentroidFillSymbolLayerV2::startRender().
void QgsSymbolV2::setRenderHints | ( | int | hints | ) | [inline] |
Definition at line 97 of file qgssymbolv2.h.
Referenced by QgsSingleSymbolRendererV2::startRender(), QgsGraduatedSymbolRendererV2::startRender(), QgsCategorizedSymbolRendererV2::startRender(), and QgsMarkerLineSymbolLayerV2::startRender().
void QgsSymbolV2::startRender | ( | QgsRenderContext & | context | ) |
Definition at line 137 of file qgssymbolv2.cpp.
References mAlpha, mLayers, mOutputUnit, and mRenderHints.
Referenced by bigSymbolPreviewImage(), QgsAnnotationItem::drawMarkerSymbol(), QgsSingleSymbolRendererV2::startRender(), QgsGraduatedSymbolRendererV2::startRender(), QgsCategorizedSymbolRendererV2::startRender(), QgsSVGFillSymbolLayer::startRender(), QgsRuleBasedRendererV2::startRender(), QgsMarkerLineSymbolLayerV2::startRender(), and QgsCentroidFillSymbolLayerV2::startRender().
void QgsSymbolV2::stopRender | ( | QgsRenderContext & | context | ) |
Definition at line 144 of file qgssymbolv2.cpp.
References mAlpha, mLayers, mOutputUnit, and mRenderHints.
Referenced by bigSymbolPreviewImage(), QgsAnnotationItem::drawMarkerSymbol(), QgsSingleSymbolRendererV2::stopRender(), QgsSVGFillSymbolLayer::stopRender(), QgsRuleBasedRendererV2::stopRender(), QgsMarkerLineSymbolLayerV2::stopRender(), and QgsCentroidFillSymbolLayerV2::stopRender().
QgsSymbolLayerV2 * QgsSymbolV2::symbolLayer | ( | int | layer | ) |
Definition at line 63 of file qgssymbolv2.cpp.
References mLayers.
Referenced by QgsVectorLayer::drawRendererV2Levels(), QgsSymbolLayerV2Utils::loadSymbols(), QgsSymbolLayerV2Utils::saveSymbol(), and QgsSymbologyV2Conversion::symbolV2toV1().
int QgsSymbolV2::symbolLayerCount | ( | ) | [inline] |
Definition at line 58 of file qgssymbolv2.h.
Referenced by QgsVectorLayer::drawRendererV2Levels(), QgsSymbolLayerV2Utils::loadSymbols(), QgsSymbolLayerV2Utils::saveSymbol(), and QgsSymbologyV2Conversion::symbolV2toV1().
QgsSymbolLayerV2 * QgsSymbolV2::takeSymbolLayer | ( | int | index | ) |
remove symbol layer from the list and return pointer to it
Definition at line 115 of file qgssymbolv2.cpp.
References mLayers.
SymbolType QgsSymbolV2::type | ( | ) | const [inline] |
Definition at line 52 of file qgssymbolv2.h.
Referenced by dump(), QgsSymbolV2(), QgsFeatureRendererV2::renderFeature(), QgsSymbolLayerV2Utils::saveSymbol(), QgsSVGFillSymbolLayer::setSubSymbol(), QgsMarkerLineSymbolLayerV2::setSubSymbol(), QgsCentroidFillSymbolLayerV2::setSubSymbol(), QgsSingleSymbolRendererV2::startRender(), QgsSingleSymbolRendererV2::symbolForFeature(), QgsGraduatedSymbolRendererV2::symbolForFeature(), and QgsCategorizedSymbolRendererV2::symbolForFeature().
qreal QgsSymbolV2::mAlpha [protected] |
Symbol opacity (in the range 0 - 1)
Definition at line 117 of file qgssymbolv2.h.
Referenced by QgsMarkerSymbolV2::clone(), QgsLineSymbolV2::clone(), QgsFillSymbolV2::clone(), drawPreviewIcon(), QgsMarkerSymbolV2::renderPoint(), QgsFillSymbolV2::renderPolygon(), QgsLineSymbolV2::renderPolyline(), startRender(), and stopRender().
QgsSymbolLayerV2List QgsSymbolV2::mLayers [protected] |
Definition at line 112 of file qgssymbolv2.h.
Referenced by QgsMarkerSymbolV2::angle(), appendSymbolLayer(), changeSymbolLayer(), cloneLayers(), color(), deleteSymbolLayer(), drawPreviewIcon(), dump(), insertSymbolLayer(), QgsFillSymbolV2::QgsFillSymbolV2(), QgsLineSymbolV2::QgsLineSymbolV2(), QgsMarkerSymbolV2::QgsMarkerSymbolV2(), QgsSymbolV2(), QgsMarkerSymbolV2::renderPoint(), QgsFillSymbolV2::renderPolygon(), QgsLineSymbolV2::renderPolyline(), QgsMarkerSymbolV2::setAngle(), QgsFillSymbolV2::setAngle(), setColor(), QgsMarkerSymbolV2::setSize(), QgsLineSymbolV2::setWidth(), QgsMarkerSymbolV2::size(), startRender(), stopRender(), symbolLayer(), takeSymbolLayer(), QgsLineSymbolV2::width(), and ~QgsSymbolV2().
OutputUnit QgsSymbolV2::mOutputUnit [protected] |
Definition at line 114 of file qgssymbolv2.h.
Referenced by QgsMarkerSymbolV2::clone(), QgsLineSymbolV2::clone(), QgsFillSymbolV2::clone(), drawPreviewIcon(), QgsMarkerSymbolV2::renderPoint(), QgsFillSymbolV2::renderPolygon(), QgsLineSymbolV2::renderPolyline(), startRender(), and stopRender().
int QgsSymbolV2::mRenderHints [protected] |
Definition at line 119 of file qgssymbolv2.h.
Referenced by drawPreviewIcon(), QgsMarkerSymbolV2::renderPoint(), QgsFillSymbolV2::renderPolygon(), QgsLineSymbolV2::renderPolyline(), startRender(), and stopRender().
SymbolType QgsSymbolV2::mType [protected] |
Definition at line 111 of file qgssymbolv2.h.
Referenced by bigSymbolPreviewImage(), drawPreviewIcon(), and isSymbolLayerCompatible().