| QGIS API Documentation
    3.16.0-Hannover (43b64b13f3)
    | 
 
 
 
Go to the documentation of this file.
   24 #include "qgsmesh3dentity_p.h" 
   49   r->mLayerRef = mLayerRef;
 
   60   return qobject_cast<QgsMeshLayer *>( mLayerRef.
layer );
 
   81        !mSymbol->isEnabled() )
 
   87   Qt3DCore::QEntity *entity = 
nullptr;
 
   93   QgsMeshDataset3dEntity *meshEntity = 
new QgsMeshDataset3dEntity( map, triangularMesh, meshLayer, mSymbol.get() );
 
  102   QDomDocument doc = elem.ownerDocument();
 
  104   elem.setAttribute( QStringLiteral( 
"layer" ), mLayerRef.
layerId );
 
  106   QDomElement elemSymbol = doc.createElement( QStringLiteral( 
"symbol" ) );
 
  109     elemSymbol.setAttribute( QStringLiteral( 
"type" ), mSymbol->type() );
 
  110     mSymbol->writeXml( elemSymbol, context );
 
  112   elem.appendChild( elemSymbol );
 
  117   mLayerRef = 
QgsMapLayerRef( elem.attribute( QStringLiteral( 
"layer" ) ) );
 
  119   QDomElement elemSymbol = elem.firstChildElement( QStringLiteral( 
"symbol" ) );
 
  
QgsCoordinateReferenceSystem crs
QgsCoordinateReferenceSystem crs() const
Returns coordinate reference system used in the 3D scene.
void readXml(const QDomElement &elem, const QgsReadWriteContext &context) override
Reads symbol configuration from the given DOM element.
The class is used as a container of context for various read/write operations on other objects.
Base class for all renderers that may to participate in 3D view.
const QgsMesh3DSymbol * symbol() const
Returns 3D symbol associated with the renderer.
3 3D symbol that draws mesh geometry as planar triangles.
_LayerRef< QgsMapLayer > QgsMapLayerRef
bool contains(const QgsMesh::ElementType &type) const
Returns whether the mesh contains at mesh elements of given type.
Q_INVOKABLE QgsMapLayer * mapLayer(const QString &layerId) const
Retrieve a pointer to a registered layer by layer ID.
QPointer< TYPE > layer
Weak pointer to map layer.
QgsCoordinateTransformContext transformContext() const
Returns the coordinate transform context, which stores various information regarding which datum tran...
QgsTriangularMesh * triangularMesh(double minimumTriangleSize=0) const
Returns triangular mesh (nullptr before rendering or calling to updateMesh).
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
void writeXml(QDomElement &elem, const QgsReadWriteContext &context) const override
Writes renderer's properties to given XML element.
void updateTriangularMesh(const QgsCoordinateTransform &transform=QgsCoordinateTransform())
Gets native mesh and updates (creates if it doesn't exist) the base triangular mesh.
QString layerId
Original layer ID.
QgsMeshDataProvider * dataProvider() override
Returns the layer's data provider, it may be nullptr.
void setLayer(TYPE *l)
Sets the reference to point to a specified layer.
Represents a mesh layer supporting display of data on structured or unstructured meshes.
3D renderer that renders all mesh triangles of a mesh layer.
3 Definition of the world
QgsMeshLayer * layer() const
Returns mesh layer associated with the renderer.
void setLayer(QgsMeshLayer *layer)
Sets vector layer associated with the renderer.
void readXml(const QDomElement &elem, const QgsReadWriteContext &context) override
Reads renderer's properties from given XML element.
void setSymbol(QgsMesh3DSymbol *symbol)
Sets 3D symbol associated with the renderer.
Triangular/Derived Mesh is mesh with vertices in map coordinates.
QgsMeshLayer3DRenderer * clone() const override
Returns a cloned instance.
QgsMeshLayer3DRenderer(QgsMesh3DSymbol *s=nullptr)
Takes ownership of the symbol object.
void resolveReferences(const QgsProject &project) override
Resolves references to other objects - second phase of loading - after readXml()
Qt3DCore::QEntity * createEntity(const Qgs3DMapSettings &map) const override
Returns a 3D entity that will be used to show renderer's data in 3D scene.