@itwin/core-frontend 4.5.0-dev.37 → 4.5.0-dev.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -1
- package/lib/cjs/ContextRealityModelState.d.ts +3 -0
- package/lib/cjs/ContextRealityModelState.d.ts.map +1 -1
- package/lib/cjs/ContextRealityModelState.js +8 -1
- package/lib/cjs/ContextRealityModelState.js.map +1 -1
- package/lib/cjs/ModelState.d.ts +3 -2
- package/lib/cjs/ModelState.d.ts.map +1 -1
- package/lib/cjs/ModelState.js +2 -1
- package/lib/cjs/ModelState.js.map +1 -1
- package/lib/cjs/SpatialClassifiersState.d.ts +55 -0
- package/lib/cjs/SpatialClassifiersState.d.ts.map +1 -0
- package/lib/cjs/SpatialClassifiersState.js +47 -0
- package/lib/cjs/SpatialClassifiersState.js.map +1 -0
- package/lib/cjs/ViewContext.d.ts +3 -2
- package/lib/cjs/ViewContext.d.ts.map +1 -1
- package/lib/cjs/ViewContext.js.map +1 -1
- package/lib/cjs/Viewport.d.ts.map +1 -1
- package/lib/cjs/Viewport.js +16 -11
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/core-frontend.d.ts +1 -0
- package/lib/cjs/core-frontend.d.ts.map +1 -1
- package/lib/cjs/core-frontend.js +1 -0
- package/lib/cjs/core-frontend.js.map +1 -1
- package/lib/cjs/render/GraphicBuilder.d.ts +2 -0
- package/lib/cjs/render/GraphicBuilder.d.ts.map +1 -1
- package/lib/cjs/render/GraphicBuilder.js.map +1 -1
- package/lib/cjs/render/RenderTarget.d.ts +3 -2
- package/lib/cjs/render/RenderTarget.d.ts.map +1 -1
- package/lib/cjs/render/RenderTarget.js.map +1 -1
- package/lib/cjs/render/Scene.d.ts +2 -2
- package/lib/cjs/render/Scene.d.ts.map +1 -1
- package/lib/cjs/render/Scene.js.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts +3 -0
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.d.ts +3 -0
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js +2 -0
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
- package/lib/cjs/render/webgl/PlanarClassifier.d.ts +3 -2
- package/lib/cjs/render/webgl/PlanarClassifier.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/cjs/render/webgl/Target.d.ts +4 -3
- package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Target.js.map +1 -1
- package/lib/cjs/tile/ClassifierTileTree.d.ts +4 -4
- package/lib/cjs/tile/ClassifierTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/ClassifierTileTree.js +11 -6
- package/lib/cjs/tile/ClassifierTileTree.js.map +1 -1
- package/lib/cjs/tile/OrbitGtTileTree.d.ts +1 -0
- package/lib/cjs/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/OrbitGtTileTree.js +4 -0
- package/lib/cjs/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/cjs/tile/PrimaryTileTree.d.ts +1 -0
- package/lib/cjs/tile/PrimaryTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/PrimaryTileTree.js +3 -0
- package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.d.ts +5 -2
- package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.js +19 -0
- package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
- package/lib/cjs/tile/RenderGraphicTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/RenderGraphicTileTree.js +3 -0
- package/lib/cjs/tile/RenderGraphicTileTree.js.map +1 -1
- package/lib/cjs/tile/TileTreeReference.d.ts +13 -2
- package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/cjs/tile/TileTreeReference.js +17 -2
- package/lib/cjs/tile/TileTreeReference.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerTileTreeReference.d.ts +1 -0
- package/lib/cjs/tile/map/MapLayerTileTreeReference.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerTileTreeReference.js +4 -0
- package/lib/cjs/tile/map/MapLayerTileTreeReference.js.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.d.ts +1 -0
- package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.js +5 -1
- package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
- package/lib/esm/ContextRealityModelState.d.ts +3 -0
- package/lib/esm/ContextRealityModelState.d.ts.map +1 -1
- package/lib/esm/ContextRealityModelState.js +8 -1
- package/lib/esm/ContextRealityModelState.js.map +1 -1
- package/lib/esm/ModelState.d.ts +3 -2
- package/lib/esm/ModelState.d.ts.map +1 -1
- package/lib/esm/ModelState.js +3 -2
- package/lib/esm/ModelState.js.map +1 -1
- package/lib/esm/SpatialClassifiersState.d.ts +55 -0
- package/lib/esm/SpatialClassifiersState.d.ts.map +1 -0
- package/lib/esm/SpatialClassifiersState.js +43 -0
- package/lib/esm/SpatialClassifiersState.js.map +1 -0
- package/lib/esm/ViewContext.d.ts +3 -2
- package/lib/esm/ViewContext.d.ts.map +1 -1
- package/lib/esm/ViewContext.js.map +1 -1
- package/lib/esm/Viewport.d.ts.map +1 -1
- package/lib/esm/Viewport.js +16 -11
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/core-frontend.d.ts +1 -0
- package/lib/esm/core-frontend.d.ts.map +1 -1
- package/lib/esm/core-frontend.js +1 -0
- package/lib/esm/core-frontend.js.map +1 -1
- package/lib/esm/render/GraphicBuilder.d.ts +2 -0
- package/lib/esm/render/GraphicBuilder.d.ts.map +1 -1
- package/lib/esm/render/GraphicBuilder.js.map +1 -1
- package/lib/esm/render/RenderTarget.d.ts +3 -2
- package/lib/esm/render/RenderTarget.d.ts.map +1 -1
- package/lib/esm/render/RenderTarget.js.map +1 -1
- package/lib/esm/render/Scene.d.ts +2 -2
- package/lib/esm/render/Scene.d.ts.map +1 -1
- package/lib/esm/render/Scene.js.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts +3 -0
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.d.ts +3 -0
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.js +2 -0
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
- package/lib/esm/render/webgl/PlanarClassifier.d.ts +3 -2
- package/lib/esm/render/webgl/PlanarClassifier.d.ts.map +1 -1
- package/lib/esm/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/esm/render/webgl/Target.d.ts +4 -3
- package/lib/esm/render/webgl/Target.d.ts.map +1 -1
- package/lib/esm/render/webgl/Target.js.map +1 -1
- package/lib/esm/tile/ClassifierTileTree.d.ts +4 -4
- package/lib/esm/tile/ClassifierTileTree.d.ts.map +1 -1
- package/lib/esm/tile/ClassifierTileTree.js +12 -7
- package/lib/esm/tile/ClassifierTileTree.js.map +1 -1
- package/lib/esm/tile/OrbitGtTileTree.d.ts +1 -0
- package/lib/esm/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/esm/tile/OrbitGtTileTree.js +4 -0
- package/lib/esm/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/esm/tile/PrimaryTileTree.d.ts +1 -0
- package/lib/esm/tile/PrimaryTileTree.d.ts.map +1 -1
- package/lib/esm/tile/PrimaryTileTree.js +3 -0
- package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.d.ts +5 -2
- package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.js +19 -0
- package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
- package/lib/esm/tile/RenderGraphicTileTree.d.ts.map +1 -1
- package/lib/esm/tile/RenderGraphicTileTree.js +3 -0
- package/lib/esm/tile/RenderGraphicTileTree.js.map +1 -1
- package/lib/esm/tile/TileTreeReference.d.ts +13 -2
- package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/esm/tile/TileTreeReference.js +17 -2
- package/lib/esm/tile/TileTreeReference.js.map +1 -1
- package/lib/esm/tile/map/MapLayerTileTreeReference.d.ts +1 -0
- package/lib/esm/tile/map/MapLayerTileTreeReference.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerTileTreeReference.js +4 -0
- package/lib/esm/tile/map/MapLayerTileTreeReference.js.map +1 -1
- package/lib/esm/tile/map/MapTileTree.d.ts +1 -0
- package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTileTree.js +5 -1
- package/lib/esm/tile/map/MapTileTree.js.map +1 -1
- package/package.json +18 -18
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelState.d.ts","sourceRoot":"","sources":["../../src/ModelState.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAQ,UAAU,EAAa,MAAM,qBAAqB,CAAC;AAClE,OAAO,EACL,qBAAqB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,UAAU,EAAwE,cAAc,
|
|
1
|
+
{"version":3,"file":"ModelState.d.ts","sourceRoot":"","sources":["../../src/ModelState.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/ModelState.js
CHANGED
|
@@ -6,11 +6,12 @@
|
|
|
6
6
|
* @module ModelState
|
|
7
7
|
*/
|
|
8
8
|
import { Id64, JsonUtils } from "@itwin/core-bentley";
|
|
9
|
-
import { RealityDataFormat, RealityModelDisplaySettings, RelatedElement,
|
|
9
|
+
import { RealityDataFormat, RealityModelDisplaySettings, RelatedElement, } from "@itwin/core-common";
|
|
10
10
|
import { Point2d, Range3d } from "@itwin/core-geometry";
|
|
11
11
|
import { EntityState } from "./EntityState";
|
|
12
12
|
import { RealityDataSource } from "./RealityDataSource";
|
|
13
13
|
import { createOrbitGtTileTreeReference, createPrimaryTileTreeReference, createRealityTileTreeReference } from "./tile/internal";
|
|
14
|
+
import { SpatialClassifiersState } from "./SpatialClassifiersState";
|
|
14
15
|
/** Represents the front-end state of a [Model]($backend).
|
|
15
16
|
* @public
|
|
16
17
|
* @extensions
|
|
@@ -218,7 +219,7 @@ export class SpatialModelState extends GeometricModel3dState {
|
|
|
218
219
|
constructor(props, iModel, state) {
|
|
219
220
|
super(props, iModel, state);
|
|
220
221
|
if (this.isRealityModel)
|
|
221
|
-
this.classifiers =
|
|
222
|
+
this.classifiers = SpatialClassifiersState.create(this.jsonProperties);
|
|
222
223
|
}
|
|
223
224
|
/** Return true if this is a reality model (represented by a 3d tile set). */
|
|
224
225
|
get isRealityModel() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelState.js","sourceRoot":"","sources":["../../src/ModelState.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module ModelState\r\n */\r\n\r\nimport { Id64, Id64String, JsonUtils } from \"@itwin/core-bentley\";\r\nimport {\r\n GeometricModel2dProps, GeometricModel3dProps, GeometricModelProps, ModelProps, RealityDataFormat, RealityDataSourceKey, RealityModelDisplaySettings, RelatedElement, SpatialClassifiers,\r\n} from \"@itwin/core-common\";\r\nimport { Point2d, Range3d } from \"@itwin/core-geometry\";\r\nimport { EntityState } from \"./EntityState\";\r\nimport { HitDetail } from \"./HitDetail\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { RealityDataSource } from \"./RealityDataSource\";\r\nimport { createOrbitGtTileTreeReference, createPrimaryTileTreeReference, createRealityTileTreeReference, TileTreeReference } from \"./tile/internal\";\r\nimport { ViewState } from \"./ViewState\";\r\n\r\n/** Represents the front-end state of a [Model]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class ModelState extends EntityState implements ModelProps {\r\n public static override get className() { return \"Model\"; }\r\n public readonly modeledElement: RelatedElement;\r\n public readonly name: string;\r\n public parentModel: Id64String;\r\n public readonly isPrivate: boolean;\r\n public readonly isTemplate: boolean;\r\n\r\n constructor(props: ModelProps, iModel: IModelConnection, state?: ModelState) {\r\n super(props, iModel, state);\r\n this.modeledElement = RelatedElement.fromJSON(props.modeledElement)!;\r\n this.name = props.name ? props.name : \"\";\r\n this.parentModel = Id64.fromJSON(props.parentModel)!; // NB! Must always match the model of the modeledElement!\r\n this.isPrivate = JsonUtils.asBool(props.isPrivate);\r\n this.isTemplate = JsonUtils.asBool(props.isTemplate);\r\n }\r\n\r\n /** Add all custom-handled properties of a Model to a json object. */\r\n public override toJSON(): ModelProps {\r\n const val = super.toJSON() as ModelProps;\r\n val.modeledElement = this.modeledElement;\r\n val.parentModel = this.parentModel;\r\n val.name = this.name;\r\n if (this.isPrivate)\r\n val.isPrivate = this.isPrivate;\r\n if (this.isTemplate)\r\n val.isTemplate = this.isTemplate;\r\n return val;\r\n }\r\n\r\n /** Determine whether this is a GeometricModel */\r\n public get isGeometricModel(): boolean { return false; }\r\n\r\n /** Attempts to cast this model to a geometric model. */\r\n public get asGeometricModel(): GeometricModelState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 3d geometric model. */\r\n public get asGeometricModel3d(): GeometricModel3dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 2d geometric model. */\r\n public get asGeometricModel2d(): GeometricModel2dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a spatial model. */\r\n public get asSpatialModel(): SpatialModelState | undefined { return undefined; }\r\n\r\n /**\r\n * Return the tool tip for this model. This is called only if the hit does not return a tooltip.\r\n * @internal\r\n */\r\n public getToolTip(_hit: HitDetail): HTMLElement | string | undefined { return undefined; }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel]($backend).\r\n * The contents of a GeometricModelState can be rendered inside a [[Viewport]].\r\n * @public\r\n * @extensions\r\n */\r\nexport abstract class GeometricModelState extends ModelState implements GeometricModelProps {\r\n public static override get className() { return \"GeometricModel\"; }\r\n /** @internal */\r\n public geometryGuid?: string;\r\n\r\n private _modelRange?: Range3d;\r\n\r\n constructor(props: GeometricModelProps, iModel: IModelConnection, state?: GeometricModelState) {\r\n super(props, iModel, state);\r\n this.geometryGuid = props.geometryGuid;\r\n }\r\n\r\n /** Returns true if this is a 3d model (a [[GeometricModel3dState]]). */\r\n public abstract get is3d(): boolean;\r\n /** @internal */\r\n public override get asGeometricModel(): GeometricModelState { return this; }\r\n /** Returns true if this is a 2d model (a [[GeometricModel2dState]]). */\r\n public get is2d(): boolean { return !this.is3d; }\r\n\r\n /** @internal */\r\n public override get isGeometricModel(): boolean { return true; }\r\n /** @internal */\r\n public get treeModelId(): Id64String { return this.id; }\r\n\r\n /** Query for the union of the ranges of all the elements in this GeometricModel.\r\n * @note This value is cached after the first time it is called.\r\n * @public\r\n */\r\n public async queryModelRange(): Promise<Range3d> {\r\n if (undefined === this._modelRange) {\r\n const ranges = await this.iModel.models.queryExtents(this.id);\r\n this._modelRange = Range3d.fromJSON(ranges[0]?.extents);\r\n }\r\n\r\n return this._modelRange;\r\n }\r\n\r\n /** @internal */\r\n public createTileTreeReference(view: ViewState): TileTreeReference {\r\n // If this is a reality model, its tile tree is obtained from reality data service URL.\r\n\r\n const spatialModel = this.asSpatialModel;\r\n const rdSourceKey = this.jsonProperties.rdSourceKey;\r\n const getDisplaySettings = () => view.displayStyle.settings.getRealityModelDisplaySettings(this.id) ?? RealityModelDisplaySettings.defaults;\r\n\r\n if (rdSourceKey) {\r\n const useOrbitGtTileTreeReference = rdSourceKey.format === RealityDataFormat.OPC;\r\n const treeRef = (!useOrbitGtTileTreeReference) ?\r\n createRealityTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // url: tilesetUrl, // If rdSourceKey is defined, url is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n getDisplaySettings,\r\n }) :\r\n createOrbitGtTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // orbitGtBlob: props.orbitGtBlob!, // If rdSourceKey is defined, orbitGtBlob is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n getDisplaySettings,\r\n });\r\n return treeRef;\r\n }\r\n\r\n const orbitGtBlob = this.jsonProperties.orbitGtBlob;\r\n\r\n // If this is an OrbitGt reality model, create it's reference\r\n if(orbitGtBlob) {\r\n let orbitGtName = \"\";\r\n if (orbitGtBlob.blobFileName !== \"\") {\r\n if (orbitGtBlob.blobFileName[0] === \"/\")\r\n orbitGtName = orbitGtBlob.blobFileName.substring(1);\r\n else\r\n orbitGtName = orbitGtBlob.blobFileName;\r\n }\r\n // Create rdSourceKey if not provided\r\n const rdSourceKeyOGT: RealityDataSourceKey = RealityDataSource.createKeyFromOrbitGtBlobProps(orbitGtBlob);\r\n\r\n return createOrbitGtTileTreeReference({\r\n rdSourceKey: rdSourceKeyOGT,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n orbitGtBlob,\r\n name: orbitGtName,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n getDisplaySettings,\r\n });\r\n }\r\n\r\n // If this is a TileTree reality model, create it's reference\r\n const tilesetUrl = this.jsonProperties.tilesetUrl;\r\n\r\n if(tilesetUrl) {\r\n const rdSourceKeyCS = RealityDataSource.createKeyFromUrl(tilesetUrl);\r\n return createRealityTileTreeReference({\r\n rdSourceKey: rdSourceKeyCS,\r\n url : tilesetUrl,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n tilesetToDbTransform: this.jsonProperties.tilesetToDbTransform,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n getDisplaySettings,\r\n });\r\n }\r\n\r\n return createPrimaryTileTreeReference(view, this);\r\n }\r\n}\r\n/** Represents the front-end state of a [GeometricModel2d]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class GeometricModel2dState extends GeometricModelState implements GeometricModel2dProps {\r\n public static override get className() { return \"GeometricModel2d\"; }\r\n /** @internal */\r\n public readonly globalOrigin: Point2d;\r\n\r\n constructor(props: GeometricModel2dProps, iModel: IModelConnection, state?: GeometricModel2dState) {\r\n super(props, iModel, state);\r\n this.globalOrigin = Point2d.fromJSON(props.globalOrigin);\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return false; }\r\n /** @internal */\r\n public override get asGeometricModel2d(): GeometricModel2dState { return this; }\r\n\r\n public override toJSON(): GeometricModel2dProps {\r\n const val = super.toJSON() as GeometricModel2dProps;\r\n val.globalOrigin = this.globalOrigin;\r\n return val;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel3d]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class GeometricModel3dState extends GeometricModelState {\r\n public static override get className() { return \"GeometricModel3d\"; }\r\n\r\n constructor(props: GeometricModel3dProps, iModel: IModelConnection, state?: GeometricModel3dState) {\r\n super(props, iModel, state);\r\n this.isNotSpatiallyLocated = JsonUtils.asBool(props.isNotSpatiallyLocated);\r\n this.isPlanProjection = JsonUtils.asBool(props.isPlanProjection);\r\n }\r\n\r\n /** @internal */\r\n public override toJSON(): GeometricModel3dProps {\r\n const val = super.toJSON() as GeometricModel3dProps;\r\n if (this.isNotSpatiallyLocated)\r\n val.isNotSpatiallyLocated = true;\r\n\r\n if (this.isPlanProjection)\r\n val.isPlanProjection = true;\r\n\r\n return val;\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return true; }\r\n /** @internal */\r\n public override get asGeometricModel3d(): GeometricModel3dState { return this; }\r\n\r\n /** If true, then the elements in this GeometricModel3dState are expected to be in an XY plane.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isPlanProjection: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are not in real-world coordinates and will not be in the spatial index.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isNotSpatiallyLocated: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are in real-world coordinates and will be in the spatial index. */\r\n public get isSpatiallyLocated(): boolean { return !this.isNotSpatiallyLocated; }\r\n}\r\n\r\n/** Represents the front-end state of a [SheetModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SheetModelState extends GeometricModel2dState {\r\n public static override get className() { return \"SheetModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SpatialModelState extends GeometricModel3dState {\r\n /** If this is a reality model, provides access to a list of available spatial classifiers that can be applied to it. */\r\n public readonly classifiers?: SpatialClassifiers;\r\n\r\n public static override get className() { return \"SpatialModel\"; }\r\n\r\n /** @internal */\r\n public override get asSpatialModel(): SpatialModelState { return this; }\r\n\r\n public constructor(props: ModelProps, iModel: IModelConnection, state?: SpatialModelState) {\r\n super(props, iModel, state);\r\n if (this.isRealityModel)\r\n this.classifiers = new SpatialClassifiers(this.jsonProperties);\r\n }\r\n\r\n /** Return true if this is a reality model (represented by a 3d tile set). */\r\n public get isRealityModel(): boolean {\r\n return !!this.jsonProperties.tilesetUrl || !!this.jsonProperties.rdSourceKey || !!this.jsonProperties.orbitGtBlob;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [PhysicalModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class PhysicalModelState extends SpatialModelState {\r\n public static override get className() { return \"PhysicalModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialLocationModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SpatialLocationModelState extends SpatialModelState {\r\n public static override get className() { return \"SpatialLocationModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [DrawingModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class DrawingModelState extends GeometricModel2dState {\r\n public static override get className() { return \"DrawingModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SectionDrawingModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SectionDrawingModelState extends DrawingModelState {\r\n public static override get className() { return \"SectionDrawingModel\"; }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ModelState.js","sourceRoot":"","sources":["../../src/ModelState.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module ModelState\r\n */\r\n\r\nimport { Id64, Id64String, JsonUtils } from \"@itwin/core-bentley\";\r\nimport {\r\n GeometricModel2dProps, GeometricModel3dProps, GeometricModelProps, ModelProps, RealityDataFormat, RealityDataSourceKey, RealityModelDisplaySettings, RelatedElement,\r\n} from \"@itwin/core-common\";\r\nimport { Point2d, Range3d } from \"@itwin/core-geometry\";\r\nimport { EntityState } from \"./EntityState\";\r\nimport { HitDetail } from \"./HitDetail\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { RealityDataSource } from \"./RealityDataSource\";\r\nimport { createOrbitGtTileTreeReference, createPrimaryTileTreeReference, createRealityTileTreeReference, TileTreeReference } from \"./tile/internal\";\r\nimport { ViewState } from \"./ViewState\";\r\nimport { SpatialClassifiersState } from \"./SpatialClassifiersState\";\n\r\n/** Represents the front-end state of a [Model]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class ModelState extends EntityState implements ModelProps {\r\n public static override get className() { return \"Model\"; }\r\n public readonly modeledElement: RelatedElement;\r\n public readonly name: string;\r\n public parentModel: Id64String;\r\n public readonly isPrivate: boolean;\r\n public readonly isTemplate: boolean;\r\n\r\n constructor(props: ModelProps, iModel: IModelConnection, state?: ModelState) {\r\n super(props, iModel, state);\r\n this.modeledElement = RelatedElement.fromJSON(props.modeledElement)!;\r\n this.name = props.name ? props.name : \"\";\r\n this.parentModel = Id64.fromJSON(props.parentModel)!; // NB! Must always match the model of the modeledElement!\r\n this.isPrivate = JsonUtils.asBool(props.isPrivate);\r\n this.isTemplate = JsonUtils.asBool(props.isTemplate);\r\n }\r\n\r\n /** Add all custom-handled properties of a Model to a json object. */\r\n public override toJSON(): ModelProps {\r\n const val = super.toJSON() as ModelProps;\r\n val.modeledElement = this.modeledElement;\r\n val.parentModel = this.parentModel;\r\n val.name = this.name;\r\n if (this.isPrivate)\r\n val.isPrivate = this.isPrivate;\r\n if (this.isTemplate)\r\n val.isTemplate = this.isTemplate;\r\n return val;\r\n }\r\n\r\n /** Determine whether this is a GeometricModel */\r\n public get isGeometricModel(): boolean { return false; }\r\n\r\n /** Attempts to cast this model to a geometric model. */\r\n public get asGeometricModel(): GeometricModelState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 3d geometric model. */\r\n public get asGeometricModel3d(): GeometricModel3dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 2d geometric model. */\r\n public get asGeometricModel2d(): GeometricModel2dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a spatial model. */\r\n public get asSpatialModel(): SpatialModelState | undefined { return undefined; }\r\n\r\n /**\r\n * Return the tool tip for this model. This is called only if the hit does not return a tooltip.\r\n * @internal\r\n */\r\n public getToolTip(_hit: HitDetail): HTMLElement | string | undefined { return undefined; }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel]($backend).\r\n * The contents of a GeometricModelState can be rendered inside a [[Viewport]].\r\n * @public\r\n * @extensions\r\n */\r\nexport abstract class GeometricModelState extends ModelState implements GeometricModelProps {\r\n public static override get className() { return \"GeometricModel\"; }\r\n /** @internal */\r\n public geometryGuid?: string;\r\n\r\n private _modelRange?: Range3d;\r\n\r\n constructor(props: GeometricModelProps, iModel: IModelConnection, state?: GeometricModelState) {\r\n super(props, iModel, state);\r\n this.geometryGuid = props.geometryGuid;\r\n }\r\n\r\n /** Returns true if this is a 3d model (a [[GeometricModel3dState]]). */\r\n public abstract get is3d(): boolean;\r\n /** @internal */\r\n public override get asGeometricModel(): GeometricModelState { return this; }\r\n /** Returns true if this is a 2d model (a [[GeometricModel2dState]]). */\r\n public get is2d(): boolean { return !this.is3d; }\r\n\r\n /** @internal */\r\n public override get isGeometricModel(): boolean { return true; }\r\n /** @internal */\r\n public get treeModelId(): Id64String { return this.id; }\r\n\r\n /** Query for the union of the ranges of all the elements in this GeometricModel.\r\n * @note This value is cached after the first time it is called.\r\n * @public\r\n */\r\n public async queryModelRange(): Promise<Range3d> {\r\n if (undefined === this._modelRange) {\r\n const ranges = await this.iModel.models.queryExtents(this.id);\r\n this._modelRange = Range3d.fromJSON(ranges[0]?.extents);\r\n }\r\n\r\n return this._modelRange;\r\n }\r\n\r\n /** @internal */\r\n public createTileTreeReference(view: ViewState): TileTreeReference {\r\n // If this is a reality model, its tile tree is obtained from reality data service URL.\r\n\r\n const spatialModel = this.asSpatialModel;\r\n const rdSourceKey = this.jsonProperties.rdSourceKey;\r\n const getDisplaySettings = () => view.displayStyle.settings.getRealityModelDisplaySettings(this.id) ?? RealityModelDisplaySettings.defaults;\r\n\r\n if (rdSourceKey) {\r\n const useOrbitGtTileTreeReference = rdSourceKey.format === RealityDataFormat.OPC;\r\n const treeRef = (!useOrbitGtTileTreeReference) ?\r\n createRealityTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // url: tilesetUrl, // If rdSourceKey is defined, url is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n getDisplaySettings,\r\n }) :\r\n createOrbitGtTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // orbitGtBlob: props.orbitGtBlob!, // If rdSourceKey is defined, orbitGtBlob is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n getDisplaySettings,\r\n });\r\n return treeRef;\r\n }\r\n\r\n const orbitGtBlob = this.jsonProperties.orbitGtBlob;\r\n\r\n // If this is an OrbitGt reality model, create it's reference\r\n if(orbitGtBlob) {\r\n let orbitGtName = \"\";\r\n if (orbitGtBlob.blobFileName !== \"\") {\r\n if (orbitGtBlob.blobFileName[0] === \"/\")\r\n orbitGtName = orbitGtBlob.blobFileName.substring(1);\r\n else\r\n orbitGtName = orbitGtBlob.blobFileName;\r\n }\r\n // Create rdSourceKey if not provided\r\n const rdSourceKeyOGT: RealityDataSourceKey = RealityDataSource.createKeyFromOrbitGtBlobProps(orbitGtBlob);\r\n\r\n return createOrbitGtTileTreeReference({\r\n rdSourceKey: rdSourceKeyOGT,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n orbitGtBlob,\r\n name: orbitGtName,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n getDisplaySettings,\r\n });\r\n }\r\n\r\n // If this is a TileTree reality model, create it's reference\r\n const tilesetUrl = this.jsonProperties.tilesetUrl;\r\n\r\n if(tilesetUrl) {\r\n const rdSourceKeyCS = RealityDataSource.createKeyFromUrl(tilesetUrl);\r\n return createRealityTileTreeReference({\r\n rdSourceKey: rdSourceKeyCS,\r\n url : tilesetUrl,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n tilesetToDbTransform: this.jsonProperties.tilesetToDbTransform,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n getDisplaySettings,\r\n });\r\n }\r\n\r\n return createPrimaryTileTreeReference(view, this);\r\n }\r\n}\r\n/** Represents the front-end state of a [GeometricModel2d]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class GeometricModel2dState extends GeometricModelState implements GeometricModel2dProps {\r\n public static override get className() { return \"GeometricModel2d\"; }\r\n /** @internal */\r\n public readonly globalOrigin: Point2d;\r\n\r\n constructor(props: GeometricModel2dProps, iModel: IModelConnection, state?: GeometricModel2dState) {\r\n super(props, iModel, state);\r\n this.globalOrigin = Point2d.fromJSON(props.globalOrigin);\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return false; }\r\n /** @internal */\r\n public override get asGeometricModel2d(): GeometricModel2dState { return this; }\r\n\r\n public override toJSON(): GeometricModel2dProps {\r\n const val = super.toJSON() as GeometricModel2dProps;\r\n val.globalOrigin = this.globalOrigin;\r\n return val;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel3d]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class GeometricModel3dState extends GeometricModelState {\r\n public static override get className() { return \"GeometricModel3d\"; }\r\n\r\n constructor(props: GeometricModel3dProps, iModel: IModelConnection, state?: GeometricModel3dState) {\r\n super(props, iModel, state);\r\n this.isNotSpatiallyLocated = JsonUtils.asBool(props.isNotSpatiallyLocated);\r\n this.isPlanProjection = JsonUtils.asBool(props.isPlanProjection);\r\n }\r\n\r\n /** @internal */\r\n public override toJSON(): GeometricModel3dProps {\r\n const val = super.toJSON() as GeometricModel3dProps;\r\n if (this.isNotSpatiallyLocated)\r\n val.isNotSpatiallyLocated = true;\r\n\r\n if (this.isPlanProjection)\r\n val.isPlanProjection = true;\r\n\r\n return val;\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return true; }\r\n /** @internal */\r\n public override get asGeometricModel3d(): GeometricModel3dState { return this; }\r\n\r\n /** If true, then the elements in this GeometricModel3dState are expected to be in an XY plane.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isPlanProjection: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are not in real-world coordinates and will not be in the spatial index.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isNotSpatiallyLocated: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are in real-world coordinates and will be in the spatial index. */\r\n public get isSpatiallyLocated(): boolean { return !this.isNotSpatiallyLocated; }\r\n}\r\n\r\n/** Represents the front-end state of a [SheetModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SheetModelState extends GeometricModel2dState {\r\n public static override get className() { return \"SheetModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SpatialModelState extends GeometricModel3dState {\r\n /** If this is a reality model, provides access to a list of available spatial classifiers that can be applied to it. */\r\n public readonly classifiers?: SpatialClassifiersState;\r\n\r\n public static override get className() { return \"SpatialModel\"; }\r\n\r\n /** @internal */\r\n public override get asSpatialModel(): SpatialModelState { return this; }\r\n\r\n public constructor(props: ModelProps, iModel: IModelConnection, state?: SpatialModelState) {\r\n super(props, iModel, state);\r\n if (this.isRealityModel)\r\n this.classifiers = SpatialClassifiersState.create(this.jsonProperties);\r\n }\r\n\r\n /** Return true if this is a reality model (represented by a 3d tile set). */\r\n public get isRealityModel(): boolean {\r\n return !!this.jsonProperties.tilesetUrl || !!this.jsonProperties.rdSourceKey || !!this.jsonProperties.orbitGtBlob;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [PhysicalModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class PhysicalModelState extends SpatialModelState {\r\n public static override get className() { return \"PhysicalModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialLocationModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SpatialLocationModelState extends SpatialModelState {\r\n public static override get className() { return \"SpatialLocationModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [DrawingModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class DrawingModelState extends GeometricModel2dState {\r\n public static override get className() { return \"DrawingModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SectionDrawingModel]($backend).\r\n * @public\r\n * @extensions\r\n */\r\nexport class SectionDrawingModelState extends DrawingModelState {\r\n public static override get className() { return \"SectionDrawingModel\"; }\r\n}\r\n"]}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Views
|
|
3
|
+
*/
|
|
4
|
+
import { SpatialClassifier, SpatialClassifierFlags, SpatialClassifiers, SpatialClassifiersContainer } from "@itwin/core-common";
|
|
5
|
+
import { TileTreeReference } from "./tile/internal";
|
|
6
|
+
/** A [SpatialClassifier]($common) that uses geoemtry produced at run-time to classify a reality model.
|
|
7
|
+
* The geometry is supplied by a [[TileTreeReference]].
|
|
8
|
+
* A simple example of creating and applying a dynamic classifier:
|
|
9
|
+
* ```ts
|
|
10
|
+
* [[include:TileTreeReference_DynamicClassifier]]
|
|
11
|
+
* ```
|
|
12
|
+
* @see [[SpatialClassifiersState]] to configure a reality model's classifiers.
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
export interface DynamicSpatialClassifier {
|
|
16
|
+
/** A reference to the [[TileTree]] that supplies the graphics used to classify the reality model.
|
|
17
|
+
* @see [[TileTreeReference.createFromRenderGraphic]] for one way to produce a tile tree reference.
|
|
18
|
+
*/
|
|
19
|
+
tileTreeReference: TileTreeReference;
|
|
20
|
+
/** Flags controlling how to apply the classifier. */
|
|
21
|
+
flags: SpatialClassifierFlags;
|
|
22
|
+
/** A user-friendly name appropriate for use in a user interface. */
|
|
23
|
+
name: string;
|
|
24
|
+
}
|
|
25
|
+
/** A [SpatialClassifier]($common) that uses geometry from a persistent [[GeometricModelState]] to classify a reality model.
|
|
26
|
+
* @see [[SpatialClassifiersState]] to configure a reality model's classifiers.
|
|
27
|
+
* @public
|
|
28
|
+
*/
|
|
29
|
+
export type PersistentSpatialClassifier = SpatialClassifier & {
|
|
30
|
+
tileTreeReference?: never;
|
|
31
|
+
};
|
|
32
|
+
/** Describes the source of geometry being used to classify a reality model.
|
|
33
|
+
* @see [[SpatialClassifiersState.activeClassifier]] to change the active classifier for a reality model.
|
|
34
|
+
* @public
|
|
35
|
+
*/
|
|
36
|
+
export type ActiveSpatialClassifier = DynamicSpatialClassifier | PersistentSpatialClassifier;
|
|
37
|
+
/** The front-end representation of [SpatialClassifiers]($common) that adds support for classifying a reality model using non-persistent
|
|
38
|
+
* geometry via [[DynamicSpatialClassifier]].
|
|
39
|
+
*
|
|
40
|
+
* @see [[ContextRealityModelState.classifiers]] or [[SpatialModelState.classifiers]] to access the classifiers for a particular reality model.
|
|
41
|
+
* @public
|
|
42
|
+
*/
|
|
43
|
+
export declare class SpatialClassifiersState extends SpatialClassifiers {
|
|
44
|
+
private _dynamicClassifier?;
|
|
45
|
+
private constructor();
|
|
46
|
+
/** The classifier currently being used to classify the reality model.
|
|
47
|
+
* This may be either a [SpatialClassifier]($common) already defined in the set of available [SpatialClassifiers]($common), or a [[DynamicSpatialClassifier]].
|
|
48
|
+
* @note Unlike [[PersistentSpatialClassifier]]s, [[DynamicSpatialClassifier]]s are not preserved when saving and recalling a view.
|
|
49
|
+
*/
|
|
50
|
+
get activeClassifier(): ActiveSpatialClassifier | undefined;
|
|
51
|
+
set activeClassifier(active: ActiveSpatialClassifier | undefined);
|
|
52
|
+
/** @internal */
|
|
53
|
+
static create(container: SpatialClassifiersContainer): SpatialClassifiersState;
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=SpatialClassifiersState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpatialClassifiersState.d.ts","sourceRoot":"","sources":["../../src/SpatialClassifiersState.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAChI,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,qDAAqD;IACrD,KAAK,EAAE,sBAAsB,CAAC;IAC9B,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,MAAM,2BAA2B,GAAG,iBAAiB,GAAG;IAAE,iBAAiB,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AAE5F;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG,wBAAwB,GAAG,2BAA2B,CAAC;AAE7F;;;;;GAKG;AACH,qBAAa,uBAAwB,SAAQ,kBAAkB;IAC7D,OAAO,CAAC,kBAAkB,CAAC,CAA2B;IAEtD,OAAO;IAIP;;;OAGG;IACH,IAAW,gBAAgB,IAAI,uBAAuB,GAAG,SAAS,CAEjE;IAED,IAAW,gBAAgB,CAAC,MAAM,EAAE,uBAAuB,GAAG,SAAS,EAWtE;IAED,gBAAgB;WACF,MAAM,CAAC,SAAS,EAAE,2BAA2B;CAG5D"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
/** @packageDocumentation
|
|
6
|
+
* @module Views
|
|
7
|
+
*/
|
|
8
|
+
import { SpatialClassifiers } from "@itwin/core-common";
|
|
9
|
+
/** The front-end representation of [SpatialClassifiers]($common) that adds support for classifying a reality model using non-persistent
|
|
10
|
+
* geometry via [[DynamicSpatialClassifier]].
|
|
11
|
+
*
|
|
12
|
+
* @see [[ContextRealityModelState.classifiers]] or [[SpatialModelState.classifiers]] to access the classifiers for a particular reality model.
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
export class SpatialClassifiersState extends SpatialClassifiers {
|
|
16
|
+
constructor(container) {
|
|
17
|
+
super(container);
|
|
18
|
+
}
|
|
19
|
+
/** The classifier currently being used to classify the reality model.
|
|
20
|
+
* This may be either a [SpatialClassifier]($common) already defined in the set of available [SpatialClassifiers]($common), or a [[DynamicSpatialClassifier]].
|
|
21
|
+
* @note Unlike [[PersistentSpatialClassifier]]s, [[DynamicSpatialClassifier]]s are not preserved when saving and recalling a view.
|
|
22
|
+
*/
|
|
23
|
+
get activeClassifier() {
|
|
24
|
+
return this._dynamicClassifier ?? this.active;
|
|
25
|
+
}
|
|
26
|
+
set activeClassifier(active) {
|
|
27
|
+
if (active === this.activeClassifier) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
this._dynamicClassifier = undefined;
|
|
31
|
+
if (active?.tileTreeReference) {
|
|
32
|
+
this._dynamicClassifier = active;
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
this.setActive(active);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/** @internal */
|
|
39
|
+
static create(container) {
|
|
40
|
+
return new SpatialClassifiersState(container);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=SpatialClassifiersState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpatialClassifiersState.js","sourceRoot":"","sources":["../../src/SpatialClassifiersState.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAA6C,kBAAkB,EAA+B,MAAM,oBAAoB,CAAC;AAmChI;;;;;GAKG;AACH,MAAM,OAAO,uBAAwB,SAAQ,kBAAkB;IAG7D,YAAoB,SAAsC;QACxD,KAAK,CAAC,SAAS,CAAC,CAAC;IACnB,CAAC;IAED;;;OAGG;IACH,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC;IAChD,CAAC;IAED,IAAW,gBAAgB,CAAC,MAA2C;QACrE,IAAI,MAAM,KAAK,IAAI,CAAC,gBAAgB,EAAE;YACpC,OAAO;SACR;QAED,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;QACpC,IAAI,MAAM,EAAE,iBAAiB,EAAE;YAC7B,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC;SAClC;aAAM;YACL,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;SACxB;IACH,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,MAAM,CAAC,SAAsC;QACzD,OAAO,IAAI,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Views\r\n */\r\n\r\nimport { SpatialClassifier, SpatialClassifierFlags, SpatialClassifiers, SpatialClassifiersContainer } from \"@itwin/core-common\";\r\nimport { TileTreeReference } from \"./tile/internal\";\r\n\r\n/** A [SpatialClassifier]($common) that uses geoemtry produced at run-time to classify a reality model.\r\n * The geometry is supplied by a [[TileTreeReference]].\r\n * A simple example of creating and applying a dynamic classifier:\r\n * ```ts\r\n * [[include:TileTreeReference_DynamicClassifier]]\r\n * ```\r\n * @see [[SpatialClassifiersState]] to configure a reality model's classifiers.\r\n * @public\r\n */\r\nexport interface DynamicSpatialClassifier {\r\n /** A reference to the [[TileTree]] that supplies the graphics used to classify the reality model.\r\n * @see [[TileTreeReference.createFromRenderGraphic]] for one way to produce a tile tree reference.\r\n */\r\n tileTreeReference: TileTreeReference;\r\n /** Flags controlling how to apply the classifier. */\r\n flags: SpatialClassifierFlags;\r\n /** A user-friendly name appropriate for use in a user interface. */\r\n name: string;\r\n}\r\n\r\n/** A [SpatialClassifier]($common) that uses geometry from a persistent [[GeometricModelState]] to classify a reality model.\r\n * @see [[SpatialClassifiersState]] to configure a reality model's classifiers.\r\n * @public\r\n */\r\nexport type PersistentSpatialClassifier = SpatialClassifier & { tileTreeReference?: never };\r\n\r\n/** Describes the source of geometry being used to classify a reality model.\r\n * @see [[SpatialClassifiersState.activeClassifier]] to change the active classifier for a reality model.\r\n * @public\r\n */\r\nexport type ActiveSpatialClassifier = DynamicSpatialClassifier | PersistentSpatialClassifier;\r\n\r\n/** The front-end representation of [SpatialClassifiers]($common) that adds support for classifying a reality model using non-persistent\r\n * geometry via [[DynamicSpatialClassifier]].\r\n *\r\n * @see [[ContextRealityModelState.classifiers]] or [[SpatialModelState.classifiers]] to access the classifiers for a particular reality model.\r\n * @public\r\n */\r\nexport class SpatialClassifiersState extends SpatialClassifiers {\r\n private _dynamicClassifier?: DynamicSpatialClassifier;\r\n\r\n private constructor(container: SpatialClassifiersContainer) {\r\n super(container);\r\n }\r\n\r\n /** The classifier currently being used to classify the reality model.\r\n * This may be either a [SpatialClassifier]($common) already defined in the set of available [SpatialClassifiers]($common), or a [[DynamicSpatialClassifier]].\r\n * @note Unlike [[PersistentSpatialClassifier]]s, [[DynamicSpatialClassifier]]s are not preserved when saving and recalling a view.\r\n */\r\n public get activeClassifier(): ActiveSpatialClassifier | undefined {\r\n return this._dynamicClassifier ?? this.active;\r\n }\r\n\r\n public set activeClassifier(active: ActiveSpatialClassifier | undefined) {\r\n if (active === this.activeClassifier) {\r\n return;\r\n }\r\n\r\n this._dynamicClassifier = undefined;\r\n if (active?.tileTreeReference) {\r\n this._dynamicClassifier = active;\r\n } else {\r\n this.setActive(active);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public static create(container: SpatialClassifiersContainer) {\r\n return new SpatialClassifiersState(container);\r\n }\r\n}\r\n\r\n"]}
|
package/lib/esm/ViewContext.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Id64String } from "@itwin/core-bentley";
|
|
5
5
|
import { Matrix3d, Point2d, Point3d, Range1d, Transform, XAndY } from "@itwin/core-geometry";
|
|
6
|
-
import { Frustum, FrustumPlanes,
|
|
6
|
+
import { Frustum, FrustumPlanes, ViewFlags } from "@itwin/core-common";
|
|
7
7
|
import { DecorationsCache } from "./DecorationsCache";
|
|
8
8
|
import { PlanarClipMaskState } from "./PlanarClipMaskState";
|
|
9
9
|
import { CanvasDecoration } from "./render/CanvasDecoration";
|
|
@@ -18,6 +18,7 @@ import { Scene } from "./render/Scene";
|
|
|
18
18
|
import { SpatialClassifierTileTreeReference, Tile, TileGraphicType, TileTreeReference } from "./tile/internal";
|
|
19
19
|
import { ViewingSpace } from "./ViewingSpace";
|
|
20
20
|
import { ScreenViewport, Viewport, ViewportDecorator } from "./Viewport";
|
|
21
|
+
import { ActiveSpatialClassifier } from "./SpatialClassifiersState";
|
|
21
22
|
/** Provides context for producing [[RenderGraphic]]s for drawing within a [[Viewport]].
|
|
22
23
|
* @public
|
|
23
24
|
* @extensions
|
|
@@ -202,6 +203,6 @@ export declare class SceneContext extends RenderContext {
|
|
|
202
203
|
/** @internal */
|
|
203
204
|
get textureDrapes(): Map<string, RenderTextureDrape>;
|
|
204
205
|
/** @internal */
|
|
205
|
-
setVolumeClassifier(classifier:
|
|
206
|
+
setVolumeClassifier(classifier: ActiveSpatialClassifier, modelId: Id64String): void;
|
|
206
207
|
}
|
|
207
208
|
//# sourceMappingURL=ViewContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewContext.d.ts","sourceRoot":"","sources":["../../src/ViewContext.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAU,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACL,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EACnC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"ViewContext.d.ts","sourceRoot":"","sources":["../../src/ViewContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewContext.js","sourceRoot":"","sources":["../../src/ViewContext.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Rendering\r\n */\r\n\r\nimport { assert, Id64String } from \"@itwin/core-bentley\";\r\nimport {\r\n Matrix3d, Point2d,\r\n Point3d, Range1d, Transform, XAndY,\r\n} from \"@itwin/core-geometry\";\r\nimport { Frustum, FrustumPlanes, SpatialClassifier, ViewFlags } from \"@itwin/core-common\";\r\nimport { CachedDecoration, DecorationsCache } from \"./DecorationsCache\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { PlanarClipMaskState } from \"./PlanarClipMaskState\";\r\nimport { CanvasDecoration } from \"./render/CanvasDecoration\";\r\nimport { Decorations } from \"./render/Decorations\";\r\nimport { GraphicBranch, GraphicBranchOptions } from \"./render/GraphicBranch\";\r\nimport { GraphicBuilder, GraphicType, ViewportGraphicBuilderOptions } from \"./render/GraphicBuilder\";\r\nimport { GraphicList, RenderGraphic } from \"./render/RenderGraphic\";\r\nimport { RenderPlanarClassifier } from \"./render/RenderPlanarClassifier\";\r\nimport { RenderSystem, RenderTextureDrape } from \"./render/RenderSystem\";\r\nimport { RenderTarget } from \"./render/RenderTarget\";\r\nimport { Scene } from \"./render/Scene\";\r\nimport { SpatialClassifierTileTreeReference, Tile, TileGraphicType, TileLoadStatus, TileTreeReference } from \"./tile/internal\";\r\nimport { ViewingSpace } from \"./ViewingSpace\";\r\nimport { ELEMENT_MARKED_FOR_REMOVAL, ScreenViewport, Viewport, ViewportDecorator } from \"./Viewport\";\r\n\r\n/** Provides context for producing [[RenderGraphic]]s for drawing within a [[Viewport]].\r\n * @public\r\n * @extensions\r\n */\r\nexport class RenderContext {\r\n /** ViewFlags extracted from the context's [[Viewport]]. */\r\n public readonly viewFlags: ViewFlags;\r\n private readonly _viewport: Viewport;\r\n /** Frustum extracted from the context's [[Viewport]]. */\r\n public readonly frustum: Frustum;\r\n /** Frustum planes extracted from the context's [[Viewport]]. */\r\n public readonly frustumPlanes: FrustumPlanes;\r\n\r\n constructor(vp: Viewport, frustum?: Frustum) {\r\n this._viewport = vp;\r\n this.viewFlags = vp.viewFlags;\r\n this.frustum = frustum ? frustum : vp.getFrustum();\r\n this.frustumPlanes = FrustumPlanes.fromFrustum(this.frustum);\r\n }\r\n\r\n /** Given a point in world coordinates, determine approximately how many pixels it occupies on screen based on this context's frustum. */\r\n public getPixelSizeAtPoint(inPoint?: Point3d): number {\r\n return this.viewport.viewingSpace.getPixelSizeAtPoint(inPoint);\r\n }\r\n\r\n /** The [[Viewport]] associated with this context. */\r\n public get viewport(): Viewport {\r\n return this._viewport;\r\n }\r\n\r\n /** The [[RenderSystem]] being used to produce graphics for this context. */\r\n public get renderSystem(): RenderSystem {\r\n return this.target.renderSystem;\r\n }\r\n\r\n /** @internal */\r\n public get target(): RenderTarget { return this.viewport.target; }\r\n\r\n /** @internal */\r\n protected _createGraphicBuilder(options: Omit<ViewportGraphicBuilderOptions, \"viewport\">): GraphicBuilder {\r\n return this.target.createGraphicBuilder({ ...options, viewport: this.viewport });\r\n }\r\n\r\n /** Create a builder for creating a [[GraphicType.Scene]] [[RenderGraphic]] for rendering within this context's [[Viewport]].\r\n * @param transform the local-to-world transform in which the builder's geometry is to be defined.\r\n * @returns A builder for creating a [[GraphicType.Scene]] [[RenderGraphic]] for rendering within this context's [[Viewport]].\r\n */\r\n public createSceneGraphicBuilder(transform?: Transform): GraphicBuilder {\r\n return this._createGraphicBuilder({ type: GraphicType.Scene, placement: transform });\r\n }\r\n\r\n /** Create a graphic from a [[GraphicBranch]]. */\r\n public createGraphicBranch(branch: GraphicBranch, location: Transform, opts?: GraphicBranchOptions): RenderGraphic {\r\n return this.target.renderSystem.createGraphicBranch(branch, location, opts);\r\n }\r\n\r\n /** Create a [[RenderGraphic]] which groups a set of graphics into a node in a scene graph, applying to each a transform and optional clip volume and symbology overrides.\r\n * @param branch Contains the group of graphics and the symbology overrides.\r\n * @param location the local-to-world transform applied to the grouped graphics.\r\n * @returns A RenderGraphic suitable for drawing the scene graph node within this context's [[Viewport]].\r\n * @see [[RenderSystem.createBranch]]\r\n */\r\n public createBranch(branch: GraphicBranch, location: Transform): RenderGraphic { return this.createGraphicBranch(branch, location); }\r\n\r\n /** Given the size of a logical pixel in meters, convert it to the size of a physical pixel in meters, if [[RenderSystem.dpiAwareLOD]] is `true`.\r\n * Used when computing LOD for graphics.\r\n * @internal\r\n */\r\n public adjustPixelSizeForLOD(cssPixelSize: number): number {\r\n return this.viewport.target.adjustPixelSizeForLOD(cssPixelSize);\r\n }\r\n}\r\n\r\n/** Provides context for an [[InteractiveTool]] to display decorations representing its current state.\r\n * @see [[InteractiveTool.onDynamicFrame]]\r\n * @public\r\n */\r\nexport class DynamicsContext extends RenderContext {\r\n private _dynamics?: GraphicList;\r\n\r\n /** Add a graphic to the list of dynamic graphics to be drawn in this context's [[Viewport]]. */\r\n public addGraphic(graphic: RenderGraphic) {\r\n if (undefined === this._dynamics)\r\n this._dynamics = [];\r\n this._dynamics.push(graphic);\r\n }\r\n\r\n /** @internal */\r\n public changeDynamics(): void {\r\n this.viewport.changeDynamics(this._dynamics);\r\n }\r\n\r\n /** Create a builder for producing a [[RenderGraphic]] appropriate for rendering within this context's [[Viewport]].\r\n * @param options Options describing how to create the builder.\r\n * @returns A builder that produces a [[RenderGraphic]].\r\n */\r\n public createGraphic(options: Omit<ViewportGraphicBuilderOptions, \"viewport\">): GraphicBuilder {\r\n return this._createGraphicBuilder(options);\r\n }\r\n}\r\n\r\n/** Arguments supplied to [[DecorateContext.create]].\r\n * @public\r\n */\r\nexport interface DecorateContextCreateArgs {\r\n /** The viewport to be decorated. */\r\n viewport: ScreenViewport;\r\n /** The set of decoration graphics to be populated by the context. */\r\n output: Decorations;\r\n /** Optional cache. If omitted, one will be created.\r\n * @internal\r\n */\r\n cache?: DecorationsCache;\r\n}\r\n\r\n/** Provides context for a [[ViewportDecorator]] to add [[Decorations]] to be rendered within a [[Viewport]].\r\n * @public\r\n * @extensions\r\n */\r\nexport class DecorateContext extends RenderContext {\r\n private readonly _decorations: Decorations;\r\n private readonly _cache: DecorationsCache;\r\n private _curCacheableDecorator?: ViewportDecorator;\r\n\r\n /** The [[ScreenViewport]] in which this context's [[Decorations]] will be drawn. */\r\n public override get viewport(): ScreenViewport {\r\n return super.viewport as ScreenViewport;\r\n }\r\n\r\n /** @internal */\r\n constructor(vp: ScreenViewport, decorations: Decorations, cache: DecorationsCache) {\r\n super(vp);\r\n this._decorations = decorations;\r\n this._cache = cache;\r\n }\r\n\r\n /** Create a new DecorateContext.\r\n * @param args Describes the inputs to the context.\r\n * @note Typically the [[ScreenViewport]] takes care of creating the context for you.\r\n * @public\r\n */\r\n public static create(args: DecorateContextCreateArgs): DecorateContext {\r\n return new DecorateContext(args.viewport, args.output, args.cache ?? new DecorationsCache());\r\n }\r\n\r\n /** Create a builder for creating a [[RenderGraphic]] of the specified type appropriate for rendering within this context's [[Viewport]].\r\n * @param type The type of builder to create.\r\n * @param transform the local-to-world transform in which the builder's geometry is to be defined.\r\n * @param id If the decoration is to be pickable, a unique identifier to associate with the resultant [[RenderGraphic]].\r\n * @returns A builder for creating a [[RenderGraphic]] of the specified type appropriate for rendering within this context's [[Viewport]].\r\n * @see [[IModelConnection.transientIds]] for obtaining an ID for a pickable decoration.\r\n * @see [[createGraphic]] for more options.\r\n */\r\n public createGraphicBuilder(type: GraphicType, transform?: Transform, id?: Id64String): GraphicBuilder {\r\n return this.createGraphic({ type, placement: transform, pickable: undefined !== id ? { id } : undefined });\r\n }\r\n\r\n /** Create a builder for producing a [[RenderGraphic]] appropriate for rendering within this context's [[Viewport]].\r\n * @param options Options describing how to create the builder.\r\n * @returns A builder that produces a [[RenderGraphic]].\r\n */\r\n public createGraphic(options: Omit<ViewportGraphicBuilderOptions, \"viewport\">): GraphicBuilder {\r\n return this._createGraphicBuilder(options);\r\n }\r\n\r\n /** @internal */\r\n public addFromDecorator(decorator: ViewportDecorator): void {\r\n assert(undefined === this._curCacheableDecorator);\r\n try {\r\n if (decorator.useCachedDecorations) {\r\n const cached = this._cache.get(decorator);\r\n if (cached) {\r\n this.restoreCache(cached);\r\n return;\r\n }\r\n\r\n this._curCacheableDecorator = decorator;\r\n }\r\n\r\n decorator.decorate(this);\r\n } finally {\r\n this._curCacheableDecorator = undefined;\r\n }\r\n }\r\n\r\n /** Restores decorations onto this context from the specified array of cached decorations. */\r\n private restoreCache(cachedDecorations: CachedDecoration[]) {\r\n cachedDecorations.forEach((cachedDecoration) => {\r\n switch (cachedDecoration.type) {\r\n case \"graphic\":\r\n this.addDecoration(cachedDecoration.graphicType, cachedDecoration.graphicOwner);\r\n break;\r\n case \"canvas\":\r\n this.addCanvasDecoration(cachedDecoration.canvasDecoration, cachedDecoration.atFront);\r\n break;\r\n case \"html\":\r\n this.addHtmlDecoration(cachedDecoration.htmlElement);\r\n break;\r\n }\r\n });\r\n }\r\n\r\n private _appendToCache(decoration: CachedDecoration) {\r\n assert(undefined !== this._curCacheableDecorator);\r\n this._cache.add(this._curCacheableDecorator, decoration);\r\n }\r\n\r\n /** Calls [[GraphicBuilder.finish]] on the supplied builder to obtain a [[RenderGraphic]], then adds the graphic to the appropriate list of\r\n * [[Decorations]].\r\n * @param builder The builder from which to extract the graphic.\r\n * @note The builder should not be used after calling this method.\r\n */\r\n public addDecorationFromBuilder(builder: GraphicBuilder) {\r\n this.addDecoration(builder.type, builder.finish());\r\n }\r\n\r\n /** Adds a graphic to the set of [[Decorations]] to be drawn in this context's [[ScreenViewport]].\r\n * @param The type of the graphic, which determines to which list of decorations it is added.\r\n * @param decoration The decoration graphic to add.\r\n * @note The type must match the type with which the [[RenderGraphic]]'s [[GraphicBuilder]] was constructed.\r\n * @see [[DecorateContext.addDecorationFromBuilder]] for a more convenient API.\r\n */\r\n public addDecoration(type: GraphicType, decoration: RenderGraphic) {\r\n if (this._curCacheableDecorator) {\r\n const graphicOwner = this.target.renderSystem.createGraphicOwner(decoration);\r\n this._appendToCache({ type: \"graphic\", graphicOwner, graphicType: type });\r\n decoration = graphicOwner;\r\n }\r\n\r\n switch (type) {\r\n case GraphicType.Scene:\r\n if (undefined === this._decorations.normal)\r\n this._decorations.normal = [];\r\n this._decorations.normal.push(decoration);\r\n break;\r\n\r\n case GraphicType.WorldDecoration:\r\n if (!this._decorations.world)\r\n this._decorations.world = [];\r\n this._decorations.world.push(decoration);\r\n break;\r\n\r\n case GraphicType.WorldOverlay:\r\n if (!this._decorations.worldOverlay)\r\n this._decorations.worldOverlay = [];\r\n this._decorations.worldOverlay.push(decoration);\r\n break;\r\n\r\n case GraphicType.ViewOverlay:\r\n if (!this._decorations.viewOverlay)\r\n this._decorations.viewOverlay = [];\r\n this._decorations.viewOverlay.push(decoration);\r\n break;\r\n\r\n case GraphicType.ViewBackground:\r\n this.setViewBackground(decoration);\r\n break;\r\n }\r\n }\r\n\r\n /** Add a [[CanvasDecoration]] to be drawn in this context's [[ScreenViewport]]. */\r\n public addCanvasDecoration(decoration: CanvasDecoration, atFront = false) {\r\n if (this._curCacheableDecorator)\r\n this._appendToCache({ type: \"canvas\", canvasDecoration: decoration, atFront });\r\n\r\n if (undefined === this._decorations.canvasDecorations)\r\n this._decorations.canvasDecorations = [];\r\n\r\n const list = this._decorations.canvasDecorations;\r\n if (0 === list.length || true === atFront)\r\n list.push(decoration);\r\n else\r\n list.unshift(decoration);\r\n }\r\n\r\n /** Add an HTMLElement to be drawn as a decoration in this context's [[ScreenViewport]]. */\r\n public addHtmlDecoration(decoration: HTMLElement) {\r\n if (this._curCacheableDecorator)\r\n this._appendToCache({ type: \"html\", htmlElement: decoration });\r\n\r\n // an element decoration being added might already be on the decorationDiv, just marked for removal\r\n if (decoration[ELEMENT_MARKED_FOR_REMOVAL]) {\r\n decoration[ELEMENT_MARKED_FOR_REMOVAL] = false;\r\n } else if (decoration.parentElement !== this.viewport.decorationDiv) {\r\n this.viewport.decorationDiv.appendChild(decoration);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public drawStandardGrid(gridOrigin: Point3d, rMatrix: Matrix3d, spacing: XAndY, gridsPerRef: number, _isoGrid: boolean = false, _fixedRepetitions?: Point2d): void {\r\n const vp = this.viewport;\r\n\r\n if (vp.viewingGlobe)\r\n return;\r\n\r\n const color = vp.getContrastToBackgroundColor();\r\n const planarGrid = this.viewport.target.renderSystem.createPlanarGrid(vp.getFrustum(), { origin: gridOrigin, rMatrix, spacing, gridsPerRef, color });\r\n if (planarGrid) {\r\n this.addDecoration(GraphicType.WorldDecoration, planarGrid);\r\n }\r\n }\r\n\r\n /** Display skyBox graphic that encompasses entire scene and rotates with camera.\r\n * @see [[RenderSystem.createSkyBox]].\r\n */\r\n public setSkyBox(graphic: RenderGraphic) {\r\n this._decorations.skyBox = graphic;\r\n }\r\n\r\n /** Set the graphic to be displayed behind all other geometry as the background of this context's [[ScreenViewport]]. */\r\n public setViewBackground(graphic: RenderGraphic) {\r\n this._decorations.viewBackground = graphic;\r\n }\r\n}\r\n\r\n/** Context used to create the scene to be drawn in a [[Viewport]]. The scene consists of a set of [[RenderGraphic]]s produced by the\r\n * [[TileTree]]s visible within the viewport. Creating the scene may result in the enqueueing of requests for [[Tile]] content which\r\n * should be displayed in the viewport but are not yet loaded.\r\n * @public\r\n */\r\nexport class SceneContext extends RenderContext {\r\n private _missingChildTiles = false;\r\n /** The graphics comprising the scene. */\r\n public readonly scene = new Scene();\r\n\r\n /** @internal */\r\n public readonly missingTiles = new Set<Tile>();\r\n\r\n /** @internal */\r\n public markChildrenLoading(): void {\r\n this._missingChildTiles = true;\r\n }\r\n\r\n /** @internal */\r\n public get hasMissingTiles(): boolean {\r\n return this._missingChildTiles || this.missingTiles.size > 0;\r\n }\r\n\r\n private _viewingSpace?: ViewingSpace;\r\n private _graphicType: TileGraphicType = TileGraphicType.Scene;\r\n\r\n public constructor(vp: Viewport, frustum?: Frustum) {\r\n super(vp, frustum);\r\n }\r\n\r\n /** The viewed volume containing the scene. */\r\n public get viewingSpace(): ViewingSpace {\r\n return undefined !== this._viewingSpace ? this._viewingSpace : this.viewport.viewingSpace;\r\n }\r\n\r\n /** @internal */\r\n public get graphicType() { return this._graphicType; }\r\n\r\n /** Add the specified graphic to the scene. */\r\n public outputGraphic(graphic: RenderGraphic): void {\r\n switch (this._graphicType) {\r\n case TileGraphicType.BackgroundMap:\r\n this.backgroundGraphics.push(graphic);\r\n break;\r\n case TileGraphicType.Overlay:\r\n this.overlayGraphics.push(graphic);\r\n break;\r\n default:\r\n this.graphics.push(graphic);\r\n break;\r\n }\r\n }\r\n\r\n /** Indicate that the specified tile is desired for the scene but is not yet ready. A request to load its contents will later be enqueued. */\r\n public insertMissingTile(tile: Tile): void {\r\n switch (tile.loadStatus) {\r\n case TileLoadStatus.NotLoaded:\r\n case TileLoadStatus.Queued:\r\n case TileLoadStatus.Loading:\r\n this.missingTiles.add(tile);\r\n break;\r\n }\r\n }\r\n\r\n /** @internal */\r\n public requestMissingTiles(): void {\r\n IModelApp.tileAdmin.requestTiles(this.viewport, this.missingTiles);\r\n }\r\n\r\n /** @internal */\r\n public addPlanarClassifier(classifiedModelId: Id64String, classifierTree?: SpatialClassifierTileTreeReference, planarClipMask?: PlanarClipMaskState): RenderPlanarClassifier | undefined {\r\n // Target may have the classifier from a previous frame; if not we must create one.\r\n let classifier = this.viewport.target.getPlanarClassifier(classifiedModelId);\r\n if (undefined === classifier)\r\n classifier = this.viewport.target.createPlanarClassifier(classifierTree?.activeClassifier);\r\n\r\n // Either way, we need to collect the graphics to draw for this frame, and record that we did so.\r\n if (undefined !== classifier) {\r\n this.planarClassifiers.set(classifiedModelId, classifier);\r\n classifier.setSource(classifierTree, planarClipMask);\r\n }\r\n\r\n return classifier;\r\n }\r\n\r\n /** @internal */\r\n public getPlanarClassifierForModel(modelId: Id64String) {\r\n return this.planarClassifiers.get(modelId);\r\n }\r\n\r\n /** @internal */\r\n public addBackgroundDrapedModel(drapedTreeRef: TileTreeReference, _heightRange: Range1d | undefined): RenderTextureDrape | undefined {\r\n const drapedTree = drapedTreeRef.treeOwner.tileTree;\r\n if (undefined === drapedTree)\r\n return undefined;\r\n\r\n const id = drapedTree.modelId;\r\n let drape = this.getTextureDrapeForModel(id);\r\n if (undefined !== drape)\r\n return drape;\r\n\r\n drape = this.viewport.target.getTextureDrape(id);\r\n if (undefined === drape && this.viewport.backgroundDrapeMap)\r\n drape = this.viewport.target.renderSystem.createBackgroundMapDrape(drapedTreeRef, this.viewport.backgroundDrapeMap);\r\n\r\n if (undefined !== drape)\r\n this.textureDrapes.set(id, drape);\r\n\r\n return drape;\r\n }\r\n\r\n /** @internal */\r\n public getTextureDrapeForModel(modelId: Id64String) {\r\n return this.textureDrapes.get(modelId);\r\n }\r\n\r\n /** @internal */\r\n public withGraphicType(type: TileGraphicType, func: () => void): void {\r\n const prevType = this._graphicType;\r\n this._graphicType = type;\r\n\r\n func();\r\n\r\n this._graphicType = prevType;\r\n }\r\n\r\n /** The graphics in the scene that will be drawn with depth. */\r\n public get graphics() { return this.scene.foreground; }\r\n /** The graphics that will be drawn behind everything else in the scene. */\r\n public get backgroundGraphics() { return this.scene.background; }\r\n /** The graphics that will be drawn in front of everything else in the scene. */\r\n public get overlayGraphics() { return this.scene.overlay; }\r\n /** @internal */\r\n public get planarClassifiers() { return this.scene.planarClassifiers; }\r\n /** @internal */\r\n public get textureDrapes() { return this.scene.textureDrapes; }\r\n\r\n /** @internal */\r\n public setVolumeClassifier(classifier: SpatialClassifier, modelId: Id64String): void {\r\n this.scene.volumeClassifier = { classifier, modelId };\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ViewContext.js","sourceRoot":"","sources":["../../src/ViewContext.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAc,MAAM,qBAAqB,CAAC;AAKzD,OAAO,EAAW,aAAa,EAAa,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAoB,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAKxC,OAAO,EAAkB,WAAW,EAAiC,MAAM,yBAAyB,CAAC;AAKrG,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAA4C,eAAe,EAAE,cAAc,EAAqB,MAAM,iBAAiB,CAAC;AAE/H,OAAO,EAAE,0BAA0B,EAA+C,MAAM,YAAY,CAAC;AAGrG;;;GAGG;AACH,MAAM,OAAO,aAAa;IASxB,YAAY,EAAY,EAAE,OAAiB;QACzC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;QACnD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED,yIAAyI;IAClI,mBAAmB,CAAC,OAAiB;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACjE,CAAC;IAED,qDAAqD;IACrD,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,4EAA4E;IAC5E,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;IAClC,CAAC;IAED,gBAAgB;IAChB,IAAW,MAAM,KAAmB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAElE,gBAAgB;IACN,qBAAqB,CAAC,OAAwD;QACtF,OAAO,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnF,CAAC;IAED;;;OAGG;IACI,yBAAyB,CAAC,SAAqB;QACpD,OAAO,IAAI,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,iDAAiD;IAC1C,mBAAmB,CAAC,MAAqB,EAAE,QAAmB,EAAE,IAA2B;QAChG,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;OAKG;IACI,YAAY,CAAC,MAAqB,EAAE,QAAmB,IAAmB,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IAErI;;;OAGG;IACI,qBAAqB,CAAC,YAAoB;QAC/C,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAClE,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,eAAgB,SAAQ,aAAa;IAGhD,gGAAgG;IACzF,UAAU,CAAC,OAAsB;QACtC,IAAI,SAAS,KAAK,IAAI,CAAC,SAAS;YAC9B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,gBAAgB;IACT,cAAc;QACnB,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,OAAwD;QAC3E,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;CACF;AAgBD;;;GAGG;AACH,MAAM,OAAO,eAAgB,SAAQ,aAAa;IAKhD,oFAAoF;IACpF,IAAoB,QAAQ;QAC1B,OAAO,KAAK,CAAC,QAA0B,CAAC;IAC1C,CAAC;IAED,gBAAgB;IAChB,YAAY,EAAkB,EAAE,WAAwB,EAAE,KAAuB;QAC/E,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,MAAM,CAAC,IAA+B;QAClD,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,gBAAgB,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED;;;;;;;OAOG;IACI,oBAAoB,CAAC,IAAiB,EAAE,SAAqB,EAAE,EAAe;QACnF,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;IAC7G,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,OAAwD;QAC3E,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,gBAAgB;IACT,gBAAgB,CAAC,SAA4B;QAClD,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAClD,IAAI;YACF,IAAI,SAAS,CAAC,oBAAoB,EAAE;gBAClC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC1C,IAAI,MAAM,EAAE;oBACV,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;oBAC1B,OAAO;iBACR;gBAED,IAAI,CAAC,sBAAsB,GAAG,SAAS,CAAC;aACzC;YAED,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SAC1B;gBAAS;YACR,IAAI,CAAC,sBAAsB,GAAG,SAAS,CAAC;SACzC;IACH,CAAC;IAED,6FAA6F;IACrF,YAAY,CAAC,iBAAqC;QACxD,iBAAiB,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,EAAE;YAC7C,QAAQ,gBAAgB,CAAC,IAAI,EAAE;gBAC7B,KAAK,SAAS;oBACZ,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;oBAChF,MAAM;gBACR,KAAK,QAAQ;oBACX,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;oBACtF,MAAM;gBACR,KAAK,MAAM;oBACT,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;oBACrD,MAAM;aACT;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,cAAc,CAAC,UAA4B;QACjD,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,EAAE,UAAU,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACI,wBAAwB,CAAC,OAAuB;QACrD,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACI,aAAa,CAAC,IAAiB,EAAE,UAAyB;QAC/D,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAC7E,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1E,UAAU,GAAG,YAAY,CAAC;SAC3B;QAED,QAAQ,IAAI,EAAE;YACZ,KAAK,WAAW,CAAC,KAAK;gBACpB,IAAI,SAAS,KAAK,IAAI,CAAC,YAAY,CAAC,MAAM;oBACxC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,EAAE,CAAC;gBAChC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC1C,MAAM;YAER,KAAK,WAAW,CAAC,eAAe;gBAC9B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK;oBAC1B,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,EAAE,CAAC;gBAC/B,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACzC,MAAM;YAER,KAAK,WAAW,CAAC,YAAY;gBAC3B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY;oBACjC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,EAAE,CAAC;gBACtC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAChD,MAAM;YAER,KAAK,WAAW,CAAC,WAAW;gBAC1B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW;oBAChC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,EAAE,CAAC;gBACrC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC/C,MAAM;YAER,KAAK,WAAW,CAAC,cAAc;gBAC7B,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBACnC,MAAM;SACT;IACH,CAAC;IAED,mFAAmF;IAC5E,mBAAmB,CAAC,UAA4B,EAAE,OAAO,GAAG,KAAK;QACtE,IAAI,IAAI,CAAC,sBAAsB;YAC7B,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;QAEjF,IAAI,SAAS,KAAK,IAAI,CAAC,YAAY,CAAC,iBAAiB;YACnD,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,EAAE,CAAC;QAE3C,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC;QACjD,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,IAAI,IAAI,KAAK,OAAO;YACvC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;;YAEtB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IAED,2FAA2F;IACpF,iBAAiB,CAAC,UAAuB;QAC9C,IAAI,IAAI,CAAC,sBAAsB;YAC7B,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QAEjE,mGAAmG;QACnG,IAAI,UAAU,CAAC,0BAA0B,CAAC,EAAE;YAC1C,UAAU,CAAC,0BAA0B,CAAC,GAAG,KAAK,CAAC;SAChD;aAAM,IAAI,UAAU,CAAC,aAAa,KAAK,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE;YACnE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;SACrD;IACH,CAAC;IAED,gBAAgB;IACT,gBAAgB,CAAC,UAAmB,EAAE,OAAiB,EAAE,OAAc,EAAE,WAAmB,EAAE,WAAoB,KAAK,EAAE,iBAA2B;QACzJ,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEzB,IAAI,EAAE,CAAC,YAAY;YACjB,OAAO;QAET,MAAM,KAAK,GAAG,EAAE,CAAC,4BAA4B,EAAE,CAAC;QAChD,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QACrJ,IAAI,UAAU,EAAE;YACd,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;SAC7D;IACH,CAAC;IAED;;OAEG;IACI,SAAS,CAAC,OAAsB;QACrC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,OAAO,CAAC;IACrC,CAAC;IAED,wHAAwH;IACjH,iBAAiB,CAAC,OAAsB;QAC7C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,OAAO,CAAC;IAC7C,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,YAAa,SAAQ,aAAa;IAQ7C,gBAAgB;IACT,mBAAmB;QACxB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;IACjC,CAAC;IAED,gBAAgB;IAChB,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,CAAC;IAC/D,CAAC;IAKD,YAAmB,EAAY,EAAE,OAAiB;QAChD,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QArBb,uBAAkB,GAAG,KAAK,CAAC;QACnC,yCAAyC;QACzB,UAAK,GAAG,IAAI,KAAK,EAAE,CAAC;QAEpC,gBAAgB;QACA,iBAAY,GAAG,IAAI,GAAG,EAAQ,CAAC;QAavC,iBAAY,GAAoB,eAAe,CAAC,KAAK,CAAC;IAI9D,CAAC;IAED,8CAA8C;IAC9C,IAAW,YAAY;QACrB,OAAO,SAAS,KAAK,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;IAC5F,CAAC;IAED,gBAAgB;IAChB,IAAW,WAAW,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAEtD,8CAA8C;IACvC,aAAa,CAAC,OAAsB;QACzC,QAAQ,IAAI,CAAC,YAAY,EAAE;YACzB,KAAK,eAAe,CAAC,aAAa;gBAChC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACtC,MAAM;YACR,KAAK,eAAe,CAAC,OAAO;gBAC1B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACnC,MAAM;YACR;gBACE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC5B,MAAM;SACT;IACH,CAAC;IAED,6IAA6I;IACtI,iBAAiB,CAAC,IAAU;QACjC,QAAQ,IAAI,CAAC,UAAU,EAAE;YACvB,KAAK,cAAc,CAAC,SAAS,CAAC;YAC9B,KAAK,cAAc,CAAC,MAAM,CAAC;YAC3B,KAAK,cAAc,CAAC,OAAO;gBACzB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC5B,MAAM;SACT;IACH,CAAC;IAED,gBAAgB;IACT,mBAAmB;QACxB,SAAS,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACrE,CAAC;IAED,gBAAgB;IACT,mBAAmB,CAAC,iBAA6B,EAAE,cAAmD,EAAE,cAAoC;QACjJ,mFAAmF;QACnF,IAAI,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;QAC7E,IAAI,SAAS,KAAK,UAAU;YAC1B,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,sBAAsB,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;QAE7F,iGAAiG;QACjG,IAAI,SAAS,KAAK,UAAU,EAAE;YAC5B,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;YAC1D,UAAU,CAAC,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;SACtD;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,gBAAgB;IACT,2BAA2B,CAAC,OAAmB;QACpD,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,gBAAgB;IACT,wBAAwB,CAAC,aAAgC,EAAE,YAAiC;QACjG,MAAM,UAAU,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC;QACpD,IAAI,SAAS,KAAK,UAAU;YAC1B,OAAO,SAAS,CAAC;QAEnB,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC;QAC9B,IAAI,KAAK,GAAG,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,SAAS,KAAK,KAAK;YACrB,OAAO,KAAK,CAAC;QAEf,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACjD,IAAI,SAAS,KAAK,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB;YACzD,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,wBAAwB,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAEtH,IAAI,SAAS,KAAK,KAAK;YACrB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAEpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB;IACT,uBAAuB,CAAC,OAAmB;QAChD,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,gBAAgB;IACT,eAAe,CAAC,IAAqB,EAAE,IAAgB;QAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,IAAI,EAAE,CAAC;QAEP,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;IAC/B,CAAC;IAED,+DAA+D;IAC/D,IAAW,QAAQ,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IACvD,2EAA2E;IAC3E,IAAW,kBAAkB,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IACjE,gFAAgF;IAChF,IAAW,eAAe,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3D,gBAAgB;IAChB,IAAW,iBAAiB,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;IACvE,gBAAgB;IAChB,IAAW,aAAa,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;IAE/D,gBAAgB;IACT,mBAAmB,CAAC,UAAmC,EAAE,OAAmB;QACjF,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACxD,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Rendering\r\n */\r\n\r\nimport { assert, Id64String } from \"@itwin/core-bentley\";\r\nimport {\r\n Matrix3d, Point2d,\r\n Point3d, Range1d, Transform, XAndY,\r\n} from \"@itwin/core-geometry\";\r\nimport { Frustum, FrustumPlanes, ViewFlags } from \"@itwin/core-common\";\r\nimport { CachedDecoration, DecorationsCache } from \"./DecorationsCache\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { PlanarClipMaskState } from \"./PlanarClipMaskState\";\r\nimport { CanvasDecoration } from \"./render/CanvasDecoration\";\r\nimport { Decorations } from \"./render/Decorations\";\r\nimport { GraphicBranch, GraphicBranchOptions } from \"./render/GraphicBranch\";\r\nimport { GraphicBuilder, GraphicType, ViewportGraphicBuilderOptions } from \"./render/GraphicBuilder\";\r\nimport { GraphicList, RenderGraphic } from \"./render/RenderGraphic\";\r\nimport { RenderPlanarClassifier } from \"./render/RenderPlanarClassifier\";\r\nimport { RenderSystem, RenderTextureDrape } from \"./render/RenderSystem\";\r\nimport { RenderTarget } from \"./render/RenderTarget\";\r\nimport { Scene } from \"./render/Scene\";\r\nimport { SpatialClassifierTileTreeReference, Tile, TileGraphicType, TileLoadStatus, TileTreeReference } from \"./tile/internal\";\r\nimport { ViewingSpace } from \"./ViewingSpace\";\r\nimport { ELEMENT_MARKED_FOR_REMOVAL, ScreenViewport, Viewport, ViewportDecorator } from \"./Viewport\";\r\nimport { ActiveSpatialClassifier } from \"./SpatialClassifiersState\";\r\n\r\n/** Provides context for producing [[RenderGraphic]]s for drawing within a [[Viewport]].\r\n * @public\r\n * @extensions\r\n */\r\nexport class RenderContext {\r\n /** ViewFlags extracted from the context's [[Viewport]]. */\r\n public readonly viewFlags: ViewFlags;\r\n private readonly _viewport: Viewport;\r\n /** Frustum extracted from the context's [[Viewport]]. */\r\n public readonly frustum: Frustum;\r\n /** Frustum planes extracted from the context's [[Viewport]]. */\r\n public readonly frustumPlanes: FrustumPlanes;\r\n\r\n constructor(vp: Viewport, frustum?: Frustum) {\r\n this._viewport = vp;\r\n this.viewFlags = vp.viewFlags;\r\n this.frustum = frustum ? frustum : vp.getFrustum();\r\n this.frustumPlanes = FrustumPlanes.fromFrustum(this.frustum);\r\n }\r\n\r\n /** Given a point in world coordinates, determine approximately how many pixels it occupies on screen based on this context's frustum. */\r\n public getPixelSizeAtPoint(inPoint?: Point3d): number {\r\n return this.viewport.viewingSpace.getPixelSizeAtPoint(inPoint);\r\n }\r\n\r\n /** The [[Viewport]] associated with this context. */\r\n public get viewport(): Viewport {\r\n return this._viewport;\r\n }\r\n\r\n /** The [[RenderSystem]] being used to produce graphics for this context. */\r\n public get renderSystem(): RenderSystem {\r\n return this.target.renderSystem;\r\n }\r\n\r\n /** @internal */\r\n public get target(): RenderTarget { return this.viewport.target; }\r\n\r\n /** @internal */\r\n protected _createGraphicBuilder(options: Omit<ViewportGraphicBuilderOptions, \"viewport\">): GraphicBuilder {\r\n return this.target.createGraphicBuilder({ ...options, viewport: this.viewport });\r\n }\r\n\r\n /** Create a builder for creating a [[GraphicType.Scene]] [[RenderGraphic]] for rendering within this context's [[Viewport]].\r\n * @param transform the local-to-world transform in which the builder's geometry is to be defined.\r\n * @returns A builder for creating a [[GraphicType.Scene]] [[RenderGraphic]] for rendering within this context's [[Viewport]].\r\n */\r\n public createSceneGraphicBuilder(transform?: Transform): GraphicBuilder {\r\n return this._createGraphicBuilder({ type: GraphicType.Scene, placement: transform });\r\n }\r\n\r\n /** Create a graphic from a [[GraphicBranch]]. */\r\n public createGraphicBranch(branch: GraphicBranch, location: Transform, opts?: GraphicBranchOptions): RenderGraphic {\r\n return this.target.renderSystem.createGraphicBranch(branch, location, opts);\r\n }\r\n\r\n /** Create a [[RenderGraphic]] which groups a set of graphics into a node in a scene graph, applying to each a transform and optional clip volume and symbology overrides.\r\n * @param branch Contains the group of graphics and the symbology overrides.\r\n * @param location the local-to-world transform applied to the grouped graphics.\r\n * @returns A RenderGraphic suitable for drawing the scene graph node within this context's [[Viewport]].\r\n * @see [[RenderSystem.createBranch]]\r\n */\r\n public createBranch(branch: GraphicBranch, location: Transform): RenderGraphic { return this.createGraphicBranch(branch, location); }\r\n\r\n /** Given the size of a logical pixel in meters, convert it to the size of a physical pixel in meters, if [[RenderSystem.dpiAwareLOD]] is `true`.\r\n * Used when computing LOD for graphics.\r\n * @internal\r\n */\r\n public adjustPixelSizeForLOD(cssPixelSize: number): number {\r\n return this.viewport.target.adjustPixelSizeForLOD(cssPixelSize);\r\n }\r\n}\r\n\r\n/** Provides context for an [[InteractiveTool]] to display decorations representing its current state.\r\n * @see [[InteractiveTool.onDynamicFrame]]\r\n * @public\r\n */\r\nexport class DynamicsContext extends RenderContext {\r\n private _dynamics?: GraphicList;\r\n\r\n /** Add a graphic to the list of dynamic graphics to be drawn in this context's [[Viewport]]. */\r\n public addGraphic(graphic: RenderGraphic) {\r\n if (undefined === this._dynamics)\r\n this._dynamics = [];\r\n this._dynamics.push(graphic);\r\n }\r\n\r\n /** @internal */\r\n public changeDynamics(): void {\r\n this.viewport.changeDynamics(this._dynamics);\r\n }\r\n\r\n /** Create a builder for producing a [[RenderGraphic]] appropriate for rendering within this context's [[Viewport]].\r\n * @param options Options describing how to create the builder.\r\n * @returns A builder that produces a [[RenderGraphic]].\r\n */\r\n public createGraphic(options: Omit<ViewportGraphicBuilderOptions, \"viewport\">): GraphicBuilder {\r\n return this._createGraphicBuilder(options);\r\n }\r\n}\r\n\r\n/** Arguments supplied to [[DecorateContext.create]].\r\n * @public\r\n */\r\nexport interface DecorateContextCreateArgs {\r\n /** The viewport to be decorated. */\r\n viewport: ScreenViewport;\r\n /** The set of decoration graphics to be populated by the context. */\r\n output: Decorations;\r\n /** Optional cache. If omitted, one will be created.\r\n * @internal\r\n */\r\n cache?: DecorationsCache;\r\n}\r\n\r\n/** Provides context for a [[ViewportDecorator]] to add [[Decorations]] to be rendered within a [[Viewport]].\r\n * @public\r\n * @extensions\r\n */\r\nexport class DecorateContext extends RenderContext {\r\n private readonly _decorations: Decorations;\r\n private readonly _cache: DecorationsCache;\r\n private _curCacheableDecorator?: ViewportDecorator;\r\n\r\n /** The [[ScreenViewport]] in which this context's [[Decorations]] will be drawn. */\r\n public override get viewport(): ScreenViewport {\r\n return super.viewport as ScreenViewport;\r\n }\r\n\r\n /** @internal */\r\n constructor(vp: ScreenViewport, decorations: Decorations, cache: DecorationsCache) {\r\n super(vp);\r\n this._decorations = decorations;\r\n this._cache = cache;\r\n }\r\n\r\n /** Create a new DecorateContext.\r\n * @param args Describes the inputs to the context.\r\n * @note Typically the [[ScreenViewport]] takes care of creating the context for you.\r\n * @public\r\n */\r\n public static create(args: DecorateContextCreateArgs): DecorateContext {\r\n return new DecorateContext(args.viewport, args.output, args.cache ?? new DecorationsCache());\r\n }\r\n\r\n /** Create a builder for creating a [[RenderGraphic]] of the specified type appropriate for rendering within this context's [[Viewport]].\r\n * @param type The type of builder to create.\r\n * @param transform the local-to-world transform in which the builder's geometry is to be defined.\r\n * @param id If the decoration is to be pickable, a unique identifier to associate with the resultant [[RenderGraphic]].\r\n * @returns A builder for creating a [[RenderGraphic]] of the specified type appropriate for rendering within this context's [[Viewport]].\r\n * @see [[IModelConnection.transientIds]] for obtaining an ID for a pickable decoration.\r\n * @see [[createGraphic]] for more options.\r\n */\r\n public createGraphicBuilder(type: GraphicType, transform?: Transform, id?: Id64String): GraphicBuilder {\r\n return this.createGraphic({ type, placement: transform, pickable: undefined !== id ? { id } : undefined });\r\n }\r\n\r\n /** Create a builder for producing a [[RenderGraphic]] appropriate for rendering within this context's [[Viewport]].\r\n * @param options Options describing how to create the builder.\r\n * @returns A builder that produces a [[RenderGraphic]].\r\n */\r\n public createGraphic(options: Omit<ViewportGraphicBuilderOptions, \"viewport\">): GraphicBuilder {\r\n return this._createGraphicBuilder(options);\r\n }\r\n\r\n /** @internal */\r\n public addFromDecorator(decorator: ViewportDecorator): void {\r\n assert(undefined === this._curCacheableDecorator);\r\n try {\r\n if (decorator.useCachedDecorations) {\r\n const cached = this._cache.get(decorator);\r\n if (cached) {\r\n this.restoreCache(cached);\r\n return;\r\n }\r\n\r\n this._curCacheableDecorator = decorator;\r\n }\r\n\r\n decorator.decorate(this);\r\n } finally {\r\n this._curCacheableDecorator = undefined;\r\n }\r\n }\r\n\r\n /** Restores decorations onto this context from the specified array of cached decorations. */\r\n private restoreCache(cachedDecorations: CachedDecoration[]) {\r\n cachedDecorations.forEach((cachedDecoration) => {\r\n switch (cachedDecoration.type) {\r\n case \"graphic\":\r\n this.addDecoration(cachedDecoration.graphicType, cachedDecoration.graphicOwner);\r\n break;\r\n case \"canvas\":\r\n this.addCanvasDecoration(cachedDecoration.canvasDecoration, cachedDecoration.atFront);\r\n break;\r\n case \"html\":\r\n this.addHtmlDecoration(cachedDecoration.htmlElement);\r\n break;\r\n }\r\n });\r\n }\r\n\r\n private _appendToCache(decoration: CachedDecoration) {\r\n assert(undefined !== this._curCacheableDecorator);\r\n this._cache.add(this._curCacheableDecorator, decoration);\r\n }\r\n\r\n /** Calls [[GraphicBuilder.finish]] on the supplied builder to obtain a [[RenderGraphic]], then adds the graphic to the appropriate list of\r\n * [[Decorations]].\r\n * @param builder The builder from which to extract the graphic.\r\n * @note The builder should not be used after calling this method.\r\n */\r\n public addDecorationFromBuilder(builder: GraphicBuilder) {\r\n this.addDecoration(builder.type, builder.finish());\r\n }\r\n\r\n /** Adds a graphic to the set of [[Decorations]] to be drawn in this context's [[ScreenViewport]].\r\n * @param The type of the graphic, which determines to which list of decorations it is added.\r\n * @param decoration The decoration graphic to add.\r\n * @note The type must match the type with which the [[RenderGraphic]]'s [[GraphicBuilder]] was constructed.\r\n * @see [[DecorateContext.addDecorationFromBuilder]] for a more convenient API.\r\n */\r\n public addDecoration(type: GraphicType, decoration: RenderGraphic) {\r\n if (this._curCacheableDecorator) {\r\n const graphicOwner = this.target.renderSystem.createGraphicOwner(decoration);\r\n this._appendToCache({ type: \"graphic\", graphicOwner, graphicType: type });\r\n decoration = graphicOwner;\r\n }\r\n\r\n switch (type) {\r\n case GraphicType.Scene:\r\n if (undefined === this._decorations.normal)\r\n this._decorations.normal = [];\r\n this._decorations.normal.push(decoration);\r\n break;\r\n\r\n case GraphicType.WorldDecoration:\r\n if (!this._decorations.world)\r\n this._decorations.world = [];\r\n this._decorations.world.push(decoration);\r\n break;\r\n\r\n case GraphicType.WorldOverlay:\r\n if (!this._decorations.worldOverlay)\r\n this._decorations.worldOverlay = [];\r\n this._decorations.worldOverlay.push(decoration);\r\n break;\r\n\r\n case GraphicType.ViewOverlay:\r\n if (!this._decorations.viewOverlay)\r\n this._decorations.viewOverlay = [];\r\n this._decorations.viewOverlay.push(decoration);\r\n break;\r\n\r\n case GraphicType.ViewBackground:\r\n this.setViewBackground(decoration);\r\n break;\r\n }\r\n }\r\n\r\n /** Add a [[CanvasDecoration]] to be drawn in this context's [[ScreenViewport]]. */\r\n public addCanvasDecoration(decoration: CanvasDecoration, atFront = false) {\r\n if (this._curCacheableDecorator)\r\n this._appendToCache({ type: \"canvas\", canvasDecoration: decoration, atFront });\r\n\r\n if (undefined === this._decorations.canvasDecorations)\r\n this._decorations.canvasDecorations = [];\r\n\r\n const list = this._decorations.canvasDecorations;\r\n if (0 === list.length || true === atFront)\r\n list.push(decoration);\r\n else\r\n list.unshift(decoration);\r\n }\r\n\r\n /** Add an HTMLElement to be drawn as a decoration in this context's [[ScreenViewport]]. */\r\n public addHtmlDecoration(decoration: HTMLElement) {\r\n if (this._curCacheableDecorator)\r\n this._appendToCache({ type: \"html\", htmlElement: decoration });\r\n\r\n // an element decoration being added might already be on the decorationDiv, just marked for removal\r\n if (decoration[ELEMENT_MARKED_FOR_REMOVAL]) {\r\n decoration[ELEMENT_MARKED_FOR_REMOVAL] = false;\r\n } else if (decoration.parentElement !== this.viewport.decorationDiv) {\r\n this.viewport.decorationDiv.appendChild(decoration);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public drawStandardGrid(gridOrigin: Point3d, rMatrix: Matrix3d, spacing: XAndY, gridsPerRef: number, _isoGrid: boolean = false, _fixedRepetitions?: Point2d): void {\r\n const vp = this.viewport;\r\n\r\n if (vp.viewingGlobe)\r\n return;\r\n\r\n const color = vp.getContrastToBackgroundColor();\r\n const planarGrid = this.viewport.target.renderSystem.createPlanarGrid(vp.getFrustum(), { origin: gridOrigin, rMatrix, spacing, gridsPerRef, color });\r\n if (planarGrid) {\r\n this.addDecoration(GraphicType.WorldDecoration, planarGrid);\r\n }\r\n }\r\n\r\n /** Display skyBox graphic that encompasses entire scene and rotates with camera.\r\n * @see [[RenderSystem.createSkyBox]].\r\n */\r\n public setSkyBox(graphic: RenderGraphic) {\r\n this._decorations.skyBox = graphic;\r\n }\r\n\r\n /** Set the graphic to be displayed behind all other geometry as the background of this context's [[ScreenViewport]]. */\r\n public setViewBackground(graphic: RenderGraphic) {\r\n this._decorations.viewBackground = graphic;\r\n }\r\n}\r\n\r\n/** Context used to create the scene to be drawn in a [[Viewport]]. The scene consists of a set of [[RenderGraphic]]s produced by the\r\n * [[TileTree]]s visible within the viewport. Creating the scene may result in the enqueueing of requests for [[Tile]] content which\r\n * should be displayed in the viewport but are not yet loaded.\r\n * @public\r\n */\r\nexport class SceneContext extends RenderContext {\r\n private _missingChildTiles = false;\r\n /** The graphics comprising the scene. */\r\n public readonly scene = new Scene();\r\n\r\n /** @internal */\r\n public readonly missingTiles = new Set<Tile>();\r\n\r\n /** @internal */\r\n public markChildrenLoading(): void {\r\n this._missingChildTiles = true;\r\n }\r\n\r\n /** @internal */\r\n public get hasMissingTiles(): boolean {\r\n return this._missingChildTiles || this.missingTiles.size > 0;\r\n }\r\n\r\n private _viewingSpace?: ViewingSpace;\r\n private _graphicType: TileGraphicType = TileGraphicType.Scene;\r\n\r\n public constructor(vp: Viewport, frustum?: Frustum) {\r\n super(vp, frustum);\r\n }\r\n\r\n /** The viewed volume containing the scene. */\r\n public get viewingSpace(): ViewingSpace {\r\n return undefined !== this._viewingSpace ? this._viewingSpace : this.viewport.viewingSpace;\r\n }\r\n\r\n /** @internal */\r\n public get graphicType() { return this._graphicType; }\r\n\r\n /** Add the specified graphic to the scene. */\r\n public outputGraphic(graphic: RenderGraphic): void {\r\n switch (this._graphicType) {\r\n case TileGraphicType.BackgroundMap:\r\n this.backgroundGraphics.push(graphic);\r\n break;\r\n case TileGraphicType.Overlay:\r\n this.overlayGraphics.push(graphic);\r\n break;\r\n default:\r\n this.graphics.push(graphic);\r\n break;\r\n }\r\n }\r\n\r\n /** Indicate that the specified tile is desired for the scene but is not yet ready. A request to load its contents will later be enqueued. */\r\n public insertMissingTile(tile: Tile): void {\r\n switch (tile.loadStatus) {\r\n case TileLoadStatus.NotLoaded:\r\n case TileLoadStatus.Queued:\r\n case TileLoadStatus.Loading:\r\n this.missingTiles.add(tile);\r\n break;\r\n }\r\n }\r\n\r\n /** @internal */\r\n public requestMissingTiles(): void {\r\n IModelApp.tileAdmin.requestTiles(this.viewport, this.missingTiles);\r\n }\r\n\r\n /** @internal */\r\n public addPlanarClassifier(classifiedModelId: Id64String, classifierTree?: SpatialClassifierTileTreeReference, planarClipMask?: PlanarClipMaskState): RenderPlanarClassifier | undefined {\r\n // Target may have the classifier from a previous frame; if not we must create one.\r\n let classifier = this.viewport.target.getPlanarClassifier(classifiedModelId);\r\n if (undefined === classifier)\r\n classifier = this.viewport.target.createPlanarClassifier(classifierTree?.activeClassifier);\r\n\r\n // Either way, we need to collect the graphics to draw for this frame, and record that we did so.\r\n if (undefined !== classifier) {\r\n this.planarClassifiers.set(classifiedModelId, classifier);\r\n classifier.setSource(classifierTree, planarClipMask);\r\n }\r\n\r\n return classifier;\r\n }\r\n\r\n /** @internal */\r\n public getPlanarClassifierForModel(modelId: Id64String) {\r\n return this.planarClassifiers.get(modelId);\r\n }\r\n\r\n /** @internal */\r\n public addBackgroundDrapedModel(drapedTreeRef: TileTreeReference, _heightRange: Range1d | undefined): RenderTextureDrape | undefined {\r\n const drapedTree = drapedTreeRef.treeOwner.tileTree;\r\n if (undefined === drapedTree)\r\n return undefined;\r\n\r\n const id = drapedTree.modelId;\r\n let drape = this.getTextureDrapeForModel(id);\r\n if (undefined !== drape)\r\n return drape;\r\n\r\n drape = this.viewport.target.getTextureDrape(id);\r\n if (undefined === drape && this.viewport.backgroundDrapeMap)\r\n drape = this.viewport.target.renderSystem.createBackgroundMapDrape(drapedTreeRef, this.viewport.backgroundDrapeMap);\r\n\r\n if (undefined !== drape)\r\n this.textureDrapes.set(id, drape);\r\n\r\n return drape;\r\n }\r\n\r\n /** @internal */\r\n public getTextureDrapeForModel(modelId: Id64String) {\r\n return this.textureDrapes.get(modelId);\r\n }\r\n\r\n /** @internal */\r\n public withGraphicType(type: TileGraphicType, func: () => void): void {\r\n const prevType = this._graphicType;\r\n this._graphicType = type;\r\n\r\n func();\r\n\r\n this._graphicType = prevType;\r\n }\r\n\r\n /** The graphics in the scene that will be drawn with depth. */\r\n public get graphics() { return this.scene.foreground; }\r\n /** The graphics that will be drawn behind everything else in the scene. */\r\n public get backgroundGraphics() { return this.scene.background; }\r\n /** The graphics that will be drawn in front of everything else in the scene. */\r\n public get overlayGraphics() { return this.scene.overlay; }\r\n /** @internal */\r\n public get planarClassifiers() { return this.scene.planarClassifiers; }\r\n /** @internal */\r\n public get textureDrapes() { return this.scene.textureDrapes; }\r\n\r\n /** @internal */\r\n public setVolumeClassifier(classifier: ActiveSpatialClassifier, modelId: Id64String): void {\r\n this.scene.volumeClassifier = { classifier, modelId };\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../src/Viewport.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../src/Viewport.ts"],"names":[],"mappings":"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"}
|