16#ifndef QGS3DSYMBOLREGISTRY_H
17#define QGS3DSYMBOLREGISTRY_H
30class QgsFeature3DHandler;
58 QString
type()
const {
return mType; }
132 , mCreateFunc( pfCreate )
133 , mWidgetFunc( pfWidget )
134 , mFeatureHandlerFunc( pfHandler )
237 QMap<QString, Qgs3DSymbolAbstractMetadata *> mMetadata;
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
Qgs3DSymbolRegistry & operator=(const Qgs3DSymbolRegistry &rh)=delete
QStringList symbolTypes() const
Returns a list of all available symbol types.
QgsAbstract3DSymbol * defaultSymbolForGeometryType(Qgis::GeometryType type)
Creates a new instance of the default 3D symbol for the specified geometry type.
QgsAbstract3DSymbol * createSymbol(const QString &type) const
Creates a new instance of a symbol of the specified type.
Qgs3DSymbolRegistry(const Qgs3DSymbolRegistry &rh)=delete
Qgs3DSymbolAbstractMetadata * symbolMetadata(const QString &type) const
Returns metadata for specified symbol type. Returns nullptr if not found.
QgsFeature3DHandler * createHandlerForSymbol(QgsVectorLayer *layer, const QgsAbstract3DSymbol *symbol)
Creates a feature handler for a symbol, for the specified vector layer.
bool addSymbolType(Qgs3DSymbolAbstractMetadata *metadata)
Registers a new symbol type. Takes ownership of the metadata instance.
Abstract base class for 3D symbols that are used by VectorLayer3DRenderer objects.
A container for the context for various read/write operations on objects.
Represents a vector layer which manages a vector based dataset.
Qgs3DSymbolWidget *(* Qgs3DSymbolWidgetFunc)(QgsVectorLayer *)
3D symbol widget creation function
QgsFeature3DHandler *(* Qgs3DSymbolFeatureHandlerFunc)(QgsVectorLayer *, const QgsAbstract3DSymbol *)
3D symbol widget creation function
QgsAbstract3DSymbol *(* Qgs3DSymbolCreateFunc)()
3D symbol creation function