/** * An enum of built-in semantics. * * @enum MetadataSemantic * * @private * @experimental This feature is using part of the 3D Tiles spec that is not final and is subject to change without Cesium's standard deprecation policy. * @see {@link https://github.com/CesiumGS/3d-tiles/tree/main/specification/Metadata/Semantics|3D Metadata Semantic Reference} */ const MetadataSemantic = { /** * A unique identifier, stored as a STRING. * * @type {string} * @constant * @private */ ID: "ID", /** * A name, stored as a STRING. This does not have to be unique. * * @type {string} * @constant * @private */ NAME: "NAME", /** * A description, stored as a STRING. * * @type {string} * @constant * @private */ DESCRIPTION: "DESCRIPTION", /** * The number of tiles in a tileset, stored as a UINT64. * * @type {string} * @constant * @private */ TILESET_TILE_COUNT: "TILESET_TILE_COUNT", /** * A bounding box for a tile, stored as an array of 12 FLOAT32 or FLOAT64 components. The components are the same format as for boundingVolume.box in 3D Tiles 1.0. This semantic is used to provide a tighter bounding volume than the one implicitly calculated in implicit tiling. * * @type {string} * @constant * @private */ TILE_BOUNDING_BOX: "TILE_BOUNDING_BOX", /** * A bounding region for a tile, stored as an array of 6 FLOAT64 components. The components are [west, south, east, north, minimumHeight, maximumHeight]. This semantic is used to provide a tighter bounding volume than the one implicitly calculated in implicit tiling. * * @type {string} * @constant * @private */ TILE_BOUNDING_REGION: "TILE_BOUNDING_REGION", /** * A bounding sphere for a tile, stored as an array of 4 FLOAT32 or FLOAT64 components. The components are [centerX, centerY, centerZ, radius]. This semantic is used to provide a tighter bounding volume than the one implicitly calculated in implicit tiling. * * @type {string} * @constant * @private */ TILE_BOUNDING_SPHERE: "TILE_BOUNDING_SPHERE", /** * The minimum height of a tile above (or below) the WGS84 ellipsoid, stored as a FLOAT32 or a FLOAT64. This semantic is used to tighten bounding regions implicitly calculated in implicit tiling. * * @type {string} * @constant * @private */ TILE_MINIMUM_HEIGHT: "TILE_MINIMUM_HEIGHT", /** * The maximum height of a tile above (or below) the WGS84 ellipsoid, stored as a FLOAT32 or a FLOAT64. This semantic is used to tighten bounding regions implicitly calculated in implicit tiling. * * @type {string} * @constant * @private */ TILE_MAXIMUM_HEIGHT: "TILE_MAXIMUM_HEIGHT", /** * The horizon occlusion point for a tile, stored as an VEC3 of FLOAT32 or FLOAT64 components. * * @see {@link https://cesium.com/blog/2013/04/25/horizon-culling/|Horizon Culling} * * @type {string} * @constant * @private */ TILE_HORIZON_OCCLUSION_POINT: "TILE_HORIZON_OCCLUSION_POINT", /** * The geometric error for a tile, stored as a FLOAT32 or a FLOAT64. This semantic is used to override the geometric error implicitly calculated in implicit tiling. * * @type {string} * @constant * @private */ TILE_GEOMETRIC_ERROR: "TILE_GEOMETRIC_ERROR", /** * A bounding box for the content of a tile, stored as an array of 12 FLOAT32 or FLOAT64 components. The components are the same format as for boundingVolume.box in 3D Tiles 1.0. This semantic is used to provide a tighter bounding volume than the one implicitly calculated in implicit tiling. * * @type {string} * @constant * @private */ CONTENT_BOUNDING_BOX: "CONTENT_BOUNDING_BOX", /** * A bounding region for the content of a tile, stored as an array of 6 FLOAT64 components. The components are [west, south, east, north, minimumHeight, maximumHeight]. This semantic is used to provide a tighter bounding volume than the one implicitly calculated in implicit tiling. * * @type {string} * @constant * @private */ CONTENT_BOUNDING_REGION: "CONTENT_BOUNDING_REGION", /** * A bounding sphere for the content of a tile, stored as an array of 4 FLOAT32 or FLOAT64 components. The components are [centerX, centerY, centerZ, radius]. This semantic is used to provide a tighter bounding volume than the one implicitly calculated in implicit tiling. * * @type {string} * @constant * @private */ CONTENT_BOUNDING_SPHERE: "CONTENT_BOUNDING_SPHERE", /** * The minimum height of the content of a tile above (or below) the WGS84 ellipsoid, stored as a FLOAT32 or a FLOAT64 * * @type {string} * @constant * @private */ CONTENT_MINIMUM_HEIGHT: "CONTENT_MINIMUM_HEIGHT", /** * The maximum height of the content of a tile above (or below) the WGS84 ellipsoid, stored as a FLOAT32 or a FLOAT64 * * @type {string} * @constant * @private */ CONTENT_MAXIMUM_HEIGHT: "CONTENT_MAXIMUM_HEIGHT", /** * The horizon occlusion point for the content of a tile, stored as an VEC3 of FLOAT32 or FLOAT64 components. * * @see {@link https://cesium.com/blog/2013/04/25/horizon-culling/|Horizon Culling} * * @type {string} * @constant * @private */ CONTENT_HORIZON_OCCLUSION_POINT: "CONTENT_HORIZON_OCCLUSION_POINT", }; export default Object.freeze(MetadataSemantic);