Quantum GIS API Documentation
1.8
|
A class for svg fill patterns. More...
#include <qgsfillsymbollayerv2.h>
Public Member Functions | |
QgsSVGFillSymbolLayer (const QString &svgFilePath="", double width=20, double rotation=0.0) | |
QgsSVGFillSymbolLayer (const QByteArray &svgData, double width=20, double rotation=0.0) | |
~QgsSVGFillSymbolLayer () | |
QString | layerType () const |
void | startRender (QgsSymbolV2RenderContext &context) |
void | stopRender (QgsSymbolV2RenderContext &context) |
QgsStringMap | properties () const |
QgsSymbolLayerV2 * | clone () const |
void | toSld (QDomDocument &doc, QDomElement &element, QgsStringMap props) const |
void | setSvgFilePath (const QString &svgPath) |
QString | svgFilePath () const |
void | setPatternWidth (double width) |
double | patternWidth () const |
void | setSvgFillColor (const QColor &c) |
QColor | svgFillColor () const |
void | setSvgOutlineColor (const QColor &c) |
QColor | svgOutlineColor () const |
void | setSvgOutlineWidth (double w) |
double | svgOutlineWidth () const |
Static Public Member Functions | |
static QgsSymbolLayerV2 * | create (const QgsStringMap &properties=QgsStringMap()) |
static QgsSymbolLayerV2 * | createFromSld (QDomElement &element) |
Protected Attributes | |
double | mPatternWidth |
Width of the pattern (in QgsSymbolV2 output units) | |
QByteArray | mSvgData |
SVG data. | |
QString | mSvgFilePath |
Path to the svg file (or empty if constructed directly from data) | |
QRectF | mSvgViewBox |
SVG view box (to keep the aspect ratio. | |
QColor | mSvgFillColor |
QColor | mSvgOutlineColor |
double | mSvgOutlineWidth |
Private Member Functions | |
void | storeViewBox () |
Helper function that gets the view box from the byte array. | |
void | setDefaultSvgParams () |
A class for svg fill patterns.
The class automatically scales the pattern to the appropriate pixel dimensions of the output device
Definition at line 109 of file qgsfillsymbollayerv2.h.
QgsSVGFillSymbolLayer::QgsSVGFillSymbolLayer | ( | const QString & | svgFilePath = "" , |
double | width = 20 , |
||
double | rotation = 0.0 |
||
) |
Definition at line 278 of file qgsfillsymbollayerv2.cpp.
References QgsFillSymbolLayerV2::angle(), QgsFillSymbolLayerV2::mAngle, QgsImageFillSymbolLayer::mOutlineWidth, setDefaultSvgParams(), and setSvgFilePath().
Referenced by clone(), create(), and createFromSld().
QgsSVGFillSymbolLayer::QgsSVGFillSymbolLayer | ( | const QByteArray & | svgData, |
double | width = 20 , |
||
double | rotation = 0.0 |
||
) |
Definition at line 286 of file qgsfillsymbollayerv2.cpp.
References QgsFillSymbolLayerV2::angle(), QgsFillSymbolLayerV2::mAngle, QgsImageFillSymbolLayer::mOutlineWidth, setDefaultSvgParams(), QgsImageFillSymbolLayer::setSubSymbol(), and storeViewBox().
Definition at line 296 of file qgsfillsymbollayerv2.cpp.
References QgsImageFillSymbolLayer::mOutline.
QgsSymbolLayerV2 * QgsSVGFillSymbolLayer::clone | ( | ) | const [virtual] |
Implements QgsSymbolLayerV2.
Definition at line 434 of file qgsfillsymbollayerv2.cpp.
References QgsLineSymbolV2::clone(), QgsFillSymbolLayerV2::mAngle, QgsImageFillSymbolLayer::mOutline, mPatternWidth, mSvgData, mSvgFilePath, mSvgFillColor, mSvgOutlineColor, mSvgOutlineWidth, QgsSVGFillSymbolLayer(), QgsSymbolLayerV2::setSubSymbol(), setSvgFillColor(), setSvgOutlineColor(), and setSvgOutlineWidth().
QgsSymbolLayerV2 * QgsSVGFillSymbolLayer::create | ( | const QgsStringMap & | properties = QgsStringMap() | ) | [static] |
Definition at line 314 of file qgsfillsymbollayerv2.cpp.
References QgsFillSymbolLayerV2::angle(), QgsSVGFillSymbolLayer(), setSvgFillColor(), setSvgOutlineColor(), setSvgOutlineWidth(), svgFilePath(), and QgsSvgMarkerSymbolLayerV2::symbolNameToPath().
Referenced by QgsSymbolLayerV2Registry::QgsSymbolLayerV2Registry().
QgsSymbolLayerV2 * QgsSVGFillSymbolLayer::createFromSld | ( | QDomElement & | element | ) | [static] |
Definition at line 514 of file qgsfillsymbollayerv2.cpp.
References QgsFillSymbolLayerV2::angle(), QgsSymbolLayerV2Utils::createLineLayerFromSld(), QgsSymbolLayerV2Utils::externalGraphicFromSld(), QgsSymbolLayerV2Utils::lineFromSld(), QgsDebugMsg, QgsSVGFillSymbolLayer(), QgsSymbolLayerV2Utils::rotationFromSldElement(), QgsImageFillSymbolLayer::setSubSymbol(), setSvgFillColor(), setSvgOutlineColor(), setSvgOutlineWidth(), and size.
Referenced by QgsSymbolLayerV2Registry::QgsSymbolLayerV2Registry().
QString QgsSVGFillSymbolLayer::layerType | ( | ) | const [virtual] |
Implements QgsSymbolLayerV2.
Definition at line 368 of file qgsfillsymbollayerv2.cpp.
double QgsSVGFillSymbolLayer::patternWidth | ( | ) | const [inline] |
Definition at line 136 of file qgsfillsymbollayerv2.h.
QgsStringMap QgsSVGFillSymbolLayer::properties | ( | ) | const [virtual] |
Implements QgsSymbolLayerV2.
Definition at line 411 of file qgsfillsymbollayerv2.cpp.
References QgsFillSymbolLayerV2::mAngle, mPatternWidth, mSvgData, mSvgFilePath, mSvgFillColor, mSvgOutlineColor, mSvgOutlineWidth, and QgsSvgMarkerSymbolLayerV2::symbolPathToName().
void QgsSVGFillSymbolLayer::setDefaultSvgParams | ( | ) | [private] |
Definition at line 590 of file qgsfillsymbollayerv2.cpp.
References QgsSvgCache::containsParams(), QgsSvgCache::instance(), mSvgFilePath, mSvgFillColor, mSvgOutlineColor, and mSvgOutlineWidth.
Referenced by QgsSVGFillSymbolLayer(), and setSvgFilePath().
void QgsSVGFillSymbolLayer::setPatternWidth | ( | double | width | ) | [inline] |
Definition at line 135 of file qgsfillsymbollayerv2.h.
void QgsSVGFillSymbolLayer::setSvgFilePath | ( | const QString & | svgPath | ) |
Definition at line 301 of file qgsfillsymbollayerv2.cpp.
References mSvgData, mSvgFilePath, setDefaultSvgParams(), and storeViewBox().
Referenced by QgsSVGFillSymbolLayer().
void QgsSVGFillSymbolLayer::setSvgFillColor | ( | const QColor & | c | ) | [inline] |
Definition at line 138 of file qgsfillsymbollayerv2.h.
Referenced by clone(), create(), and createFromSld().
void QgsSVGFillSymbolLayer::setSvgOutlineColor | ( | const QColor & | c | ) | [inline] |
Definition at line 140 of file qgsfillsymbollayerv2.h.
Referenced by clone(), create(), and createFromSld().
void QgsSVGFillSymbolLayer::setSvgOutlineWidth | ( | double | w | ) | [inline] |
Definition at line 142 of file qgsfillsymbollayerv2.h.
Referenced by clone(), create(), and createFromSld().
void QgsSVGFillSymbolLayer::startRender | ( | QgsSymbolV2RenderContext & | context | ) | [virtual] |
Implements QgsSymbolLayerV2.
Definition at line 373 of file qgsfillsymbollayerv2.cpp.
References QgsSymbolV2RenderContext::alpha(), doubleNear(), QgsSvgCache::instance(), QgsImageFillSymbolLayer::mBrush, QgsImageFillSymbolLayer::mOutline, mPatternWidth, mSvgFilePath, mSvgFillColor, mSvgOutlineColor, mSvgOutlineWidth, mSvgViewBox, QgsSymbolLayerV2Utils::multiplyImageOpacity(), QgsSymbolV2RenderContext::outputPixelSize(), QgsRenderContext::rasterScaleFactor(), QgsSymbolV2RenderContext::renderContext(), QgsRenderContext::scaleFactor(), size, QgsSymbolV2::startRender(), and QgsSvgCache::svgAsImage().
void QgsSVGFillSymbolLayer::stopRender | ( | QgsSymbolV2RenderContext & | context | ) | [virtual] |
Implements QgsSymbolLayerV2.
Definition at line 403 of file qgsfillsymbollayerv2.cpp.
References QgsImageFillSymbolLayer::mOutline, QgsSymbolV2RenderContext::renderContext(), and QgsSymbolV2::stopRender().
void QgsSVGFillSymbolLayer::storeViewBox | ( | ) | [private] |
Helper function that gets the view box from the byte array.
Definition at line 574 of file qgsfillsymbollayerv2.cpp.
References mSvgData, and mSvgViewBox.
Referenced by QgsSVGFillSymbolLayer(), and setSvgFilePath().
QString QgsSVGFillSymbolLayer::svgFilePath | ( | ) | const [inline] |
Definition at line 134 of file qgsfillsymbollayerv2.h.
Referenced by create().
QColor QgsSVGFillSymbolLayer::svgFillColor | ( | ) | const [inline] |
Definition at line 139 of file qgsfillsymbollayerv2.h.
QColor QgsSVGFillSymbolLayer::svgOutlineColor | ( | ) | const [inline] |
Definition at line 141 of file qgsfillsymbollayerv2.h.
double QgsSVGFillSymbolLayer::svgOutlineWidth | ( | ) | const [inline] |
Definition at line 143 of file qgsfillsymbollayerv2.h.
void QgsSVGFillSymbolLayer::toSld | ( | QDomDocument & | doc, |
QDomElement & | element, | ||
QgsStringMap | props | ||
) | const [virtual] |
Reimplemented from QgsSymbolLayerV2.
Definition at line 457 of file qgsfillsymbollayerv2.cpp.
References QgsFillSymbolLayerV2::angle(), QgsSymbolLayerV2Utils::createGeometryElement(), QgsSymbolLayerV2Utils::createRotationElement(), QgsSymbolLayerV2Utils::externalGraphicToSld(), QgsSymbolLayerV2Utils::lineToSld(), QgsFillSymbolLayerV2::mAngle, QgsImageFillSymbolLayer::mOutline, mPatternWidth, mSvgFilePath, mSvgFillColor, mSvgOutlineColor, mSvgOutlineWidth, and QgsSymbolV2::toSld().
double QgsSVGFillSymbolLayer::mPatternWidth [protected] |
Width of the pattern (in QgsSymbolV2 output units)
Definition at line 147 of file qgsfillsymbollayerv2.h.
Referenced by clone(), properties(), startRender(), and toSld().
QByteArray QgsSVGFillSymbolLayer::mSvgData [protected] |
SVG data.
Definition at line 149 of file qgsfillsymbollayerv2.h.
Referenced by clone(), properties(), setSvgFilePath(), and storeViewBox().
QString QgsSVGFillSymbolLayer::mSvgFilePath [protected] |
Path to the svg file (or empty if constructed directly from data)
Definition at line 151 of file qgsfillsymbollayerv2.h.
Referenced by clone(), properties(), setDefaultSvgParams(), setSvgFilePath(), startRender(), and toSld().
QColor QgsSVGFillSymbolLayer::mSvgFillColor [protected] |
Definition at line 157 of file qgsfillsymbollayerv2.h.
Referenced by clone(), properties(), setDefaultSvgParams(), startRender(), and toSld().
QColor QgsSVGFillSymbolLayer::mSvgOutlineColor [protected] |
Definition at line 158 of file qgsfillsymbollayerv2.h.
Referenced by clone(), properties(), setDefaultSvgParams(), startRender(), and toSld().
double QgsSVGFillSymbolLayer::mSvgOutlineWidth [protected] |
Definition at line 159 of file qgsfillsymbollayerv2.h.
Referenced by clone(), properties(), setDefaultSvgParams(), startRender(), and toSld().
QRectF QgsSVGFillSymbolLayer::mSvgViewBox [protected] |
SVG view box (to keep the aspect ratio.
Definition at line 153 of file qgsfillsymbollayerv2.h.
Referenced by startRender(), and storeViewBox().