16 #ifndef QGSPOINTCLOUDLAYER3DRENDERER_H
17 #define QGSPOINTCLOUDLAYER3DRENDERER_H
56 double zValueScale,
double zValueFixedOffset );
102 QSet<int> getFilteredOutValues()
const;
108 template <
typename T>
114 value = *( data + offset );
118 value = *
reinterpret_cast< const qint32 *
>( data + offset );
122 value = *
reinterpret_cast< const short *
>( data + offset );
126 value = *
reinterpret_cast< const unsigned short *
>( data + offset );
130 value = *
reinterpret_cast< const float *
>( data + offset );
134 value = *
reinterpret_cast< const double *
>( data + offset );
156 bool isCanceled()
const;
162 void cancelRendering()
const;
183 std::unique_ptr<QgsPointCloud3DSymbol> mSymbol;
185 double mZValueScale = 1.0;
186 double mZValueFixedOffset = 0;
188 std::unique_ptr<QgsFeedback> mFeedback;
228 QString
type()
const override;
243 void resolveReferences(
const QgsProject &project )
override;
252 double maximumScreenError()
const;
261 void setMaximumScreenError(
double error );
268 bool showBoundingBoxes()
const;
275 void setShowBoundingBoxes(
bool showBoundingBoxes );
285 void setPointRenderingBudget(
int budget );
289 std::unique_ptr< QgsPointCloud3DSymbol > mSymbol;
290 double mMaximumScreenError = 1.0;
291 bool mShowBoundingBoxes =
false;
292 int mPointBudget = 1000000;
Base class for all renderers that may to participate in 3D view.
Base class for feedback objects to be used for cancellation of something running in a worker thread.
Encapsulates the render context for a 3D point cloud rendering operation.
void getAttribute(const char *data, std::size_t offset, QgsPointCloudAttribute::DataType type, T &value) const
Retrieves the attribute value from data at the specified offset, where type indicates the original da...
QgsFeedback * feedback() const
Returns the feedback object used to cancel rendering and check if rendering was canceled.
double zValueScale() const
Returns any constant scaling factor which must be applied to z values taken from the point cloud inde...
QgsPointCloudAttributeCollection attributes() const
Returns the attributes associated with the rendered block.
QgsPointCloud3DRenderContext(const QgsPointCloud3DRenderContext &rh)=delete
QgsPointCloudRenderContext cannot be copied.
QgsCoordinateTransform coordinateTransform() const
Returns the coordinate transform used to transform points from layer CRS to the map CRS.
QgsPointCloud3DSymbol * symbol() const
Returns the symbol used for rendering the point cloud.
double zValueFixedOffset() const
Returns any constant offset which must be applied to z values taken from the point cloud index.
QgsPointCloud3DRenderContext & operator=(const QgsPointCloud3DRenderContext &)=delete
QgsPointCloudRenderContext cannot be copied.
Collection of point cloud attributes.
DataType
Systems of unit measurement.
@ UShort
Unsigned short int 2 bytes.
@ Short
Short int 2 bytes.
3D renderer that renders all points from a point cloud layer
const QgsPointCloud3DSymbol * symbol() const
Returns 3D symbol associated with the renderer.
int pointRenderingBudget() const
Returns the maximum number of points that will be rendered to the scene.
Represents a map layer supporting display of point clouds.
Encapsulates the render context for a 2D point cloud rendering operation.
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
The class is used as a container of context for various read/write operations on other objects.
QList< QgsPointCloudCategory > QgsPointCloudCategoryList