18 #ifndef QGSPOINTCLOUDLAYER_H
19 #define QGSPOINTCLOUDLAYER_H
25 #include "qgis_core.h"
57 : transformContext( transformContext )
66 bool loadDefaultStyle =
true;
79 bool skipCrsValidation =
false;
84 bool skipIndexGeneration =
false;
92 const QString &baseName = QString(),
93 const QString &providerLib = QStringLiteral(
"pointcloud" ),
104 SIP_PYOBJECT __repr__();
106 QString str = QStringLiteral(
"<QgsPointCloudLayer: '%1' (%2)>" ).arg( sipCpp->name(), sipCpp->dataProvider() ? sipCpp->dataProvider()->name() : QStringLiteral(
"Invalid" ) );
107 sipRes = PyUnicode_FromString( str.toUtf8().constData() );
120 bool writeXml( QDomNode &layerNode, QDomDocument &doc, const
QgsReadWriteContext &context ) const override;
122 bool readSymbology( const QDomNode &node, QString &errorMessage,
124 bool readStyle( const QDomNode &node, QString &errorMessage,
QgsReadWriteContext &context, StyleCategories categories = AllStyleCategories )
FINAL;
126 bool writeSymbology( QDomNode &node, QDomDocument &doc, QString &errorMessage, const
QgsReadWriteContext &context,
127 StyleCategories categories = AllStyleCategories ) const override;
128 bool writeStyle( QDomNode &node, QDomDocument &doc, QString &errorMessage, const
QgsReadWriteContext &context, StyleCategories categories = AllStyleCategories ) const
FINAL;
131 void setDataSource( const QString &dataSource, const QString &baseName, const QString &provider, const
QgsDataProvider::ProviderOptions &options,
bool loadDefaultStyleFlag = false ) override;
132 QString encodedSource( const QString &source, const
QgsReadWriteContext &context ) const override;
133 QString decodedSource( const QString &source, const QString &dataProvider, const
QgsReadWriteContext &context ) const override;
134 QString loadDefaultStyle(
bool &resultFlag
SIP_OUT )
FINAL;
135 QString htmlMetadata() const override;
146 int pointCount() const;
177 bool isReadOnly()
const override {
return true;}
183 std::unique_ptr<QgsPointCloudDataProvider> mDataProvider;
185 std::unique_ptr<QgsPointCloudRenderer> mRenderer;
Contains information about the context in which a coordinate transform is executed.
Abstract base class for spatial data provider implementations.
Base class for storage of map layer elevation properties.
Base class for utility classes that encapsulate information necessary for rendering of map layers.
Base class for all map layer types.
virtual QgsMapLayer * clone() const =0
Returns a new instance equivalent to this one except for the id which is still unique.
Collection of point cloud attributes.
Base class for providing data for QgsPointCloudLayer.
Point cloud layer specific subclass of QgsMapLayerElevationProperties.
Implementation of threaded rendering for point cloud layers.
Represents a map layer supporting display of point clouds.
QgsPointCloudLayer(const QgsPointCloudLayer &rhs)=delete
QgsPointCloudLayer cannot be copied.
~QgsPointCloudLayer() override
QgsPointCloudLayer & operator=(QgsPointCloudLayer const &rhs)=delete
QgsPointCloudLayer cannot be copied.
Abstract base class for 2d point cloud renderers.
The class is used as a container of context for various read/write operations on other objects.
A rectangle specified with double values.
Contains information about the context of a rendering operation.
Setting options for loading point cloud layers.
LayerOptions(const QgsCoordinateTransformContext &transformContext=QgsCoordinateTransformContext())
Constructor for LayerOptions with optional transformContext.
QgsCoordinateTransformContext transformContext
Coordinate transform context.