@itwin/core-common
Version:
iTwin.js components common to frontend and backend
97 lines • 2.6 kB
TypeScript
/** @packageDocumentation
* @module Tile
*/
import { RequireAtLeastOne } from "@itwin/core-bentley";
/** The schema describing a 3d tileset per the [3d tiles specification](https://github.com/CesiumGS/3d-tiles/blob/main/specification/schema/tileset.schema.json).
* @alpha
*/
export declare namespace Tileset3dSchema {
/** An object that can be defined on any [[TilesetProperty]] to provide extensions to the core spec. */
interface Extensions {
[key: string]: any;
}
/** An extensible property of a [[Tileset]]. Most types within the schema are extensible. */
interface TilesetProperty {
extensions?: Extensions;
extras?: any;
}
type BoundingSphere = [
centerX: number,
centerY: number,
centerZ: number,
radius: number
];
type BoundingRegion = [
west: number,
south: number,
east: number,
north: number,
minHeight: number,
maxHeight: number
];
type BoundingBox = [
centerX: number,
centerY: number,
centerZ: number,
uX: number,
uY: number,
uZ: number,
vX: number,
vY: number,
vZ: number,
wX: number,
wY: number,
wZ: number
];
type BoundingVolume = RequireAtLeastOne<{
box?: BoundingBox;
sphere?: BoundingSphere;
region?: BoundingRegion;
}>;
type GeometricError = number;
type Refinement = "ADD" | "REPLACE" | string;
type Transform = [
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number,
number
];
interface Content extends TilesetProperty {
uri: string;
boundingVolume?: BoundingVolume;
}
interface Tile extends TilesetProperty {
boundingVolume: BoundingVolume;
geometricError: GeometricError;
viewerRequestVolume?: BoundingVolume;
refine?: Refinement;
transform?: Transform;
content?: Content;
children?: Tile[];
}
interface Asset extends TilesetProperty {
version: string;
tilesetVersion?: string;
}
interface Tileset extends TilesetProperty {
asset: Asset;
geometricError: GeometricError;
properties: unknown;
root: Tile;
extensionsUsed?: string[];
extensionsRequired?: string[];
}
}
//# sourceMappingURL=Tileset3dSchema.d.ts.map