QGIS API Documentation  2.5.0-Master
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
QgsSymbolV2 Class Referenceabstract

#include <qgssymbolv2.h>

Inheritance diagram for QgsSymbolV2:
Inheritance graph
[legend]

Public Types

enum  OutputUnit { MM = 0, MapUnit, Mixed }
 
enum  SymbolType { Marker, Line, Fill }
 
enum  ScaleMethod { ScaleArea, ScaleDiameter }
 
enum  RenderHint { DataDefinedSizeScale = 1, DataDefinedRotation = 2 }
 

Public Member Functions

virtual ~QgsSymbolV2 ()
 
SymbolType type () const
 
QgsSymbolLayerV2symbolLayer (int layer)
 
int symbolLayerCount ()
 
bool insertSymbolLayer (int index, QgsSymbolLayerV2 *layer)
 insert symbol layer to specified index More...
 
bool appendSymbolLayer (QgsSymbolLayerV2 *layer)
 append symbol layer at the end of the list More...
 
bool deleteSymbolLayer (int index)
 delete symbol layer at specified index More...
 
QgsSymbolLayerV2takeSymbolLayer (int index)
 remove symbol layer from the list and return pointer to it More...
 
bool changeSymbolLayer (int index, QgsSymbolLayerV2 *layer)
 delete layer at specified index and set a new one More...
 
void startRender (QgsRenderContext &context, const QgsFields *fields=0)
 
void stopRender (QgsRenderContext &context)
 
void setColor (const QColor &color)
 
QColor color () const
 
void drawPreviewIcon (QPainter *painter, QSize size, QgsRenderContext *customContext=0)
 Draw icon of the symbol that occupyies area given by size using the painter. More...
 
QImage bigSymbolPreviewImage ()
 
QString dump () const
 
virtual QgsSymbolV2clone () const =0
 
void toSld (QDomDocument &doc, QDomElement &element, QgsStringMap props) const
 
QgsSymbolV2::OutputUnit outputUnit () const
 
void setOutputUnit (QgsSymbolV2::OutputUnit u)
 
QgsMapUnitScale mapUnitScale () const
 
void setMapUnitScale (const QgsMapUnitScale &scale)
 
qreal alpha () const
 Get alpha transparency 1 for opaque, 0 for invisible. More...
 
void setAlpha (qreal alpha)
 Set alpha transparency 1 for opaque, 0 for invisible. More...
 
void setRenderHints (int hints)
 
int renderHints () const
 
QSet< QString > usedAttributes () const
 
void setLayer (const QgsVectorLayer *layer)
 
const QgsVectorLayerlayer () const
 

Static Public Member Functions

static QgsSymbolV2defaultSymbol (QGis::GeometryType geomType)
 return new default symbol for specified geometry type More...
 

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) More...
 

Protected Attributes

SymbolType mType
 
QgsSymbolLayerV2List mLayers
 
qreal mAlpha
 Symbol opacity (in the range 0 - 1) More...
 
int mRenderHints
 
const QgsVectorLayermLayer
 

Member Enumeration Documentation

Enumerator
MM 
MapUnit 
Mixed 
Note
added in 1.5
Enumerator
DataDefinedSizeScale 
DataDefinedRotation 
Enumerator
ScaleArea 
ScaleDiameter 
Enumerator
Marker 
Line 
Fill 

Constructor & Destructor Documentation

QgsSymbolV2::~QgsSymbolV2 ( )
virtual
QgsSymbolV2::QgsSymbolV2 ( SymbolType  type,
QgsSymbolLayerV2List  layers 
)
protected

Member Function Documentation

qreal QgsSymbolV2::alpha ( ) const
inline

Get alpha transparency 1 for opaque, 0 for invisible.

bool QgsSymbolV2::appendSymbolLayer ( QgsSymbolLayerV2 layer)

append symbol layer at the end of the list

QImage QgsSymbolV2::bigSymbolPreviewImage ( )
bool QgsSymbolV2::changeSymbolLayer ( int  index,
QgsSymbolLayerV2 layer 
)

delete layer at specified index and set a new one

virtual QgsSymbolV2* QgsSymbolV2::clone ( ) const
pure virtual
QgsSymbolLayerV2List QgsSymbolV2::cloneLayers ( ) const
protected
QColor QgsSymbolV2::color ( void  ) const
QgsSymbolV2 * QgsSymbolV2::defaultSymbol ( QGis::GeometryType  geomType)
static

return new default symbol for specified geometry type

bool QgsSymbolV2::deleteSymbolLayer ( int  index)

delete symbol layer at specified index

void QgsSymbolV2::drawPreviewIcon ( QPainter *  painter,
QSize  size,
QgsRenderContext customContext = 0 
)

Draw icon of the symbol that occupyies area given by size using the painter.

Optionally custom context may be given in order to get rendering of symbols that use map units right.

Note
customContext parameter added in 2.6
QString QgsSymbolV2::dump ( ) const
bool QgsSymbolV2::insertSymbolLayer ( int  index,
QgsSymbolLayerV2 layer 
)

insert symbol layer to specified index

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)

Note
added in 1.7
const QgsVectorLayer* QgsSymbolV2::layer ( ) const
inline
QgsMapUnitScale QgsSymbolV2::mapUnitScale ( ) const
QgsSymbolV2::OutputUnit QgsSymbolV2::outputUnit ( ) const
int QgsSymbolV2::renderHints ( ) const
inline
Note
added in 1.5
void QgsSymbolV2::setAlpha ( qreal  alpha)
inline

Set alpha transparency 1 for opaque, 0 for invisible.

void QgsSymbolV2::setColor ( const QColor &  color)
void QgsSymbolV2::setLayer ( const QgsVectorLayer layer)
inline
void QgsSymbolV2::setMapUnitScale ( const QgsMapUnitScale scale)
void QgsSymbolV2::setOutputUnit ( QgsSymbolV2::OutputUnit  u)
void QgsSymbolV2::setRenderHints ( int  hints)
inline
Note
added in 1.5
void QgsSymbolV2::startRender ( QgsRenderContext context,
const QgsFields fields = 0 
)
void QgsSymbolV2::stopRender ( QgsRenderContext context)
QgsSymbolLayerV2 * QgsSymbolV2::symbolLayer ( int  layer)
int QgsSymbolV2::symbolLayerCount ( )
inline
QgsSymbolLayerV2 * QgsSymbolV2::takeSymbolLayer ( int  index)

remove symbol layer from the list and return pointer to it

void QgsSymbolV2::toSld ( QDomDocument &  doc,
QDomElement &  element,
QgsStringMap  props 
) const
SymbolType QgsSymbolV2::type ( ) const
inline
QSet< QString > QgsSymbolV2::usedAttributes ( ) const

Member Data Documentation

qreal QgsSymbolV2::mAlpha
protected

Symbol opacity (in the range 0 - 1)

const QgsVectorLayer* QgsSymbolV2::mLayer
protected
QgsSymbolLayerV2List QgsSymbolV2::mLayers
protected
int QgsSymbolV2::mRenderHints
protected
SymbolType QgsSymbolV2::mType
protected

The documentation for this class was generated from the following files: