QGIS API Documentation  3.26.3-Buenos Aires (65e4edfdad)
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
QgsPointCloud3DSymbol Class Referenceabstract

3D symbol that draws point cloud geometries as 3D objects. More...

#include <qgspointcloud3dsymbol.h>

Inheritance diagram for QgsPointCloud3DSymbol:
Inheritance graph
[legend]

Public Types

enum  RenderingStyle {
  NoRendering = 0, SingleColor, ColorRamp, RgbRendering,
  Classification
}
 How to render the point cloud. More...
 

Public Member Functions

 QgsPointCloud3DSymbol ()
 Constructor for QgsPointCloud3DSymbol. More...
 
 ~QgsPointCloud3DSymbol () override
 Destructor for QgsPointCloud3DSymbol. More...
 
virtual unsigned int byteStride ()=0
 Returns the byte stride for the geometries used to for the vertex buffer. More...
 
void copyBaseSettings (QgsAbstract3DSymbol *destination) const override
 
virtual void fillMaterial (Qt3DRender::QMaterial *material)=0SIP_SKIP
 Used to fill material object with necessary QParameters (and consequently opengl uniforms) More...
 
float horizontalFilterThreshold () const
 Returns the threshold horizontal size value for filtering triangles. More...
 
bool horizontalTriangleFilter () const
 Returns whether triangles are filtered by horizontal size for rendering. More...
 
float pointSize () const
 Returns the point size of the point cloud. More...
 
bool renderAsTriangles () const
 Returns whether points are triangulated to render solid surface. More...
 
void setHorizontalFilterThreshold (float horizontalFilterThreshold)
 Sets the threshold horizontal size value for filtering triangles. More...
 
void setHorizontalTriangleFilter (bool horizontalTriangleFilter)
 Sets whether whether triangles are filtered by horizontal size for rendering. More...
 
void setPointSize (float size)
 Sets the point size. More...
 
void setRenderAsTriangles (bool asTriangles)
 Sets whether points are triangulated to render solid surface. More...
 
void setVerticalFilterThreshold (float verticalFilterThreshold)
 Sets the threshold vertical height value for filtering triangles. More...
 
void setVerticalTriangleFilter (bool verticalTriangleFilter)
 Sets whether triangles are filtered by vertical height for rendering. More...
 
virtual QString symbolType () const =0
 Returns a unique string identifier of the symbol type. More...
 
QString type () const override
 
float verticalFilterThreshold () const
 Returns the threshold vertical height value for filtering triangles. More...
 
bool verticalTriangleFilter () const
 Returns whether triangles are filtered by vertical height for rendering. More...
 

Protected Member Functions

void readBaseXml (const QDomElement &elem, const QgsReadWriteContext &context)
 Reads symbol configuration of this class from the given DOM element. More...
 
void writeBaseXml (QDomElement &elem, const QgsReadWriteContext &context) const
 Writes symbol configuration of this class to the given DOM element. More...
 

Protected Attributes

float mHorizontalFilterThreshold = 10.0
 
bool mHorizontalTriangleFilter = false
 
float mPointSize = 3.0
 
bool mRenderAsTriangles = false
 
float mVerticalFilterThreshold = 10.0
 
bool mVerticalTriangleFilter = false
 

Detailed Description

3D symbol that draws point cloud geometries as 3D objects.

3

Warning
This is not considered stable API, and may change in future QGIS releases. It is exposed to the Python bindings as a tech preview only.
Since
QGIS 3.18

Definition at line 38 of file qgspointcloud3dsymbol.h.

Member Enumeration Documentation

◆ RenderingStyle

How to render the point cloud.

Enumerator
NoRendering 
SingleColor 

Render the point cloud with a single color.

ColorRamp 

Render the point cloud with a color ramp.

RgbRendering 

Render the RGB colors of the point cloud.

Classification 

Render the point cloud with classified colors.

Definition at line 58 of file qgspointcloud3dsymbol.h.

Constructor & Destructor Documentation

◆ QgsPointCloud3DSymbol()

QgsPointCloud3DSymbol::QgsPointCloud3DSymbol ( )

Constructor for QgsPointCloud3DSymbol.

Definition at line 28 of file qgspointcloud3dsymbol.cpp.

◆ ~QgsPointCloud3DSymbol()

QgsPointCloud3DSymbol::~QgsPointCloud3DSymbol ( )
override

Destructor for QgsPointCloud3DSymbol.

Definition at line 33 of file qgspointcloud3dsymbol.cpp.

Member Function Documentation

◆ byteStride()

virtual unsigned int QgsPointCloud3DSymbol::byteStride ( )
pure virtual

Returns the byte stride for the geometries used to for the vertex buffer.

Implemented in QgsClassificationPointCloud3DSymbol, QgsRgbPointCloud3DSymbol, QgsColorRampPointCloud3DSymbol, and QgsSingleColorPointCloud3DSymbol.

◆ copyBaseSettings()

void QgsPointCloud3DSymbol::copyBaseSettings ( QgsAbstract3DSymbol destination) const
override

Definition at line 114 of file qgspointcloud3dsymbol.cpp.

◆ fillMaterial()

virtual void QgsPointCloud3DSymbol::fillMaterial ( Qt3DRender::QMaterial *  material)
pure virtual

Used to fill material object with necessary QParameters (and consequently opengl uniforms)

Implemented in QgsClassificationPointCloud3DSymbol, QgsRgbPointCloud3DSymbol, QgsColorRampPointCloud3DSymbol, and QgsSingleColorPointCloud3DSymbol.

◆ horizontalFilterThreshold()

float QgsPointCloud3DSymbol::horizontalFilterThreshold ( ) const

Returns the threshold horizontal size value for filtering triangles.

If the triangles are horizontally filtered by size, triangles with a horizontal side size greater than a threshold value will not be rendered, see horizontalTriangleFilter().

Since
QGIS 3.26

Definition at line 60 of file qgspointcloud3dsymbol.cpp.

◆ horizontalTriangleFilter()

bool QgsPointCloud3DSymbol::horizontalTriangleFilter ( ) const

Returns whether triangles are filtered by horizontal size for rendering.

If the triangles are horizontally filtered by size, triangles with a horizontal side size greater than a threshold value will not be rendered, see horizontalFilterThreshold().

Since
QGIS 3.26

Definition at line 50 of file qgspointcloud3dsymbol.cpp.

◆ pointSize()

float QgsPointCloud3DSymbol::pointSize ( ) const
inline

Returns the point size of the point cloud.

See also
setPointSize( float size )

Definition at line 88 of file qgspointcloud3dsymbol.h.

◆ readBaseXml()

void QgsPointCloud3DSymbol::readBaseXml ( const QDomElement &  elem,
const QgsReadWriteContext context 
)
protected

Reads symbol configuration of this class from the given DOM element.

Since
QGIS 3.26

Definition at line 102 of file qgspointcloud3dsymbol.cpp.

◆ renderAsTriangles()

bool QgsPointCloud3DSymbol::renderAsTriangles ( ) const

Returns whether points are triangulated to render solid surface.

Since
QGIS 3.26

Definition at line 40 of file qgspointcloud3dsymbol.cpp.

◆ setHorizontalFilterThreshold()

void QgsPointCloud3DSymbol::setHorizontalFilterThreshold ( float  horizontalFilterThreshold)

Sets the threshold horizontal size value for filtering triangles.

If the triangles are horizontally filtered by size, triangles with a horizontal side size greater than a threshold value will not be rendered, see setHorizontalTriangleFilter().

Since
QGIS 3.26

Definition at line 65 of file qgspointcloud3dsymbol.cpp.

◆ setHorizontalTriangleFilter()

void QgsPointCloud3DSymbol::setHorizontalTriangleFilter ( bool  horizontalTriangleFilter)

Sets whether whether triangles are filtered by horizontal size for rendering.

If the triangles are horizontally filtered by size, triangles with a horizontal side size greater than a threshold value will not be rendered, see setHorizontalFilterThreshold().

Since
QGIS 3.26

Definition at line 55 of file qgspointcloud3dsymbol.cpp.

◆ setPointSize()

void QgsPointCloud3DSymbol::setPointSize ( float  size)

Sets the point size.

See also
pointSize()

Definition at line 35 of file qgspointcloud3dsymbol.cpp.

◆ setRenderAsTriangles()

void QgsPointCloud3DSymbol::setRenderAsTriangles ( bool  asTriangles)

Sets whether points are triangulated to render solid surface.

Since
QGIS 3.26

Definition at line 45 of file qgspointcloud3dsymbol.cpp.

◆ setVerticalFilterThreshold()

void QgsPointCloud3DSymbol::setVerticalFilterThreshold ( float  verticalFilterThreshold)

Sets the threshold vertical height value for filtering triangles.

If the triangles are filtered vertically, triangles with a vertical height greater than this threshold value will not be rendered, see setVerticalTriangleFilter().

Since
QGIS 3.26

Definition at line 85 of file qgspointcloud3dsymbol.cpp.

◆ setVerticalTriangleFilter()

void QgsPointCloud3DSymbol::setVerticalTriangleFilter ( bool  verticalTriangleFilter)

Sets whether triangles are filtered by vertical height for rendering.

If the triangles are vertically filtered, triangles with a vertical height greater than a threshold value will not be rendered, see setVerticalFilterThreshold().

Since
QGIS 3.26

Definition at line 75 of file qgspointcloud3dsymbol.cpp.

◆ symbolType()

virtual QString QgsPointCloud3DSymbol::symbolType ( ) const
pure virtual

Returns a unique string identifier of the symbol type.

Implemented in QgsClassificationPointCloud3DSymbol, QgsRgbPointCloud3DSymbol, QgsColorRampPointCloud3DSymbol, and QgsSingleColorPointCloud3DSymbol.

◆ type()

QString QgsPointCloud3DSymbol::type ( ) const
inlineoverride

Definition at line 77 of file qgspointcloud3dsymbol.h.

◆ verticalFilterThreshold()

float QgsPointCloud3DSymbol::verticalFilterThreshold ( ) const

Returns the threshold vertical height value for filtering triangles.

If the triangles are filtered vertically, triangles with a vertical height greater than this threshold value will not be rendered, see verticalTriangleFilter().

Since
QGIS 3.26

Definition at line 80 of file qgspointcloud3dsymbol.cpp.

◆ verticalTriangleFilter()

bool QgsPointCloud3DSymbol::verticalTriangleFilter ( ) const

Returns whether triangles are filtered by vertical height for rendering.

If the triangles are vertically filtered, triangles with a vertical height greater than a threshold value will not be rendered, see verticalFilterThreshold().

Since
QGIS 3.26

Definition at line 70 of file qgspointcloud3dsymbol.cpp.

◆ writeBaseXml()

void QgsPointCloud3DSymbol::writeBaseXml ( QDomElement &  elem,
const QgsReadWriteContext context 
) const
protected

Writes symbol configuration of this class to the given DOM element.

Since
QGIS 3.26

Definition at line 90 of file qgspointcloud3dsymbol.cpp.

Member Data Documentation

◆ mHorizontalFilterThreshold

float QgsPointCloud3DSymbol::mHorizontalFilterThreshold = 10.0
protected

Definition at line 185 of file qgspointcloud3dsymbol.h.

◆ mHorizontalTriangleFilter

bool QgsPointCloud3DSymbol::mHorizontalTriangleFilter = false
protected

Definition at line 184 of file qgspointcloud3dsymbol.h.

◆ mPointSize

float QgsPointCloud3DSymbol::mPointSize = 3.0
protected

Definition at line 182 of file qgspointcloud3dsymbol.h.

◆ mRenderAsTriangles

bool QgsPointCloud3DSymbol::mRenderAsTriangles = false
protected

Definition at line 183 of file qgspointcloud3dsymbol.h.

◆ mVerticalFilterThreshold

float QgsPointCloud3DSymbol::mVerticalFilterThreshold = 10.0
protected

Definition at line 187 of file qgspointcloud3dsymbol.h.

◆ mVerticalTriangleFilter

bool QgsPointCloud3DSymbol::mVerticalTriangleFilter = false
protected

Definition at line 186 of file qgspointcloud3dsymbol.h.


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