38class CORE_EXPORT QgsQuantizedMeshMetadata
45 QgsQuantizedMeshMetadata(
const QString &uri,
50 double geometricErrorAtZoom(
int zoom )
const;
58 QVector<QVector<QgsTileRange>> mAvailableTiles;
63 std::vector<QString> mTileUrls;
73 QgsQuantizedMeshIndex(
const QgsQuantizedMeshMetadata &metadata,
75 : mMetadata( metadata ), mWgs84ToCrs( wgs84ToCrs ) {}
77 long long parentTileId(
long long id )
const override;
78 QVector< long long > childTileIds(
long long id )
const override;
82 bool fetchHierarchy(
long long id,
QgsFeedback *feedback =
nullptr )
override;
86 static long long encodeTileId(
QgsTileXYZ tile );
87 static QgsTileXYZ decodeTileId(
long long id );
89 static constexpr long long ROOT_TILE_ID = std::numeric_limits<long long>::max();
92 QByteArray fetchContent(
const QString &uri,
QgsFeedback *feedback =
nullptr )
override;
94 QgsQuantizedMeshMetadata mMetadata;
102 QgsQuantizedMeshDataProvider(
const QString &uri,
113 bool isValid()
const override;
114 QString name()
const override;
115 QString description()
const override;
117 const QgsQuantizedMeshMetadata &quantizedMeshMetadata()
const;
119 static constexpr const char *providerName =
"quantizedmesh";
120 static constexpr const char *providerDescription =
"Cesium Quantized Mesh tiles";
123 QString uriFromIon(
const QString &uri );
128 bool mIsValid =
false;
129 std::optional<QgsQuantizedMeshMetadata> mMetadata;
130 std::optional<QgsTiledSceneIndex> mIndex;
138 QgsQuantizedMeshProviderMetadata();
QFlags< TiledSceneProviderCapability > TiledSceneProviderCapabilities
Tiled scene data provider capabilities.
QFlags< DataProviderReadFlag > DataProviderReadFlags
Flags which control data provider construction.
TileChildrenAvailability
Possible availability states for a tile's children.
An abstract base class for tiled scene data provider indices.
This class represents a coordinate reference system (CRS).
Contains information about the context in which a coordinate transform is executed.
Abstract base class for spatial data provider implementations.
QgsRange which stores a range of double values.
A container for error messages.
Base class for feedback objects to be used for cancellation of something running in a worker thread.
A rectangle specified with double values.
Defines a matrix of tiles for a single zoom level: it is defined by its size (width *.
Stores coordinates of a tile in a tile matrix set.
Represents a bounding volume for a tiled scene.
Base class for data providers for QgsTiledSceneLayer.
An index for tiled scene data providers.
Tiled scene data request.
Represents an individual tile from a tiled scene data source.
const QgsCoordinateReferenceSystem & crs
Setting options for creating vector data providers.