cesium-native 0.43.0
|
Helper functions for working with 3D Tiles implicit tiling. More...
#include <Cesium3DTilesContent/ImplicitTilingUtilities.h>
Static Public Member Functions | |
static std::string | resolveUrl (const std::string &baseUrl, const std::string &urlTemplate, const CesiumGeometry::QuadtreeTileID &quadtreeID) |
Resolves a templatized implicit tiling URL with a quadtree tile ID. | |
static std::string | resolveUrl (const std::string &baseUrl, const std::string &urlTemplate, const CesiumGeometry::OctreeTileID &octreeID) |
Resolves a templatized implicit tiling URL with an octree tile ID. | |
static double | computeLevelDenominator (uint32_t level) noexcept |
Computes the denominator for a given implicit tile level. | |
static uint64_t | computeMortonIndex (const CesiumGeometry::QuadtreeTileID &tileID) |
Computes the Morton index for a given quadtree tile within its level. | |
static uint64_t | computeMortonIndex (const CesiumGeometry::OctreeTileID &tileID) |
Computes the Morton index for a given octree tile within its level. | |
static uint64_t | computeRelativeMortonIndex (const CesiumGeometry::QuadtreeTileID &subtreeID, const CesiumGeometry::QuadtreeTileID &tileID) |
Computes the relative Morton index for a given quadtree tile within its level of a subtree root at the tile with the given quadtree ID. | |
static uint64_t | computeRelativeMortonIndex (const CesiumGeometry::OctreeTileID &subtreeRootID, const CesiumGeometry::OctreeTileID &tileID) |
Computes the relative Morton index for a given octree tile within its level of a subtree rooted at the tile with the given octree ID. | |
static CesiumGeometry::QuadtreeTileID | getSubtreeRootID (uint32_t subtreeLevels, const CesiumGeometry::QuadtreeTileID &tileID) noexcept |
Gets the ID of the root tile of the subtree that contains a given tile. | |
static CesiumGeometry::OctreeTileID | getSubtreeRootID (uint32_t subtreeLevels, const CesiumGeometry::OctreeTileID &tileID) noexcept |
Gets the ID of the root tile of the subtree that contains a given tile. | |
static CesiumGeometry::QuadtreeTileID | absoluteTileIDToRelative (const CesiumGeometry::QuadtreeTileID &rootID, const CesiumGeometry::QuadtreeTileID &tileID) noexcept |
Converts an absolute tile ID to a tile ID relative to a given root tile. | |
static CesiumGeometry::OctreeTileID | absoluteTileIDToRelative (const CesiumGeometry::OctreeTileID &rootID, const CesiumGeometry::OctreeTileID &tileID) noexcept |
Converts an absolute tile ID to a tile ID relative to a given root tile. | |
static QuadtreeChildren | getChildren (const CesiumGeometry::QuadtreeTileID &tileID) noexcept |
Gets a lightweight virtual container for enumerating the quadtree IDs of the children of a given quadtree tile. | |
static OctreeChildren | getChildren (const CesiumGeometry::OctreeTileID &tileID) noexcept |
Gets a lightweight virtual container for enumerating the octree IDs of the children of a given octree tile. | |
static Cesium3DTiles::BoundingVolume | computeBoundingVolume (const Cesium3DTiles::BoundingVolume &rootBoundingVolume, const CesiumGeometry::QuadtreeTileID &tileID, const CesiumGeospatial::Ellipsoid &ellipsoid=CesiumGeospatial::Ellipsoid::WGS84) noexcept |
Computes the bounding volume for an implicit quadtree tile with the given ID as a Cesium3DTiles::BoundingVolume . | |
static Cesium3DTiles::BoundingVolume | computeBoundingVolume (const Cesium3DTiles::BoundingVolume &rootBoundingVolume, const CesiumGeometry::OctreeTileID &tileID, const CesiumGeospatial::Ellipsoid &ellipsoid=CesiumGeospatial::Ellipsoid::WGS84) noexcept |
Computes the bounding volume for an implicit octree tile with the given ID as a Cesium3DTiles::BoundingVolume . | |
static CesiumGeospatial::BoundingRegion | computeBoundingVolume (const CesiumGeospatial::BoundingRegion &rootBoundingVolume, const CesiumGeometry::QuadtreeTileID &tileID, const CesiumGeospatial::Ellipsoid &ellipsoid=CesiumGeospatial::Ellipsoid::WGS84) noexcept |
Computes the bounding volume for an implicit quadtree tile with the given ID as a bounding region. | |
static CesiumGeospatial::BoundingRegion | computeBoundingVolume (const CesiumGeospatial::BoundingRegion &rootBoundingVolume, const CesiumGeometry::OctreeTileID &tileID, const CesiumGeospatial::Ellipsoid &ellipsoid=CesiumGeospatial::Ellipsoid::WGS84) noexcept |
Computes the bounding volume for an implicit octree tile with the given ID as a bounding region. | |
static CesiumGeometry::OrientedBoundingBox | computeBoundingVolume (const CesiumGeometry::OrientedBoundingBox &rootBoundingVolume, const CesiumGeometry::QuadtreeTileID &tileID) noexcept |
Computes the bounding volume for an implicit quadtree tile with the given ID as an oriented bounding box. | |
static CesiumGeometry::OrientedBoundingBox | computeBoundingVolume (const CesiumGeometry::OrientedBoundingBox &rootBoundingVolume, const CesiumGeometry::OctreeTileID &tileID) noexcept |
Computes the bounding volume for an implicit octree tile with the given ID as an oriented bounding box. | |
static CesiumGeospatial::S2CellBoundingVolume | computeBoundingVolume (const CesiumGeospatial::S2CellBoundingVolume &rootBoundingVolume, const CesiumGeometry::QuadtreeTileID &tileID, const CesiumGeospatial::Ellipsoid &ellipsoid=CesiumGeospatial::Ellipsoid::WGS84) noexcept |
Computes the bounding volume for an implicit quadtree tile with the given ID as an S2 cell bounding volume. | |
static CesiumGeospatial::S2CellBoundingVolume | computeBoundingVolume (const CesiumGeospatial::S2CellBoundingVolume &rootBoundingVolume, const CesiumGeometry::OctreeTileID &tileID, const CesiumGeospatial::Ellipsoid &ellipsoid=CesiumGeospatial::Ellipsoid::WGS84) noexcept |
Computes the bounding volume for an implicit octree tile with the given ID as an S2 cell bounding volume. | |
Helper functions for working with 3D Tiles implicit tiling.
Definition at line 234 of file ImplicitTilingUtilities.h.
|
staticnoexcept |
Converts an absolute tile ID to a tile ID relative to a given root tile.
For example, if rootID
and tileID
are the same, this method returns OctreeTileID(0, 0, 0, 0)
.
rootID | The ID of the root tile that the returned ID should be relative to. |
tileID | The absolute ID of the tile to compute a relative ID for. |
|
staticnoexcept |
Converts an absolute tile ID to a tile ID relative to a given root tile.
For example, if rootID
and tileID
are the same, this method returns QuadtreeTileID(0, 0, 0)
.
rootID | The ID of the root tile that the returned ID should be relative to. |
tileID | The absolute ID of the tile to compute a relative ID for. |
|
staticnoexcept |
Computes the bounding volume for an implicit octree tile with the given ID as a Cesium3DTiles::BoundingVolume
.
rootBoundingVolume | The bounding volume of the root tile. |
tileID | The tile ID for which to compute the bounding volume. |
ellipsoid | The ellipsoid to use for this calculation. |
|
staticnoexcept |
Computes the bounding volume for an implicit quadtree tile with the given ID as a Cesium3DTiles::BoundingVolume
.
rootBoundingVolume | The bounding volume of the root tile. |
tileID | The tile ID for which to compute the bounding volume. |
ellipsoid | The ellipsoid to use for this calculation. |
|
staticnoexcept |
Computes the bounding volume for an implicit octree tile with the given ID as an oriented bounding box.
rootBoundingVolume | The oriented bounding box of the root tile. |
tileID | The tile ID for which to compute the oriented bounding box. |
|
staticnoexcept |
Computes the bounding volume for an implicit quadtree tile with the given ID as an oriented bounding box.
rootBoundingVolume | The oriented bounding box of the root tile. |
tileID | The tile ID for which to compute the oriented bounding box. |
|
staticnoexcept |
Computes the bounding volume for an implicit octree tile with the given ID as a bounding region.
rootBoundingVolume | The bounding region of the root tile. |
tileID | The tile ID for which to compute the bounding region. |
ellipsoid | The ellipsoid to use for this calculation. |
|
staticnoexcept |
Computes the bounding volume for an implicit quadtree tile with the given ID as a bounding region.
rootBoundingVolume | The bounding region of the root tile. |
tileID | The tile ID for which to compute the bounding region. |
ellipsoid | The ellipsoid to use for this calculation. |
|
staticnoexcept |
Computes the bounding volume for an implicit octree tile with the given ID as an S2 cell bounding volume.
rootBoundingVolume | The S2 cell bounding volume of the root tile. |
tileID | The tile ID for which to compute the S2 cell bounding volume. |
ellipsoid | The ellipsoid to use for this calculation. |
|
staticnoexcept |
Computes the bounding volume for an implicit quadtree tile with the given ID as an S2 cell bounding volume.
rootBoundingVolume | The S2 cell bounding volume of the root tile. |
tileID | The tile ID for which to compute the S2 cell bounding volume. |
ellipsoid | The ellipsoid to use for this calculation. |
|
staticnoexcept |
Computes the denominator for a given implicit tile level.
Divide the root tile's geometric error by this value to get the standard geometric error for tiles on the level. Or divide each component of a bounding volume by this factor to get the size of the bounding volume along that axis for tiles of this level.
level | The tile level. |
|
static |
Computes the Morton index for a given octree tile within its level.
tileID | The ID of the tile. |
|
static |
Computes the Morton index for a given quadtree tile within its level.
tileID | The ID of the tile. |
|
static |
Computes the relative Morton index for a given octree tile within its level of a subtree rooted at the tile with the given octree ID.
subtreeRootID | The ID of the subtree the contains the tile. |
tileID | The ID of the tile. |
|
static |
Computes the relative Morton index for a given quadtree tile within its level of a subtree root at the tile with the given quadtree ID.
subtreeID | The ID of the subtree the contains the tile. |
tileID | The ID of the tile. |
|
inlinestaticnoexcept |
Gets a lightweight virtual container for enumerating the octree IDs of the children of a given octree tile.
tileID | The tile ID of the parent tile for which to get children. |
Definition at line 404 of file ImplicitTilingUtilities.h.
|
inlinestaticnoexcept |
Gets a lightweight virtual container for enumerating the quadtree IDs of the children of a given quadtree tile.
tileID | The tile ID of the parent tile for which to get children. |
Definition at line 392 of file ImplicitTilingUtilities.h.
|
staticnoexcept |
Gets the ID of the root tile of the subtree that contains a given tile.
subtreeLevels | The number of levels in each sub-tree. For example, if this parameter is 4, then the first subtree starts at level 0 and contains tiles in levels 0 through 3, and the next subtree starts at level 4 and contains tiles in levels 4 through 7. |
tileID | The tile ID for each to find the subtree root. |
|
staticnoexcept |
Gets the ID of the root tile of the subtree that contains a given tile.
subtreeLevels | The number of levels in each sub-tree. For example, if this parameter is 4, then the first subtree starts at level 0 and contains tiles in levels 0 through 3, and the next subtree starts at level 4 and contains tiles in levels 4 through 7. |
tileID | The tile ID for each to find the subtree root. |
|
static |
Resolves a templatized implicit tiling URL with an octree tile ID.
baseUrl | The base URL that is used to resolve the urlTemplate if it is a relative path. |
urlTemplate | The templatized URL. |
octreeID | The octree ID to use in resolving the parameters in the URL template. |
|
static |
Resolves a templatized implicit tiling URL with a quadtree tile ID.
baseUrl | The base URL that is used to resolve the urlTemplate if it is a relative path. |
urlTemplate | The templatized URL. |
quadtreeID | The quadtree ID to use in resolving the parameters in the URL template. |