QGIS API Documentation 3.30.0-'s-Hertogenbosch (f186b8efe0)
qgsmesh3dsymbol_p.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsmesh3dsymbol_p.h
3 -------------------
4 Date : January 2019
5 Copyright : (C) 2019 by Peter Petrik
6 Email : zilolv at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16#ifndef QGSMESH3DSYMBOL_P_H
17#define QGSMESH3DSYMBOL_P_H
18
20
21//
22// W A R N I N G
23// -------------
24//
25// This file is not part of the QGIS API. It exists purely as an
26// implementation detail. This header file may change from version to
27// version without notice, or even be removed.
28//
29
30#include <Qt3DCore/QEntity>
31#include <Qt3DExtras/QPhongMaterial>
32#include <Qt3DRender/QGeometryRenderer>
33
34#define SIP_NO_FILE
35
38class QgsMesh3DSymbol;
39
40class QgsPointXY;
41class QgsMeshLayer;
42
44class QgsMesh3DSymbolEntity : public Qt3DCore::QEntity
45{
46 Q_OBJECT
47
48 public:
49 QgsMesh3DSymbolEntity( const Qgs3DMapSettings &map, QgsMeshLayer *layer, const QgsMesh3DSymbol &symbol, Qt3DCore::QNode *parent = nullptr );
50
51 private:
52 Qt3DRender::QMaterial *material( const QgsMesh3DSymbol &symbol ) const;
53};
54
55class QgsMesh3DSymbolEntityNode : public Qt3DCore::QEntity
56{
57 Q_OBJECT
58
59 public:
60 QgsMesh3DSymbolEntityNode( const Qgs3DMapSettings &map, QgsMeshLayer *layer, const QgsMesh3DSymbol &symbol, Qt3DCore::QNode *parent = nullptr );
61
62 private:
63 Qt3DRender::QGeometryRenderer *renderer( const Qgs3DMapSettings &map, const QgsMesh3DSymbol &symbol, const QgsMeshLayer *layer );
64
65 QgsTessellatedPolygonGeometry *mGeometry = nullptr;
66};
67
69
70#endif // QGSMESH3DSYMBOL_P_H
Represents a mesh layer supporting display of data on structured or unstructured meshes.
Definition: qgsmeshlayer.h:100
A class to represent a 2D point.
Definition: qgspointxy.h:59