@itwin/core-frontend 5.1.0-dev.55 → 5.1.0-dev.56
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/lib/cjs/DisplayStyleState.d.ts +37 -0
- package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
- package/lib/cjs/DisplayStyleState.js +65 -0
- package/lib/cjs/DisplayStyleState.js.map +1 -1
- package/lib/cjs/Viewport.d.ts.map +1 -1
- package/lib/cjs/Viewport.js +16 -0
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/core-frontend.d.ts +1 -1
- package/lib/cjs/core-frontend.js +1 -1
- package/lib/cjs/core-frontend.js.map +1 -1
- package/lib/cjs/internal/ScriptUtils.d.ts +5 -0
- package/lib/cjs/internal/ScriptUtils.d.ts.map +1 -0
- package/lib/cjs/internal/ScriptUtils.js +120 -0
- package/lib/cjs/internal/ScriptUtils.js.map +1 -0
- package/lib/cjs/internal/tile/IModelTile.js.map +1 -1
- package/lib/cjs/internal/tile/IModelTileTree.d.ts +4 -2
- package/lib/cjs/internal/tile/IModelTileTree.d.ts.map +1 -1
- package/lib/cjs/internal/tile/IModelTileTree.js +58 -0
- package/lib/cjs/internal/tile/IModelTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/PrimaryTileTree.js +1 -1
- package/lib/cjs/internal/tile/PrimaryTileTree.js.map +1 -1
- package/lib/cjs/tile/ImdlReader.js.map +1 -1
- package/lib/cjs/tile/TileTree.d.ts +14 -1
- package/lib/cjs/tile/TileTree.d.ts.map +1 -1
- package/lib/cjs/tile/TileTree.js +13 -0
- package/lib/cjs/tile/TileTree.js.map +1 -1
- package/lib/esm/DisplayStyleState.d.ts +37 -0
- package/lib/esm/DisplayStyleState.d.ts.map +1 -1
- package/lib/esm/DisplayStyleState.js +65 -0
- package/lib/esm/DisplayStyleState.js.map +1 -1
- package/lib/esm/Viewport.d.ts.map +1 -1
- package/lib/esm/Viewport.js +16 -0
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/core-frontend.d.ts +1 -1
- package/lib/esm/core-frontend.js +1 -1
- package/lib/esm/core-frontend.js.map +1 -1
- package/lib/esm/internal/ScriptUtils.d.ts +5 -0
- package/lib/esm/internal/ScriptUtils.d.ts.map +1 -0
- package/lib/esm/internal/ScriptUtils.js +117 -0
- package/lib/esm/internal/ScriptUtils.js.map +1 -0
- package/lib/esm/internal/tile/IModelTile.js.map +1 -1
- package/lib/esm/internal/tile/IModelTileTree.d.ts +4 -2
- package/lib/esm/internal/tile/IModelTileTree.d.ts.map +1 -1
- package/lib/esm/internal/tile/IModelTileTree.js +60 -2
- package/lib/esm/internal/tile/IModelTileTree.js.map +1 -1
- package/lib/esm/internal/tile/PrimaryTileTree.js +1 -1
- package/lib/esm/internal/tile/PrimaryTileTree.js.map +1 -1
- package/lib/esm/tile/ImdlReader.js.map +1 -1
- package/lib/esm/tile/TileTree.d.ts +14 -1
- package/lib/esm/tile/TileTree.d.ts.map +1 -1
- package/lib/esm/tile/TileTree.js +13 -0
- package/lib/esm/tile/TileTree.js.map +1 -1
- package/lib/public/scripts/parse-imdl-worker.js +1 -1
- package/lib/workers/webpack/parse-imdl-worker.js +1 -1
- package/package.json +20 -20
|
@@ -44,6 +44,14 @@ export declare abstract class DisplayStyleState extends ElementState implements
|
|
|
44
44
|
*/
|
|
45
45
|
readonly [_onScheduleScriptReferenceChanged]: BeEvent<(newScriptReference: RenderSchedule.ScriptReference | undefined) => void>;
|
|
46
46
|
private _scriptReference?;
|
|
47
|
+
/** Event raised when schedule script edits are made, providing changed element IDs and the editing scope.
|
|
48
|
+
* @beta
|
|
49
|
+
*/
|
|
50
|
+
readonly onScheduleEditingChanged: BeEvent<(changes: RenderSchedule.EditingChanges[]) => void>;
|
|
51
|
+
/** Event raised when schedule script edits are committed (finalized).
|
|
52
|
+
* @beta
|
|
53
|
+
*/
|
|
54
|
+
readonly onScheduleEditingCommitted: BeEvent<() => void>;
|
|
47
55
|
/** Event raised just before the [[scheduleScript]] property is changed. */
|
|
48
56
|
readonly onScheduleScriptChanged: BeEvent<(newScript: RenderSchedule.Script | undefined) => void>;
|
|
49
57
|
/** Event raised just after [[setOSMBuildingDisplay]] changes the enabled state of the OSM buildings. */
|
|
@@ -118,6 +126,35 @@ export declare abstract class DisplayStyleState extends ElementState implements
|
|
|
118
126
|
* @see [DisplayStyleSettings.renderTimeline]($common).
|
|
119
127
|
*/
|
|
120
128
|
changeRenderTimeline(timelineId: Id64String | undefined): Promise<void>;
|
|
129
|
+
/**
|
|
130
|
+
* Begins or updates a schedule script editing session for the current display style.
|
|
131
|
+
* During an editing session, changes to the schedule script are applied incrementally
|
|
132
|
+
* using temporary dynamic tiles, allowing for interactive preview of visual changes like color,
|
|
133
|
+
* transforms, visibility, and cutting planes — without requiring a full tile tree reload.
|
|
134
|
+
*
|
|
135
|
+
* Calling this method multiple times will update the current editing session with new script changes.
|
|
136
|
+
* When all edits are complete, you must invoke [[commitScheduleEditing]] to finalize the session and
|
|
137
|
+
* trigger a full tile tree refresh with the committed script.
|
|
138
|
+
*
|
|
139
|
+
* @note You cannot use schedule script editing while a @see [[GraphicalEditingScope]] is active.
|
|
140
|
+
*
|
|
141
|
+
* Example:
|
|
142
|
+
* ```ts
|
|
143
|
+
* [[include:ScheduleScript_editingMode]]
|
|
144
|
+
* ```
|
|
145
|
+
*
|
|
146
|
+
* @beta
|
|
147
|
+
*/
|
|
148
|
+
setScheduleEditing(newScript: RenderSchedule.Script): void;
|
|
149
|
+
/**
|
|
150
|
+
* Finalizes a script editing session previously started with [[setScheduleEditing]].
|
|
151
|
+
* This applies all pending script changes and triggers a full tile tree reload to reflect them in the viewport.
|
|
152
|
+
* After this call, the schedule script is considered committed and editing mode ends.
|
|
153
|
+
*
|
|
154
|
+
* @see [[setScheduleEditing]] to begin a schedule script editing session.
|
|
155
|
+
* @beta
|
|
156
|
+
*/
|
|
157
|
+
commitScheduleEditing(): void;
|
|
121
158
|
/** The [RenderSchedule.Script]($common) that animates the contents of the view, if any.
|
|
122
159
|
* @see [[changeRenderTimeline]] to change the script.
|
|
123
160
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DisplayStyleState.d.ts","sourceRoot":"","sources":["../../src/DisplayStyleState.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,EAAU,OAAO,EAAQ,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EACL,kBAAkB,EAAyB,0BAA0B,EAAE,qBAAqB,EAC5F,iBAAiB,EAAwB,QAAQ,EAAE,wBAAwB,EAAE,sBAAsB,EACnG,iBAAiB,EAAE,oBAAoB,EAAE,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAyB,aAAa,EAAE,aAAa,EACvI,gBAAgB,EAAE,gBAAgB,EAAE,cAAc,EAAE,mBAAmB,EACvE,mBAAmB,EAAE,mBAAmB,EAAE,UAAU,EAAuF,SAAS,EACrJ,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAA4B,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EAAE,iCAAiC,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"DisplayStyleState.d.ts","sourceRoot":"","sources":["../../src/DisplayStyleState.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,7 @@ const IModelApp_1 = require("./IModelApp");
|
|
|
19
19
|
const PlanarClipMaskState_1 = require("./PlanarClipMaskState");
|
|
20
20
|
const internal_1 = require("./tile/internal");
|
|
21
21
|
const Symbols_1 = require("./common/internal/Symbols");
|
|
22
|
+
const ScriptUtils_1 = require("./internal/ScriptUtils");
|
|
22
23
|
/** @internal */
|
|
23
24
|
class TerrainDisplayOverrides {
|
|
24
25
|
wantSkirts;
|
|
@@ -42,6 +43,14 @@ class DisplayStyleState extends EntityState_1.ElementState {
|
|
|
42
43
|
*/
|
|
43
44
|
[Symbols_1._onScheduleScriptReferenceChanged] = new core_bentley_1.BeEvent();
|
|
44
45
|
_scriptReference;
|
|
46
|
+
/** Event raised when schedule script edits are made, providing changed element IDs and the editing scope.
|
|
47
|
+
* @beta
|
|
48
|
+
*/
|
|
49
|
+
onScheduleEditingChanged = new core_bentley_1.BeEvent();
|
|
50
|
+
/** Event raised when schedule script edits are committed (finalized).
|
|
51
|
+
* @beta
|
|
52
|
+
*/
|
|
53
|
+
onScheduleEditingCommitted = new core_bentley_1.BeEvent();
|
|
45
54
|
/** Event raised just before the [[scheduleScript]] property is changed. */
|
|
46
55
|
onScheduleScriptChanged = new core_bentley_1.BeEvent();
|
|
47
56
|
/** Event raised just after [[setOSMBuildingDisplay]] changes the enabled state of the OSM buildings. */
|
|
@@ -244,6 +253,62 @@ class DisplayStyleState extends EntityState_1.ElementState {
|
|
|
244
253
|
if (this._queryRenderTimelinePropsPromise)
|
|
245
254
|
await this._queryRenderTimelinePropsPromise;
|
|
246
255
|
}
|
|
256
|
+
/**
|
|
257
|
+
* Begins or updates a schedule script editing session for the current display style.
|
|
258
|
+
* During an editing session, changes to the schedule script are applied incrementally
|
|
259
|
+
* using temporary dynamic tiles, allowing for interactive preview of visual changes like color,
|
|
260
|
+
* transforms, visibility, and cutting planes — without requiring a full tile tree reload.
|
|
261
|
+
*
|
|
262
|
+
* Calling this method multiple times will update the current editing session with new script changes.
|
|
263
|
+
* When all edits are complete, you must invoke [[commitScheduleEditing]] to finalize the session and
|
|
264
|
+
* trigger a full tile tree refresh with the committed script.
|
|
265
|
+
*
|
|
266
|
+
* @note You cannot use schedule script editing while a @see [[GraphicalEditingScope]] is active.
|
|
267
|
+
*
|
|
268
|
+
* Example:
|
|
269
|
+
* ```ts
|
|
270
|
+
* [[include:ScheduleScript_editingMode]]
|
|
271
|
+
* ```
|
|
272
|
+
*
|
|
273
|
+
* @beta
|
|
274
|
+
*/
|
|
275
|
+
setScheduleEditing(newScript) {
|
|
276
|
+
const prevScript = this.scheduleScript;
|
|
277
|
+
const changes = [];
|
|
278
|
+
const globalDelta = (0, ScriptUtils_1.getScriptDelta)(prevScript, newScript);
|
|
279
|
+
for (const timeline of newScript.modelTimelines) {
|
|
280
|
+
const ids = new Set();
|
|
281
|
+
for (const et of timeline.elementTimelines) {
|
|
282
|
+
for (const id of et.elementIds) {
|
|
283
|
+
if (globalDelta.has(id))
|
|
284
|
+
ids.add(id);
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
if (ids.size > 0)
|
|
288
|
+
changes.push({ timeline, elements: ids });
|
|
289
|
+
}
|
|
290
|
+
this.scheduleScript = newScript;
|
|
291
|
+
this.onScheduleEditingChanged.raiseEvent(changes);
|
|
292
|
+
for (const modelTimeline of this.scheduleScript.modelTimelines) {
|
|
293
|
+
modelTimeline.isEditingCommitted = false;
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Finalizes a script editing session previously started with [[setScheduleEditing]].
|
|
298
|
+
* This applies all pending script changes and triggers a full tile tree reload to reflect them in the viewport.
|
|
299
|
+
* After this call, the schedule script is considered committed and editing mode ends.
|
|
300
|
+
*
|
|
301
|
+
* @see [[setScheduleEditing]] to begin a schedule script editing session.
|
|
302
|
+
* @beta
|
|
303
|
+
*/
|
|
304
|
+
commitScheduleEditing() {
|
|
305
|
+
this.onScheduleEditingCommitted.raiseEvent();
|
|
306
|
+
if (!this.scheduleScript)
|
|
307
|
+
return;
|
|
308
|
+
for (const modelTimeline of this.scheduleScript.modelTimelines) {
|
|
309
|
+
modelTimeline.isEditingCommitted = true;
|
|
310
|
+
}
|
|
311
|
+
}
|
|
247
312
|
/** The [RenderSchedule.Script]($common) that animates the contents of the view, if any.
|
|
248
313
|
* @see [[changeRenderTimeline]] to change the script.
|
|
249
314
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DisplayStyleState.js","sourceRoot":"","sources":["../../src/DisplayStyleState.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Views\n */\nimport { assert, BeEvent, Id64, Id64Arg, Id64String } from \"@itwin/core-bentley\";\nimport { Range1d, Vector3d } from \"@itwin/core-geometry\";\nimport {\n BackgroundMapProps, BackgroundMapProvider, BackgroundMapProviderProps, BackgroundMapSettings,\n BaseLayerSettings, BaseMapLayerSettings, ColorDef, ContextRealityModelProps, DisplayStyle3dSettings, DisplayStyle3dSettingsProps,\n DisplayStyleProps, DisplayStyleSettings, Environment, FeatureAppearance, GlobeMode, ImageMapLayerSettings, LightSettings, MapLayerProps,\n MapLayerSettings, MapSubLayerProps, RenderSchedule, RenderTimelineProps,\n SolarShadowSettings, SubCategoryOverride, SubLayerId, TerrainHeightOriginMode, ThematicDisplay, ThematicDisplayMode, ThematicGradientMode, ViewFlags,\n} from \"@itwin/core-common\";\nimport { ApproximateTerrainHeights } from \"./ApproximateTerrainHeights\";\nimport { BackgroundMapGeometry } from \"./BackgroundMapGeometry\";\nimport { ContextRealityModelState } from \"./ContextRealityModelState\";\nimport { ElementState } from \"./EntityState\";\nimport { IModelApp } from \"./IModelApp\";\nimport { IModelConnection } from \"./IModelConnection\";\nimport { PlanarClipMaskState } from \"./PlanarClipMaskState\";\nimport { getCesiumOSMBuildingsUrl, MapLayerIndex, TileTreeReference } from \"./tile/internal\";\nimport { _onScheduleScriptReferenceChanged, _scheduleScriptReference } from './common/internal/Symbols';\n\n/** @internal */\nexport class TerrainDisplayOverrides {\n public wantSkirts?: boolean;\n public wantNormals?: boolean;\n public produceGeometry?: boolean;\n}\n\n/** Options controlling display of [OpenStreetMap Buildings](https://cesium.com/platform/cesium-ion/content/cesium-osm-buildings/).\n * @see [[DisplayStyleState.setOSMBuildingDisplay]].\n * @public\n * @extensions\n */\nexport interface OsmBuildingDisplayOptions {\n /** If defined, enables or disables display of the buildings by attaching or detaching the OpenStreetMap Buildings reality model. */\n onOff?: boolean;\n /** If defined, overrides aspects of the appearance of the OpenStreetMap building meshes. */\n appearanceOverrides?: FeatureAppearance;\n}\n\n/** A DisplayStyle defines the parameters for 'styling' the contents of a [[ViewState]].\n * @public\n * @extensions\n */\nexport abstract class DisplayStyleState extends ElementState implements DisplayStyleProps {\n public static override get className() { return \"DisplayStyle\"; }\n private _ellipsoidMapGeometry: BackgroundMapGeometry | undefined;\n private _attachedRealityModelPlanarClipMasks = new Map<Id64String, PlanarClipMaskState>();\n /** @internal */\n protected _queryRenderTimelinePropsPromise?: Promise<RenderTimelineProps | undefined>;\n private _assigningScript = false;\n\n\n /** Event raised just before the [[scheduleScriptReference]] property is changed.\n * @internal as of 5.0, use [[onScheduleScriptChanged]].\n */\n public readonly [_onScheduleScriptReferenceChanged] = new BeEvent<(newScriptReference: RenderSchedule.ScriptReference | undefined) => void>();\n\n private _scriptReference?: RenderSchedule.ScriptReference;\n\n /** Event raised just before the [[scheduleScript]] property is changed. */\n public readonly onScheduleScriptChanged = new BeEvent<(newScript: RenderSchedule.Script | undefined) => void>();\n /** Event raised just after [[setOSMBuildingDisplay]] changes the enabled state of the OSM buildings. */\n public readonly onOSMBuildingDisplayChanged = new BeEvent<(osmBuildingDisplayEnabled: boolean) => void>();\n\n /** The container for this display style's settings. */\n public abstract get settings(): DisplayStyleSettings;\n\n /** @internal */\n public abstract overrideTerrainDisplay(): TerrainDisplayOverrides | undefined;\n\n /** Construct a new DisplayStyleState from its JSON representation.\n * @param props JSON representation of the display style.\n * @param iModel IModelConnection containing the display style.\n * @param source If the constructor is being invoked from [[EntityState.clone]], the display style that is being cloned.\n */\n constructor(props: DisplayStyleProps, iModel: IModelConnection, source?: DisplayStyleState) {\n super(props, iModel);\n const styles = this.jsonProperties.styles;\n\n if (source)\n this._scriptReference = source._scriptReference;\n\n if (styles) {\n // ###TODO Use DisplayStyleSettings.planarClipMasks\n if (styles.planarClipOvr)\n for (const planarClipOvr of styles.planarClipOvr)\n if (Id64.isValid(planarClipOvr.modelId))\n this._attachedRealityModelPlanarClipMasks.set(planarClipOvr.modelId, PlanarClipMaskState.fromJSON(planarClipOvr));\n }\n }\n\n /** Ensures all of the data required by the display style is loaded. This method is invoked for you by [[ViewState.load]], but if\n * you obtain a display style by some other means you should `await` this method before using the display style.\n */\n public async load(): Promise<void> {\n // If we were cloned, we may already have a valid schedule state, and our display style Id may be invalid / different.\n // Preserve it if still usable.\n if (this._scriptReference) {\n if (this.settings.renderTimeline === this._scriptReference.sourceId) {\n // The script came from the same RenderTimeline element. Keep it.\n return;\n }\n\n if (undefined === this.settings.renderTimeline) {\n // The script came from a display style's JSON properties. Keep it if (1) this style is not persistent or (2) this style has the same Id\n if (this.id === this._scriptReference.sourceId || !Id64.isValidId64(this.id))\n return;\n }\n }\n\n // The schedule script stored in JSON properties takes precedence over the RenderTimeline if both are defined.\n if (this.settings.scheduleScriptProps)\n this.loadScriptReferenceFromScript(this.settings.scheduleScriptProps);\n else\n await this.loadScriptReferenceFromTimeline(this.settings.renderTimeline);\n }\n\n private loadScriptReferenceFromScript(scriptProps: Readonly<RenderSchedule.ScriptProps>): void {\n let newState;\n try {\n const script = RenderSchedule.Script.fromJSON(scriptProps);\n if (script)\n newState = new RenderSchedule.ScriptReference(this.id, script);\n } catch {\n // schedule state is undefined.\n }\n\n if (newState !== this._scriptReference) {\n this[_onScheduleScriptReferenceChanged].raiseEvent(newState);\n this.onScheduleScriptChanged.raiseEvent(newState?.script);\n this._scriptReference = newState;\n }\n }\n\n private async loadScriptReferenceFromTimeline(timelineId: Id64String | undefined): Promise<void> {\n let newState;\n if (timelineId && Id64.isValidId64(timelineId)) {\n try {\n // If a subsequent call to loadScriptReferenceFromTimeline is made while we're awaiting this one, we'll abort this one.\n const promise = this._queryRenderTimelinePropsPromise = this.queryRenderTimelineProps(timelineId);\n const timeline = await promise;\n if (promise !== this._queryRenderTimelinePropsPromise)\n return;\n\n if (timeline) {\n const scriptProps = JSON.parse(timeline.script);\n const script = RenderSchedule.Script.fromJSON(scriptProps);\n if (script)\n newState = new RenderSchedule.ScriptReference(timelineId, script);\n }\n } catch {\n // schedule state is undefined.\n }\n }\n\n this._queryRenderTimelinePropsPromise = undefined;\n if (newState !== this._scriptReference) {\n this[_onScheduleScriptReferenceChanged].raiseEvent(newState);\n this.onScheduleScriptChanged.raiseEvent(newState?.script);\n this._scriptReference = newState;\n }\n }\n\n /** @internal */\n protected async queryRenderTimelineProps(timelineId: Id64String): Promise<RenderTimelineProps | undefined> {\n try {\n const omitScriptElementIds = !IModelApp.tileAdmin.enableFrontendScheduleScripts;\n return await this.iModel.elements.loadProps(timelineId, { renderTimeline: { omitScriptElementIds } }) as RenderTimelineProps;\n } catch {\n return undefined;\n }\n }\n\n /** @internal */\n public get displayTerrain() {\n return this.viewFlags.backgroundMap && this.settings.backgroundMap.applyTerrain;\n }\n\n /** @internal */\n public get globeMode(): GlobeMode { return this.settings.backgroundMap.globeMode; }\n\n /** Settings controlling how the base map is displayed within a view.\n * The base map can be provided by any map imagery source or set to be a single color.\n */\n public get backgroundMapBase(): BaseLayerSettings {\n return this.settings.mapImagery.backgroundBase;\n }\n public set backgroundMapBase(base: BaseLayerSettings) {\n this.settings.mapImagery.backgroundBase = base;\n this._synchBackgroundMapImagery();\n }\n\n /** The settings controlling how a background map is displayed within a view.\n * @see [[ViewFlags.backgroundMap]] for toggling display of the map on or off.\n */\n public get backgroundMapSettings(): BackgroundMapSettings { return this.settings.backgroundMap; }\n public set backgroundMapSettings(settings: BackgroundMapSettings) {\n this.settings.backgroundMap = settings;\n }\n\n /** Modify a subset of the background map display settings.\n * @param name props JSON representation of the properties to change. Any properties not present will retain their current values in `this.backgroundMapSettings`.\n * @see [[ViewFlags.backgroundMap]] for toggling display of the map.\n * @see [[changeBackgroundMapProvider]] to change the type of map imagery displayed.\n *\n * Example that changes only the elevation, leaving the provider and type unchanged:\n * ``` ts\n * style.changeBackgroundMapProps({ groundBias: 16.2 });\n * ```\n * @public\n */\n public changeBackgroundMapProps(props: BackgroundMapProps): void {\n const newSettings = this.backgroundMapSettings.clone(props);\n this.backgroundMapSettings = newSettings;\n }\n\n /** Change aspects of the [BackgroundMapProvider]($common) from which background map imagery is obtained.\n * Any properties not explicitly specified by `props` will retain their current values.\n * @public\n */\n public changeBackgroundMapProvider(props: BackgroundMapProviderProps): void {\n const base = this.settings.mapImagery.backgroundBase;\n if (base instanceof ColorDef) {\n this.settings.mapImagery.backgroundBase = BaseMapLayerSettings.fromProvider(BackgroundMapProvider.fromJSON(props));\n } else {\n const provider = base.provider ? base.provider.clone(props) : BackgroundMapProvider.fromJSON(props);\n this.settings.mapImagery.backgroundBase = base.cloneWithProvider(provider);\n }\n\n this._synchBackgroundMapImagery();\n }\n\n /** Call a function for each reality model attached to this display style.\n * @see [DisplayStyleSettings.contextRealityModels]($common).\n */\n public forEachRealityModel(func: (model: ContextRealityModelState) => void): void {\n for (const model of this.settings.contextRealityModels.models) {\n assert(model instanceof ContextRealityModelState);\n func(model);\n }\n }\n\n private * getRealityModels(): Iterable<ContextRealityModelState> {\n for (const model of this.settings.contextRealityModels.models) {\n assert(model instanceof ContextRealityModelState);\n yield model;\n }\n }\n\n /** Iterate over the reality models attached to this display style. */\n public get realityModels(): Iterable<ContextRealityModelState> {\n return this.getRealityModels();\n }\n\n /** @internal */\n public * getTileTreeRefs(): Iterable<TileTreeReference> {\n for (const model of this.realityModels) {\n if (!model.invisible) {\n yield model.treeRef;\n }\n }\n }\n\n /** Performs logical comparison against another display style. Two display styles are logically equivalent if they have the same name, Id, and settings.\n * @param other The display style to which to compare.\n * @returns true if the specified display style is logically equivalent to this display style - i.e., both styles have the same values for all of their settings.\n */\n public equalState(other: DisplayStyleState): boolean {\n if (this.name !== other.name || this.id !== other.id)\n return false;\n else\n return JSON.stringify(this.settings) === JSON.stringify(other.settings);\n }\n\n /** The name of this DisplayStyle */\n public get name(): string { return this.code.value; }\n\n /** Change the Id of the [RenderTimeline]($backend) element that hosts the [RenderSchedule.Script]($common) to be applied by this display style for\n * animating the contents of the view, and update [[scheduleScript]] using the script associated with the [RenderTimeline]($backend) element.\n * @see [DisplayStyleSettings.renderTimeline]($common).\n */\n public async changeRenderTimeline(timelineId: Id64String | undefined): Promise<void> {\n // Potentially trigger async loading of new schedule state.\n this.settings.renderTimeline = timelineId;\n\n // Await async loading if necessary.\n // Note the `await` in loadScriptReferenceFromTimeline will resolve before this one [per the spec](https://262.ecma-international.org/6.0/#sec-triggerpromisereactions).\n if (this._queryRenderTimelinePropsPromise)\n await this._queryRenderTimelinePropsPromise;\n }\n\n /** The [RenderSchedule.Script]($common) that animates the contents of the view, if any.\n * @see [[changeRenderTimeline]] to change the script.\n */\n public get scheduleScript(): RenderSchedule.Script | undefined {\n return this._scriptReference?.script;\n }\n\n public set scheduleScript(script: RenderSchedule.Script | undefined) {\n if (script === this.scheduleScript)\n return;\n\n try {\n const scriptRef = script ? new RenderSchedule.ScriptReference(script) : undefined;\n this[_onScheduleScriptReferenceChanged].raiseEvent(scriptRef);\n this.onScheduleScriptChanged.raiseEvent(script);\n this._scriptReference = scriptRef;\n\n this._assigningScript = true;\n this.settings.scheduleScriptProps = script?.toJSON();\n\n if (!script)\n this.loadScriptReferenceFromTimeline(this.settings.renderTimeline); // eslint-disable-line @typescript-eslint/no-floating-promises\n } finally {\n this._assigningScript = false;\n }\n }\n\n /** The [RenderSchedule.Script]($common) that animates the contents of the view, if any, along with the Id of the element that hosts the script.\n * @note The host element may be a [RenderTimeline]($backend) or a [DisplayStyle]($backend).\n * @internal\n */\n public get [_scheduleScriptReference](): RenderSchedule.ScriptReference | undefined {\n return this._scriptReference;\n }\n\n /** Attach a [ContextRealityModel]($common) to this display style.\n * @see [DisplayStyleSettings.contextRealityModels]($common).\n * @see [ContextRealityModels.add]($common)\n */\n public attachRealityModel(props: ContextRealityModelProps): ContextRealityModelState {\n const model = this.settings.contextRealityModels.add(props);\n assert(model instanceof ContextRealityModelState);\n return model;\n }\n\n /** Detach the first [ContextRealityModel]($common) that matches the specified name and url.\n * @see [DisplayStyleSettings.contextRealityModels]($common)\n * @see [ContextRealityModels.delete]($common)\n */\n public detachRealityModelByNameAndUrl(name: string, url: string): boolean {\n const model = this.settings.contextRealityModels.models.find((x) => x.matchesNameAndUrl(name, url));\n return undefined !== model && this.settings.contextRealityModels.delete(model);\n }\n\n /** Get the [[ContextRealityModelState]] that displays the OpenStreetMap worldwide building layer, if enabled.\n * @see [[setOSMBuildingDisplay]]\n */\n public getOSMBuildingRealityModel(): ContextRealityModelState | undefined {\n if (!this.iModel.isGeoLocated || this.globeMode !== GlobeMode.Ellipsoid) // The OSM tile tree is ellipsoidal.\n return undefined;\n\n const url = getCesiumOSMBuildingsUrl();\n if (undefined === url)\n return undefined;\n\n return this.contextRealityModelStates.find((x) => x.url === url);\n }\n\n /** Set the display of the OpenStreetMap worldwide building layer in this display style by attaching or detaching the reality model displaying the buildings.\n * The OSM buildings are displayed from a reality model aggregated and served from Cesium ion.<(https://cesium.com/content/cesium-osm-buildings/>\n * The options [[OsmBuildingDisplayOptions]] control the display and appearance overrides.\n */\n public setOSMBuildingDisplay(options: OsmBuildingDisplayOptions): boolean {\n if (!this.iModel.isGeoLocated || this.globeMode !== GlobeMode.Ellipsoid) // The OSM tile tree is ellipsoidal.\n return false;\n\n const url = getCesiumOSMBuildingsUrl();\n if (undefined === url)\n return false;\n\n let model = this.settings.contextRealityModels.models.find((x) => x.url === url);\n if (options.onOff === false) {\n const turnedOff = undefined !== model && this.settings.contextRealityModels.delete(model);\n if (turnedOff)\n this.onOSMBuildingDisplayChanged.raiseEvent(false);\n\n return turnedOff;\n }\n\n if (!model) {\n const name = IModelApp.localization.getLocalizedString(\"iModelJs:RealityModelNames.OSMBuildings\");\n model = this.attachRealityModel({ tilesetUrl: url, name });\n this.onOSMBuildingDisplayChanged.raiseEvent(true);\n }\n\n if (options.appearanceOverrides)\n model.appearanceOverrides = options.appearanceOverrides;\n\n return true;\n }\n\n /** Return if a context reality model is attached.\n * @see [[ContextRealityModelProps]].\n */\n public hasAttachedRealityModel(name: string, url: string): boolean {\n return undefined !== this.settings.contextRealityModels.models.find((x) => x.matchesNameAndUrl(name, url));\n }\n\n /** @internal */\n public getMapLayers(isOverlay: boolean) { return isOverlay ? this.settings.mapImagery.overlayLayers : this.settings.mapImagery.backgroundLayers; }\n\n /** Attach a map layer to display style.\n * @param Settings representing the map layer.\n * @param mapLayerIndex the [[MapLayerIndex]] where the map layer should be attached.\n * @public\n */\n public attachMapLayer(options: { settings: MapLayerSettings, mapLayerIndex: MapLayerIndex }): void {\n const layerSettings = options.settings.clone({});\n if (undefined === layerSettings)\n return;\n\n const isOverlay = options.mapLayerIndex.isOverlay;\n const insertIndex = options.mapLayerIndex.index;\n const layers = this.getMapLayers(isOverlay);\n\n if (insertIndex < 0 || insertIndex > (layers.length - 1)) {\n this.getMapLayers(isOverlay).push(layerSettings);\n } else {\n layers.splice(insertIndex, 0, layerSettings);\n }\n\n this._synchBackgroundMapImagery();\n }\n\n /**\n * @param mapLayerIndex the [[MapLayerIndex]] where the map layer should be attached.\n * @internal\n */\n public attachMapLayerProps(options: { props: MapLayerProps, mapLayerIndex: MapLayerIndex }): void {\n const settings = MapLayerSettings.fromJSON(options.props);\n if (undefined === settings)\n return;\n\n this.attachMapLayer({ settings, mapLayerIndex: options.mapLayerIndex });\n }\n\n /** @internal */\n public hasAttachedMapLayer(name: string, source: string, isOverlay: boolean): boolean {\n return -1 !== this.findMapLayerIndexByNameAndSource(name, source, isOverlay);\n }\n\n /** @internal */\n public detachMapLayerByNameAndSource(name: string, source: string, isOverlay: boolean): void {\n const index = this.findMapLayerIndexByNameAndSource(name, source, isOverlay);\n if (- 1 !== index)\n this.detachMapLayerByIndex({ index, isOverlay });\n }\n\n /** Detach map layer at index (-1 to remove all layers)\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer to detach.\n * @public\n */\n public detachMapLayerByIndex(mapLayerIndex: MapLayerIndex): void {\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n const index = mapLayerIndex.index;\n if (index < 0)\n layers.length = 0;\n else\n layers.splice(index, 1);\n\n this._synchBackgroundMapImagery();\n }\n\n /**\n * Lookup a maplayer index by name and source.\n * @param name Name of of the layer.\n * @param source Unique string identifying the layer.\n * @param isOverlay true if layer is overlay, otherwise layer is background. Defaults to false.\n * @public\n *\n */\n public findMapLayerIndexByNameAndSource(name: string, source: string, isOverlay: boolean) {\n return this.getMapLayers(isOverlay).findIndex((layer) => layer.matchesNameAndSource(name, source));\n }\n\n /** Return the map layer settings for a map layer at the provided index.\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer.\n * @public\n */\n public mapLayerAtIndex(mapLayerIndex: MapLayerIndex): MapLayerSettings | undefined {\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n const index = mapLayerIndex.index;\n return (index < 0 || index >= layers.length) ? undefined : layers[index];\n }\n\n /** Return map base transparency as a number between 0 and 1.\n * @public\n */\n public get baseMapTransparency(): number {\n return this.settings.mapImagery.baseTransparency;\n }\n\n /** Change the map base transparency as a number between 0 and 1.\n * @public\n */\n public changeBaseMapTransparency(transparency: number) {\n if (this.settings.mapImagery.backgroundBase instanceof ColorDef) {\n this.settings.mapImagery.backgroundBase = this.settings.mapImagery.backgroundBase.withTransparency(transparency * 255);\n } else {\n this.settings.mapImagery.backgroundBase = this.settings.mapImagery.backgroundBase.clone({ transparency });\n }\n this._synchBackgroundMapImagery();\n }\n\n /** Modify a subset of a map layer settings.\n * @param props props JSON representation of the properties to change. Any properties not present will retain their current values.\n * @param mapLayerIndex the [[MapLayerIndex]] where the map layer should be inserted.\n *\n * Example that changes only the visibility of the first overlay map layer.\n * ``` ts\n * style.changeMapLayerProps({ visible: false }, 0, false);\n * ```\n * @public\n */\n public changeMapLayerProps(props: Partial<MapLayerProps>, mapLayerIndex: MapLayerIndex) {\n const index = mapLayerIndex.index;\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n if (index < 0 || index >= layers.length)\n return;\n layers[index] = layers[index].clone(props);\n this._synchBackgroundMapImagery();\n }\n\n /** Change the credentials for a map layer.\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer to change the credentials of.\n * @public\n */\n public changeMapLayerCredentials(mapLayerIndex: MapLayerIndex, userName?: string, password?: string) {\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n const index = mapLayerIndex.index;\n if (index < 0 || index >= layers.length)\n return;\n const layer = layers[index];\n if (layer instanceof ImageMapLayerSettings) {\n layer.setCredentials(userName, password);\n this._synchBackgroundMapImagery();\n }\n }\n\n /** Modify a subset of a sub-layer settings.\n * @param props props JSON representation of the properties to change. Any properties not present will retain their current values.\n * @param subLayerId Id of the sub-layer that should be modified.\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer that contains the sub-layer to be modified.\n *\n * @public\n */\n public changeMapSubLayerProps(props: Partial<MapSubLayerProps>, subLayerId: SubLayerId, mapLayerIndex: MapLayerIndex) {\n const mapLayerSettings = this.mapLayerAtIndex(mapLayerIndex);\n if (undefined === mapLayerSettings)\n return;\n\n if (!(mapLayerSettings instanceof ImageMapLayerSettings)) {\n assert(false);\n return;\n }\n\n const subLayers = new Array<MapSubLayerProps>();\n for (const subLayer of mapLayerSettings.subLayers) {\n subLayers.push((subLayerId === -1 || subLayer.id === subLayerId) ? subLayer.clone(props).toJSON() : subLayer.toJSON());\n }\n\n this.changeMapLayerProps({ subLayers }, mapLayerIndex);\n }\n\n /* @internal */\n private _synchBackgroundMapImagery() {\n this.settings.synchMapImagery();\n }\n\n /** Move map layer to top.\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer to move.\n * @public\n *\n */\n public moveMapLayerToTop(mapLayerIndex: MapLayerIndex) {\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n const index = mapLayerIndex.index;\n if (index >= 0 && index < layers.length - 1) {\n const layer = layers.splice(index, 1);\n layers.push(layer[0]);\n this._synchBackgroundMapImagery();\n }\n }\n\n /** Move map layer to bottom.\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer to move.\n * @public\n */\n public moveMapLayerToBottom(mapLayerIndex: MapLayerIndex) {\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n const index = mapLayerIndex.index;\n if (index > 0 && index < layers.length) {\n const layer = layers.splice(index, 1);\n layers.unshift(layer[0]);\n this._synchBackgroundMapImagery();\n }\n }\n\n /** Reorder map layers\n * @param fromIndex index of map layer to move\n * @param toIndex insert index. If equal to length of map array the map layer is moved to end of array.\n * @param isOverlay true if map-layer is part of the overlay map, otherwise it is part of the background map.\n * @public\n */\n public moveMapLayerToIndex(fromIndex: number, toIndex: number, isOverlay: boolean) {\n const layers = this.getMapLayers(isOverlay);\n if (fromIndex === toIndex)\n return;\n\n if (fromIndex < 0 || fromIndex >= layers.length || toIndex > layers.length)\n return;\n\n const layer = layers.splice(fromIndex, 1);\n layers.splice(toIndex, 0, layer[0]); // note: if toIndex === settings.mapImagery.backgroundLayers.length item is appended\n this._synchBackgroundMapImagery();\n }\n\n /** Flags controlling various aspects of the display style.\n * @see [DisplayStyleSettings.viewFlags]($common)\n */\n public get viewFlags(): ViewFlags { return this.settings.viewFlags; }\n public set viewFlags(flags: ViewFlags) { this.settings.viewFlags = flags; }\n\n /** The background color for this DisplayStyle */\n public get backgroundColor(): ColorDef { return this.settings.backgroundColor; }\n public set backgroundColor(val: ColorDef) { this.settings.backgroundColor = val; }\n\n /** The color used to draw geometry in monochrome mode.\n * @see [ViewFlags.monochrome]($common) for enabling monochrome mode.\n */\n public get monochromeColor(): ColorDef { return this.settings.monochromeColor; }\n public set monochromeColor(val: ColorDef) { this.settings.monochromeColor = val; }\n\n private _backgroundMapGeometry?: {\n bimElevationBias: number;\n geometry: BackgroundMapGeometry;\n globeMode: GlobeMode;\n };\n\n /** @internal */\n public anyMapLayersVisible(overlay: boolean): boolean {\n const layers = this.getMapLayers(overlay);\n\n for (const mapLayer of layers)\n if (mapLayer.visible)\n return true;\n\n return false;\n }\n\n /** @internal */\n public getIsBackgroundMapVisible(): boolean {\n return undefined !== this.iModel.ecefLocation && (this.viewFlags.backgroundMap || this.anyMapLayersVisible(false));\n }\n /** @internal */\n public get backgroundMapElevationBias(): number | undefined {\n if (this.backgroundMapSettings.applyTerrain) {\n const terrainSettings = this.backgroundMapSettings.terrainSettings;\n switch (terrainSettings.heightOriginMode) {\n case TerrainHeightOriginMode.Ground:\n return (undefined === this.iModel.projectCenterAltitude) ? undefined : terrainSettings.heightOrigin + terrainSettings.exaggeration * this.iModel.projectCenterAltitude;\n\n case TerrainHeightOriginMode.Geodetic:\n return terrainSettings.heightOrigin;\n\n case TerrainHeightOriginMode.Geoid:\n return (undefined === this.iModel.geodeticToSeaLevel) ? undefined : terrainSettings.heightOrigin + this.iModel.geodeticToSeaLevel;\n }\n } else {\n return this.backgroundMapSettings.groundBias;\n }\n\n }\n\n /** @internal */\n public getBackgroundMapGeometry(): BackgroundMapGeometry | undefined {\n if (undefined === this.iModel.ecefLocation)\n return undefined;\n\n const bimElevationBias = this.backgroundMapElevationBias;\n\n if (undefined === bimElevationBias)\n return undefined;\n\n const globeMode = this.globeMode;\n if (undefined === this._backgroundMapGeometry || this._backgroundMapGeometry.globeMode !== globeMode || this._backgroundMapGeometry.bimElevationBias !== bimElevationBias) {\n const geometry = new BackgroundMapGeometry(bimElevationBias, globeMode, this.iModel);\n this._backgroundMapGeometry = { bimElevationBias, geometry, globeMode };\n }\n return this._backgroundMapGeometry.geometry;\n }\n\n /** [[ContextRealityModelState]]s attached to this display style.\n * @see [DisplayStyleSettings.contextRealityModels]($common).\n */\n public get contextRealityModelStates(): ReadonlyArray<ContextRealityModelState> {\n return this.settings.contextRealityModels.models as ContextRealityModelState[];\n }\n\n /** @internal */\n public getGlobalGeometryAndHeightRange(): { geometry: BackgroundMapGeometry, heightRange: Range1d } | undefined {\n let geometry = this.getIsBackgroundMapVisible() ? this.getBackgroundMapGeometry() : undefined;\n const terrainRange = ApproximateTerrainHeights.instance.globalHeightRange;\n let heightRange = this.displayTerrain ? terrainRange : Range1d.createXX(-1, 1);\n if (this.globeMode === GlobeMode.Ellipsoid && this.contextRealityModelStates.find((model) => model.isGlobal)) {\n if (!geometry) {\n if (!this._ellipsoidMapGeometry)\n this._ellipsoidMapGeometry = new BackgroundMapGeometry(0, GlobeMode.Ellipsoid, this.iModel);\n\n geometry = this._ellipsoidMapGeometry;\n }\n\n heightRange = terrainRange;\n }\n\n return geometry ? { geometry, heightRange } : undefined;\n }\n\n /** Returns true if this is a 3d display style. */\n public is3d(): this is DisplayStyle3dState { return this instanceof DisplayStyle3dState; }\n\n /** Customize the way geometry belonging to a [[SubCategory]] is drawn by this display style.\n * @param id The ID of the SubCategory whose appearance is to be overridden.\n * @param ovr The overrides to apply to the [[SubCategoryAppearance]].\n * @see [[dropSubCategoryOverride]]\n */\n public overrideSubCategory(id: Id64String, ovr: SubCategoryOverride) { this.settings.overrideSubCategory(id, ovr); }\n\n /** Remove any [[SubCategoryOverride]] applied to a [[SubCategoryAppearance]] by this style.\n * @param id The ID of the [[SubCategory]].\n * @see [[overrideSubCategory]]\n */\n public dropSubCategoryOverride(id: Id64String) { this.settings.dropSubCategoryOverride(id); }\n\n /** Returns true if an [[SubCategoryOverride]]s are defined by this style. */\n public get hasSubCategoryOverride() { return this.settings.hasSubCategoryOverride; }\n\n /** Obtain the overrides applied to a [[SubCategoryAppearance]] by this style.\n * @param id The ID of the [[SubCategory]].\n * @returns The corresponding SubCategoryOverride, or undefined if the SubCategory's appearance is not overridden.\n * @see [[overrideSubCategory]]\n */\n public getSubCategoryOverride(id: Id64String): SubCategoryOverride | undefined { return this.settings.getSubCategoryOverride(id); }\n\n /** For each subcategory belonging to any of the specified categories, make it visible by turning off the \"invisible\" flag in its subcategory appearance.\n * This requires that the categories and subcategories have been previously loaded by, e.g., a call to IModelConnection.querySubCategories.\n * @returns true if the visibility of any subcategory was modified.\n * @see Viewport.changeCategoryDisplay\n * @see ViewCreator3dOptions.allSubCategoriesVisible\n * @internal\n */\n public enableAllLoadedSubCategories(categoryIds: Id64Arg): boolean {\n let anyChanged = false;\n for (const categoryId of Id64.iterable(categoryIds)) {\n const subCategoryIds = this.iModel.subcategories.getSubCategories(categoryId);\n if (undefined !== subCategoryIds)\n for (const subCategoryId of subCategoryIds)\n if (this.setSubCategoryVisible(subCategoryId, true))\n anyChanged = true;\n }\n\n return anyChanged;\n }\n\n /** Change the \"invisible\" flag for the given subcategory's appearance.\n * This requires that the subcategory appearance has been previously loaded by, e.g., a call to IModelConnection.Categories.getSubCategoryInfo.\n * @returns true if the visibility of any subcategory was modified.\n * @see [[enableAllLoadedSubCategories]]\n * @internal\n */\n public setSubCategoryVisible(subCategoryId: Id64String, visible: boolean): boolean {\n const app = this.iModel.subcategories.getSubCategoryAppearance(subCategoryId);\n if (undefined === app)\n return false; // category not enabled or subcategory not found\n\n const curOvr = this.getSubCategoryOverride(subCategoryId);\n const isAlreadyVisible = undefined !== curOvr && undefined !== curOvr.invisible ? !curOvr.invisible : !app.invisible;\n if (isAlreadyVisible === visible)\n return false;\n\n // Preserve existing overrides - just flip the visibility flag.\n const json = undefined !== curOvr ? curOvr.toJSON() : {};\n json.invisible = !visible;\n this.overrideSubCategory(subCategoryId, SubCategoryOverride.fromJSON(json));\n return true;\n }\n\n /** Returns true if solar shadow display is enabled by this display style. */\n public get wantShadows(): boolean {\n return this.is3d() && this.viewFlags.shadows && false !== IModelApp.renderSystem.options.displaySolarShadows;\n }\n\n /** @internal */\n protected registerSettingsEventListeners(): void {\n this.settings.onScheduleScriptPropsChanged.addListener((scriptProps) => {\n if (this._assigningScript)\n return;\n\n try {\n this._assigningScript = true;\n if (scriptProps)\n this.loadScriptReferenceFromScript(scriptProps);\n else\n this.loadScriptReferenceFromTimeline(this.settings.renderTimeline); // eslint-disable-line @typescript-eslint/no-floating-promises\n } finally {\n this._assigningScript = false;\n }\n });\n\n this.settings.onRenderTimelineChanged.addListener((newTimeline) => {\n // Cancel any in-progress loading of script from timeline.\n this._queryRenderTimelinePropsPromise = undefined;\n\n if (!this.settings.scheduleScriptProps)\n this.loadScriptReferenceFromTimeline(newTimeline); // eslint-disable-line @typescript-eslint/no-floating-promises\n });\n\n this.settings.onPlanarClipMaskChanged.addListener((id, newSettings) => {\n if (newSettings)\n this._attachedRealityModelPlanarClipMasks.set(id, PlanarClipMaskState.create(newSettings));\n else\n this._attachedRealityModelPlanarClipMasks.delete(id);\n });\n }\n\n /** @internal */\n protected createRealityModel(props: ContextRealityModelProps): ContextRealityModelState {\n return new ContextRealityModelState(props, this.iModel, this);\n }\n\n /** @internal */\n public getPlanarClipMaskState(modelId: Id64String): PlanarClipMaskState | undefined {\n const model = this.iModel.models.getLoaded(modelId)?.asSpatialModel;\n return (model && model.isRealityModel) ? this._attachedRealityModelPlanarClipMasks.get(modelId) : undefined;\n }\n}\n\n/** A display style that can be applied to 2d views.\n * @public\n * @extensions\n */\nexport class DisplayStyle2dState extends DisplayStyleState {\n public static override get className() { return \"DisplayStyle2d\"; }\n private readonly _settings: DisplayStyleSettings;\n\n public get settings(): DisplayStyleSettings { return this._settings; }\n\n /** @internal */\n public overrideTerrainDisplay(): TerrainDisplayOverrides | undefined { return undefined; }\n\n constructor(props: DisplayStyleProps, iModel: IModelConnection) {\n super(props, iModel);\n this._settings = new DisplayStyleSettings(this.jsonProperties, {\n createContextRealityModel: (modelProps) => this.createRealityModel(modelProps),\n deferContextRealityModels: true,\n });\n\n this._settings.contextRealityModels.populate();\n this.registerSettingsEventListeners();\n }\n}\n\n/** A [[DisplayStyleState]] that can be applied to spatial views.\n * @public\n * @extensions\n */\nexport class DisplayStyle3dState extends DisplayStyleState {\n public static override get className() { return \"DisplayStyle3d\"; }\n private _settings: DisplayStyle3dSettings;\n\n public get settings(): DisplayStyle3dSettings { return this._settings; }\n\n public constructor(props: DisplayStyleProps, iModel: IModelConnection, source?: DisplayStyle3dState) {\n super(props, iModel, source);\n this._settings = new DisplayStyle3dSettings(this.jsonProperties, {\n createContextRealityModel: (modelProps) => this.createRealityModel(modelProps),\n deferContextRealityModels: true,\n });\n\n this._settings.contextRealityModels.populate();\n this.registerSettingsEventListeners();\n }\n\n public get environment(): Environment {\n return this.settings.environment;\n }\n public set environment(env: Environment) {\n this.settings.environment = env;\n }\n\n public get lights(): LightSettings { return this.settings.lights; }\n public set lights(lights: LightSettings) { this.settings.lights = lights; }\n\n /** The direction of the solar light. */\n public get sunDirection(): Readonly<Vector3d> {\n return this.settings.lights.solar.direction;\n }\n\n /** Set the solar light direction based on time value\n * @param time The time in unix time milliseconds.\n * @see [DisplayStyle3dSettings.sunTime]($common) to obtain the current sun time.\n * @see [DisplayStyle3dSettings.setSunTime]($common).\n */\n public setSunTime(time: number) {\n this.settings.setSunTime(time, this.iModel);\n }\n\n /** Settings controlling shadow display. */\n public get solarShadows(): SolarShadowSettings {\n return this.settings.solarShadows;\n }\n public set solarShadows(settings: SolarShadowSettings) {\n this.settings.solarShadows = settings;\n }\n\n /** @internal */\n protected override registerSettingsEventListeners(): void {\n super.registerSettingsEventListeners();\n\n this.settings.onOverridesApplied.addListener((overrides: DisplayStyle3dSettingsProps) => {\n if (overrides.thematic && this.settings.thematic.displayMode === ThematicDisplayMode.Height && undefined === overrides.thematic.range) {\n // Use the project extents as reasonable default height range.\n // NB: assumes using Z axis...\n const extents = this.iModel.projectExtents;\n const props = { ...overrides.thematic };\n props.range = { low: extents.zLow, high: extents.zHigh };\n this.settings.thematic = ThematicDisplay.fromJSON(props);\n }\n });\n }\n\n /** @internal */\n public overrideTerrainDisplay(): TerrainDisplayOverrides | undefined {\n if (undefined !== this.settings.thematic) {\n const ovr = new TerrainDisplayOverrides();\n if (this.viewFlags.thematicDisplay && ThematicGradientMode.IsoLines === this.settings.thematic.gradientSettings.mode)\n ovr.wantSkirts = false;\n if (this.viewFlags.thematicDisplay && (ThematicDisplayMode.Slope === this.settings.thematic.displayMode || ThematicDisplayMode.HillShade === this.settings.thematic.displayMode))\n ovr.wantNormals = true;\n return ovr;\n }\n return undefined;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"DisplayStyleState.js","sourceRoot":"","sources":["../../src/DisplayStyleState.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Views\n */\nimport { assert, BeEvent, Id64, Id64Arg, Id64String } from \"@itwin/core-bentley\";\nimport { Range1d, Vector3d } from \"@itwin/core-geometry\";\nimport {\n BackgroundMapProps, BackgroundMapProvider, BackgroundMapProviderProps, BackgroundMapSettings,\n BaseLayerSettings, BaseMapLayerSettings, ColorDef, ContextRealityModelProps, DisplayStyle3dSettings, DisplayStyle3dSettingsProps,\n DisplayStyleProps, DisplayStyleSettings, Environment, FeatureAppearance, GlobeMode, ImageMapLayerSettings, LightSettings, MapLayerProps,\n MapLayerSettings, MapSubLayerProps, RenderSchedule, RenderTimelineProps,\n SolarShadowSettings, SubCategoryOverride, SubLayerId, TerrainHeightOriginMode, ThematicDisplay, ThematicDisplayMode, ThematicGradientMode, ViewFlags,\n} from \"@itwin/core-common\";\nimport { ApproximateTerrainHeights } from \"./ApproximateTerrainHeights\";\nimport { BackgroundMapGeometry } from \"./BackgroundMapGeometry\";\nimport { ContextRealityModelState } from \"./ContextRealityModelState\";\nimport { ElementState } from \"./EntityState\";\nimport { IModelApp } from \"./IModelApp\";\nimport { IModelConnection } from \"./IModelConnection\";\nimport { PlanarClipMaskState } from \"./PlanarClipMaskState\";\nimport { getCesiumOSMBuildingsUrl, MapLayerIndex, TileTreeReference } from \"./tile/internal\";\nimport { _onScheduleScriptReferenceChanged, _scheduleScriptReference } from './common/internal/Symbols';\nimport { getScriptDelta } from \"./internal/ScriptUtils\";\n\n/** @internal */\nexport class TerrainDisplayOverrides {\n public wantSkirts?: boolean;\n public wantNormals?: boolean;\n public produceGeometry?: boolean;\n}\n\n/** Options controlling display of [OpenStreetMap Buildings](https://cesium.com/platform/cesium-ion/content/cesium-osm-buildings/).\n * @see [[DisplayStyleState.setOSMBuildingDisplay]].\n * @public\n * @extensions\n */\nexport interface OsmBuildingDisplayOptions {\n /** If defined, enables or disables display of the buildings by attaching or detaching the OpenStreetMap Buildings reality model. */\n onOff?: boolean;\n /** If defined, overrides aspects of the appearance of the OpenStreetMap building meshes. */\n appearanceOverrides?: FeatureAppearance;\n}\n\n/** A DisplayStyle defines the parameters for 'styling' the contents of a [[ViewState]].\n * @public\n * @extensions\n */\nexport abstract class DisplayStyleState extends ElementState implements DisplayStyleProps {\n public static override get className() { return \"DisplayStyle\"; }\n private _ellipsoidMapGeometry: BackgroundMapGeometry | undefined;\n private _attachedRealityModelPlanarClipMasks = new Map<Id64String, PlanarClipMaskState>();\n /** @internal */\n protected _queryRenderTimelinePropsPromise?: Promise<RenderTimelineProps | undefined>;\n private _assigningScript = false;\n\n\n /** Event raised just before the [[scheduleScriptReference]] property is changed.\n * @internal as of 5.0, use [[onScheduleScriptChanged]].\n */\n public readonly [_onScheduleScriptReferenceChanged] = new BeEvent<(newScriptReference: RenderSchedule.ScriptReference | undefined) => void>();\n\n private _scriptReference?: RenderSchedule.ScriptReference;\n\n /** Event raised when schedule script edits are made, providing changed element IDs and the editing scope.\n * @beta\n */\n public readonly onScheduleEditingChanged = new BeEvent<(changes: RenderSchedule.EditingChanges[]) => void>();\n\n /** Event raised when schedule script edits are committed (finalized).\n * @beta\n */\n public readonly onScheduleEditingCommitted = new BeEvent<\n () => void\n >();\n\n /** Event raised just before the [[scheduleScript]] property is changed. */\n public readonly onScheduleScriptChanged = new BeEvent<(newScript: RenderSchedule.Script | undefined) => void>();\n /** Event raised just after [[setOSMBuildingDisplay]] changes the enabled state of the OSM buildings. */\n public readonly onOSMBuildingDisplayChanged = new BeEvent<(osmBuildingDisplayEnabled: boolean) => void>();\n\n /** The container for this display style's settings. */\n public abstract get settings(): DisplayStyleSettings;\n\n /** @internal */\n public abstract overrideTerrainDisplay(): TerrainDisplayOverrides | undefined;\n\n /** Construct a new DisplayStyleState from its JSON representation.\n * @param props JSON representation of the display style.\n * @param iModel IModelConnection containing the display style.\n * @param source If the constructor is being invoked from [[EntityState.clone]], the display style that is being cloned.\n */\n constructor(props: DisplayStyleProps, iModel: IModelConnection, source?: DisplayStyleState) {\n super(props, iModel);\n const styles = this.jsonProperties.styles;\n\n if (source)\n this._scriptReference = source._scriptReference;\n\n if (styles) {\n // ###TODO Use DisplayStyleSettings.planarClipMasks\n if (styles.planarClipOvr)\n for (const planarClipOvr of styles.planarClipOvr)\n if (Id64.isValid(planarClipOvr.modelId))\n this._attachedRealityModelPlanarClipMasks.set(planarClipOvr.modelId, PlanarClipMaskState.fromJSON(planarClipOvr));\n }\n }\n\n /** Ensures all of the data required by the display style is loaded. This method is invoked for you by [[ViewState.load]], but if\n * you obtain a display style by some other means you should `await` this method before using the display style.\n */\n public async load(): Promise<void> {\n // If we were cloned, we may already have a valid schedule state, and our display style Id may be invalid / different.\n // Preserve it if still usable.\n if (this._scriptReference) {\n if (this.settings.renderTimeline === this._scriptReference.sourceId) {\n // The script came from the same RenderTimeline element. Keep it.\n return;\n }\n\n if (undefined === this.settings.renderTimeline) {\n // The script came from a display style's JSON properties. Keep it if (1) this style is not persistent or (2) this style has the same Id\n if (this.id === this._scriptReference.sourceId || !Id64.isValidId64(this.id))\n return;\n }\n }\n\n // The schedule script stored in JSON properties takes precedence over the RenderTimeline if both are defined.\n if (this.settings.scheduleScriptProps)\n this.loadScriptReferenceFromScript(this.settings.scheduleScriptProps);\n else\n await this.loadScriptReferenceFromTimeline(this.settings.renderTimeline);\n }\n\n private loadScriptReferenceFromScript(scriptProps: Readonly<RenderSchedule.ScriptProps>): void {\n let newState;\n try {\n const script = RenderSchedule.Script.fromJSON(scriptProps);\n if (script)\n newState = new RenderSchedule.ScriptReference(this.id, script);\n } catch {\n // schedule state is undefined.\n }\n\n if (newState !== this._scriptReference) {\n this[_onScheduleScriptReferenceChanged].raiseEvent(newState);\n this.onScheduleScriptChanged.raiseEvent(newState?.script);\n this._scriptReference = newState;\n }\n }\n\n private async loadScriptReferenceFromTimeline(timelineId: Id64String | undefined): Promise<void> {\n let newState;\n if (timelineId && Id64.isValidId64(timelineId)) {\n try {\n // If a subsequent call to loadScriptReferenceFromTimeline is made while we're awaiting this one, we'll abort this one.\n const promise = this._queryRenderTimelinePropsPromise = this.queryRenderTimelineProps(timelineId);\n const timeline = await promise;\n if (promise !== this._queryRenderTimelinePropsPromise)\n return;\n\n if (timeline) {\n const scriptProps = JSON.parse(timeline.script);\n const script = RenderSchedule.Script.fromJSON(scriptProps);\n if (script)\n newState = new RenderSchedule.ScriptReference(timelineId, script);\n }\n } catch {\n // schedule state is undefined.\n }\n }\n\n this._queryRenderTimelinePropsPromise = undefined;\n if (newState !== this._scriptReference) {\n this[_onScheduleScriptReferenceChanged].raiseEvent(newState);\n this.onScheduleScriptChanged.raiseEvent(newState?.script);\n this._scriptReference = newState;\n }\n }\n\n /** @internal */\n protected async queryRenderTimelineProps(timelineId: Id64String): Promise<RenderTimelineProps | undefined> {\n try {\n const omitScriptElementIds = !IModelApp.tileAdmin.enableFrontendScheduleScripts;\n return await this.iModel.elements.loadProps(timelineId, { renderTimeline: { omitScriptElementIds } }) as RenderTimelineProps;\n } catch {\n return undefined;\n }\n }\n\n /** @internal */\n public get displayTerrain() {\n return this.viewFlags.backgroundMap && this.settings.backgroundMap.applyTerrain;\n }\n\n /** @internal */\n public get globeMode(): GlobeMode { return this.settings.backgroundMap.globeMode; }\n\n /** Settings controlling how the base map is displayed within a view.\n * The base map can be provided by any map imagery source or set to be a single color.\n */\n public get backgroundMapBase(): BaseLayerSettings {\n return this.settings.mapImagery.backgroundBase;\n }\n public set backgroundMapBase(base: BaseLayerSettings) {\n this.settings.mapImagery.backgroundBase = base;\n this._synchBackgroundMapImagery();\n }\n\n /** The settings controlling how a background map is displayed within a view.\n * @see [[ViewFlags.backgroundMap]] for toggling display of the map on or off.\n */\n public get backgroundMapSettings(): BackgroundMapSettings { return this.settings.backgroundMap; }\n public set backgroundMapSettings(settings: BackgroundMapSettings) {\n this.settings.backgroundMap = settings;\n }\n\n /** Modify a subset of the background map display settings.\n * @param name props JSON representation of the properties to change. Any properties not present will retain their current values in `this.backgroundMapSettings`.\n * @see [[ViewFlags.backgroundMap]] for toggling display of the map.\n * @see [[changeBackgroundMapProvider]] to change the type of map imagery displayed.\n *\n * Example that changes only the elevation, leaving the provider and type unchanged:\n * ``` ts\n * style.changeBackgroundMapProps({ groundBias: 16.2 });\n * ```\n * @public\n */\n public changeBackgroundMapProps(props: BackgroundMapProps): void {\n const newSettings = this.backgroundMapSettings.clone(props);\n this.backgroundMapSettings = newSettings;\n }\n\n /** Change aspects of the [BackgroundMapProvider]($common) from which background map imagery is obtained.\n * Any properties not explicitly specified by `props` will retain their current values.\n * @public\n */\n public changeBackgroundMapProvider(props: BackgroundMapProviderProps): void {\n const base = this.settings.mapImagery.backgroundBase;\n if (base instanceof ColorDef) {\n this.settings.mapImagery.backgroundBase = BaseMapLayerSettings.fromProvider(BackgroundMapProvider.fromJSON(props));\n } else {\n const provider = base.provider ? base.provider.clone(props) : BackgroundMapProvider.fromJSON(props);\n this.settings.mapImagery.backgroundBase = base.cloneWithProvider(provider);\n }\n\n this._synchBackgroundMapImagery();\n }\n\n /** Call a function for each reality model attached to this display style.\n * @see [DisplayStyleSettings.contextRealityModels]($common).\n */\n public forEachRealityModel(func: (model: ContextRealityModelState) => void): void {\n for (const model of this.settings.contextRealityModels.models) {\n assert(model instanceof ContextRealityModelState);\n func(model);\n }\n }\n\n private * getRealityModels(): Iterable<ContextRealityModelState> {\n for (const model of this.settings.contextRealityModels.models) {\n assert(model instanceof ContextRealityModelState);\n yield model;\n }\n }\n\n /** Iterate over the reality models attached to this display style. */\n public get realityModels(): Iterable<ContextRealityModelState> {\n return this.getRealityModels();\n }\n\n /** @internal */\n public * getTileTreeRefs(): Iterable<TileTreeReference> {\n for (const model of this.realityModels) {\n if (!model.invisible) {\n yield model.treeRef;\n }\n }\n }\n\n /** Performs logical comparison against another display style. Two display styles are logically equivalent if they have the same name, Id, and settings.\n * @param other The display style to which to compare.\n * @returns true if the specified display style is logically equivalent to this display style - i.e., both styles have the same values for all of their settings.\n */\n public equalState(other: DisplayStyleState): boolean {\n if (this.name !== other.name || this.id !== other.id)\n return false;\n else\n return JSON.stringify(this.settings) === JSON.stringify(other.settings);\n }\n\n /** The name of this DisplayStyle */\n public get name(): string { return this.code.value; }\n\n /** Change the Id of the [RenderTimeline]($backend) element that hosts the [RenderSchedule.Script]($common) to be applied by this display style for\n * animating the contents of the view, and update [[scheduleScript]] using the script associated with the [RenderTimeline]($backend) element.\n * @see [DisplayStyleSettings.renderTimeline]($common).\n */\n public async changeRenderTimeline(timelineId: Id64String | undefined): Promise<void> {\n // Potentially trigger async loading of new schedule state.\n this.settings.renderTimeline = timelineId;\n\n // Await async loading if necessary.\n // Note the `await` in loadScriptReferenceFromTimeline will resolve before this one [per the spec](https://262.ecma-international.org/6.0/#sec-triggerpromisereactions).\n if (this._queryRenderTimelinePropsPromise)\n await this._queryRenderTimelinePropsPromise;\n }\n\n /**\n * Begins or updates a schedule script editing session for the current display style.\n * During an editing session, changes to the schedule script are applied incrementally\n * using temporary dynamic tiles, allowing for interactive preview of visual changes like color,\n * transforms, visibility, and cutting planes — without requiring a full tile tree reload.\n *\n * Calling this method multiple times will update the current editing session with new script changes.\n * When all edits are complete, you must invoke [[commitScheduleEditing]] to finalize the session and\n * trigger a full tile tree refresh with the committed script.\n *\n * @note You cannot use schedule script editing while a @see [[GraphicalEditingScope]] is active.\n *\n * Example:\n * ```ts\n * [[include:ScheduleScript_editingMode]]\n * ```\n *\n * @beta\n */\n public setScheduleEditing(newScript: RenderSchedule.Script): void {\n const prevScript = this.scheduleScript;\n const changes: Array<{ timeline: RenderSchedule.ModelTimeline, elements: Set<Id64String> }> = [];\n\n const globalDelta = getScriptDelta(prevScript, newScript);\n\n for (const timeline of newScript.modelTimelines) {\n const ids = new Set<Id64String>();\n for (const et of timeline.elementTimelines) {\n for (const id of et.elementIds) {\n if (globalDelta.has(id))\n ids.add(id);\n }\n }\n\n if (ids.size > 0)\n changes.push({ timeline, elements: ids });\n }\n\n this.scheduleScript = newScript;\n this.onScheduleEditingChanged.raiseEvent(changes);\n\n for (const modelTimeline of this.scheduleScript.modelTimelines) {\n modelTimeline.isEditingCommitted = false;\n }\n }\n\n /**\n * Finalizes a script editing session previously started with [[setScheduleEditing]].\n * This applies all pending script changes and triggers a full tile tree reload to reflect them in the viewport.\n * After this call, the schedule script is considered committed and editing mode ends.\n *\n * @see [[setScheduleEditing]] to begin a schedule script editing session.\n * @beta\n */\n public commitScheduleEditing(): void {\n this.onScheduleEditingCommitted.raiseEvent();\n if (!this.scheduleScript)\n return;\n for (const modelTimeline of this.scheduleScript.modelTimelines) {\n modelTimeline.isEditingCommitted = true;\n }\n }\n\n /** The [RenderSchedule.Script]($common) that animates the contents of the view, if any.\n * @see [[changeRenderTimeline]] to change the script.\n */\n public get scheduleScript(): RenderSchedule.Script | undefined {\n return this._scriptReference?.script;\n }\n\n public set scheduleScript(script: RenderSchedule.Script | undefined) {\n if (script === this.scheduleScript)\n return;\n\n try {\n const scriptRef = script ? new RenderSchedule.ScriptReference(script) : undefined;\n this[_onScheduleScriptReferenceChanged].raiseEvent(scriptRef);\n this.onScheduleScriptChanged.raiseEvent(script);\n this._scriptReference = scriptRef;\n\n this._assigningScript = true;\n this.settings.scheduleScriptProps = script?.toJSON();\n\n if (!script)\n this.loadScriptReferenceFromTimeline(this.settings.renderTimeline); // eslint-disable-line @typescript-eslint/no-floating-promises\n } finally {\n this._assigningScript = false;\n }\n }\n\n /** The [RenderSchedule.Script]($common) that animates the contents of the view, if any, along with the Id of the element that hosts the script.\n * @note The host element may be a [RenderTimeline]($backend) or a [DisplayStyle]($backend).\n * @internal\n */\n public get [_scheduleScriptReference](): RenderSchedule.ScriptReference | undefined {\n return this._scriptReference;\n }\n\n /** Attach a [ContextRealityModel]($common) to this display style.\n * @see [DisplayStyleSettings.contextRealityModels]($common).\n * @see [ContextRealityModels.add]($common)\n */\n public attachRealityModel(props: ContextRealityModelProps): ContextRealityModelState {\n const model = this.settings.contextRealityModels.add(props);\n assert(model instanceof ContextRealityModelState);\n return model;\n }\n\n /** Detach the first [ContextRealityModel]($common) that matches the specified name and url.\n * @see [DisplayStyleSettings.contextRealityModels]($common)\n * @see [ContextRealityModels.delete]($common)\n */\n public detachRealityModelByNameAndUrl(name: string, url: string): boolean {\n const model = this.settings.contextRealityModels.models.find((x) => x.matchesNameAndUrl(name, url));\n return undefined !== model && this.settings.contextRealityModels.delete(model);\n }\n\n /** Get the [[ContextRealityModelState]] that displays the OpenStreetMap worldwide building layer, if enabled.\n * @see [[setOSMBuildingDisplay]]\n */\n public getOSMBuildingRealityModel(): ContextRealityModelState | undefined {\n if (!this.iModel.isGeoLocated || this.globeMode !== GlobeMode.Ellipsoid) // The OSM tile tree is ellipsoidal.\n return undefined;\n\n const url = getCesiumOSMBuildingsUrl();\n if (undefined === url)\n return undefined;\n\n return this.contextRealityModelStates.find((x) => x.url === url);\n }\n\n /** Set the display of the OpenStreetMap worldwide building layer in this display style by attaching or detaching the reality model displaying the buildings.\n * The OSM buildings are displayed from a reality model aggregated and served from Cesium ion.<(https://cesium.com/content/cesium-osm-buildings/>\n * The options [[OsmBuildingDisplayOptions]] control the display and appearance overrides.\n */\n public setOSMBuildingDisplay(options: OsmBuildingDisplayOptions): boolean {\n if (!this.iModel.isGeoLocated || this.globeMode !== GlobeMode.Ellipsoid) // The OSM tile tree is ellipsoidal.\n return false;\n\n const url = getCesiumOSMBuildingsUrl();\n if (undefined === url)\n return false;\n\n let model = this.settings.contextRealityModels.models.find((x) => x.url === url);\n if (options.onOff === false) {\n const turnedOff = undefined !== model && this.settings.contextRealityModels.delete(model);\n if (turnedOff)\n this.onOSMBuildingDisplayChanged.raiseEvent(false);\n\n return turnedOff;\n }\n\n if (!model) {\n const name = IModelApp.localization.getLocalizedString(\"iModelJs:RealityModelNames.OSMBuildings\");\n model = this.attachRealityModel({ tilesetUrl: url, name });\n this.onOSMBuildingDisplayChanged.raiseEvent(true);\n }\n\n if (options.appearanceOverrides)\n model.appearanceOverrides = options.appearanceOverrides;\n\n return true;\n }\n\n /** Return if a context reality model is attached.\n * @see [[ContextRealityModelProps]].\n */\n public hasAttachedRealityModel(name: string, url: string): boolean {\n return undefined !== this.settings.contextRealityModels.models.find((x) => x.matchesNameAndUrl(name, url));\n }\n\n /** @internal */\n public getMapLayers(isOverlay: boolean) { return isOverlay ? this.settings.mapImagery.overlayLayers : this.settings.mapImagery.backgroundLayers; }\n\n /** Attach a map layer to display style.\n * @param Settings representing the map layer.\n * @param mapLayerIndex the [[MapLayerIndex]] where the map layer should be attached.\n * @public\n */\n public attachMapLayer(options: { settings: MapLayerSettings, mapLayerIndex: MapLayerIndex }): void {\n const layerSettings = options.settings.clone({});\n if (undefined === layerSettings)\n return;\n\n const isOverlay = options.mapLayerIndex.isOverlay;\n const insertIndex = options.mapLayerIndex.index;\n const layers = this.getMapLayers(isOverlay);\n\n if (insertIndex < 0 || insertIndex > (layers.length - 1)) {\n this.getMapLayers(isOverlay).push(layerSettings);\n } else {\n layers.splice(insertIndex, 0, layerSettings);\n }\n\n this._synchBackgroundMapImagery();\n }\n\n /**\n * @param mapLayerIndex the [[MapLayerIndex]] where the map layer should be attached.\n * @internal\n */\n public attachMapLayerProps(options: { props: MapLayerProps, mapLayerIndex: MapLayerIndex }): void {\n const settings = MapLayerSettings.fromJSON(options.props);\n if (undefined === settings)\n return;\n\n this.attachMapLayer({ settings, mapLayerIndex: options.mapLayerIndex });\n }\n\n /** @internal */\n public hasAttachedMapLayer(name: string, source: string, isOverlay: boolean): boolean {\n return -1 !== this.findMapLayerIndexByNameAndSource(name, source, isOverlay);\n }\n\n /** @internal */\n public detachMapLayerByNameAndSource(name: string, source: string, isOverlay: boolean): void {\n const index = this.findMapLayerIndexByNameAndSource(name, source, isOverlay);\n if (- 1 !== index)\n this.detachMapLayerByIndex({ index, isOverlay });\n }\n\n /** Detach map layer at index (-1 to remove all layers)\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer to detach.\n * @public\n */\n public detachMapLayerByIndex(mapLayerIndex: MapLayerIndex): void {\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n const index = mapLayerIndex.index;\n if (index < 0)\n layers.length = 0;\n else\n layers.splice(index, 1);\n\n this._synchBackgroundMapImagery();\n }\n\n /**\n * Lookup a maplayer index by name and source.\n * @param name Name of of the layer.\n * @param source Unique string identifying the layer.\n * @param isOverlay true if layer is overlay, otherwise layer is background. Defaults to false.\n * @public\n *\n */\n public findMapLayerIndexByNameAndSource(name: string, source: string, isOverlay: boolean) {\n return this.getMapLayers(isOverlay).findIndex((layer) => layer.matchesNameAndSource(name, source));\n }\n\n /** Return the map layer settings for a map layer at the provided index.\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer.\n * @public\n */\n public mapLayerAtIndex(mapLayerIndex: MapLayerIndex): MapLayerSettings | undefined {\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n const index = mapLayerIndex.index;\n return (index < 0 || index >= layers.length) ? undefined : layers[index];\n }\n\n /** Return map base transparency as a number between 0 and 1.\n * @public\n */\n public get baseMapTransparency(): number {\n return this.settings.mapImagery.baseTransparency;\n }\n\n /** Change the map base transparency as a number between 0 and 1.\n * @public\n */\n public changeBaseMapTransparency(transparency: number) {\n if (this.settings.mapImagery.backgroundBase instanceof ColorDef) {\n this.settings.mapImagery.backgroundBase = this.settings.mapImagery.backgroundBase.withTransparency(transparency * 255);\n } else {\n this.settings.mapImagery.backgroundBase = this.settings.mapImagery.backgroundBase.clone({ transparency });\n }\n this._synchBackgroundMapImagery();\n }\n\n /** Modify a subset of a map layer settings.\n * @param props props JSON representation of the properties to change. Any properties not present will retain their current values.\n * @param mapLayerIndex the [[MapLayerIndex]] where the map layer should be inserted.\n *\n * Example that changes only the visibility of the first overlay map layer.\n * ``` ts\n * style.changeMapLayerProps({ visible: false }, 0, false);\n * ```\n * @public\n */\n public changeMapLayerProps(props: Partial<MapLayerProps>, mapLayerIndex: MapLayerIndex) {\n const index = mapLayerIndex.index;\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n if (index < 0 || index >= layers.length)\n return;\n layers[index] = layers[index].clone(props);\n this._synchBackgroundMapImagery();\n }\n\n /** Change the credentials for a map layer.\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer to change the credentials of.\n * @public\n */\n public changeMapLayerCredentials(mapLayerIndex: MapLayerIndex, userName?: string, password?: string) {\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n const index = mapLayerIndex.index;\n if (index < 0 || index >= layers.length)\n return;\n const layer = layers[index];\n if (layer instanceof ImageMapLayerSettings) {\n layer.setCredentials(userName, password);\n this._synchBackgroundMapImagery();\n }\n }\n\n /** Modify a subset of a sub-layer settings.\n * @param props props JSON representation of the properties to change. Any properties not present will retain their current values.\n * @param subLayerId Id of the sub-layer that should be modified.\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer that contains the sub-layer to be modified.\n *\n * @public\n */\n public changeMapSubLayerProps(props: Partial<MapSubLayerProps>, subLayerId: SubLayerId, mapLayerIndex: MapLayerIndex) {\n const mapLayerSettings = this.mapLayerAtIndex(mapLayerIndex);\n if (undefined === mapLayerSettings)\n return;\n\n if (!(mapLayerSettings instanceof ImageMapLayerSettings)) {\n assert(false);\n return;\n }\n\n const subLayers = new Array<MapSubLayerProps>();\n for (const subLayer of mapLayerSettings.subLayers) {\n subLayers.push((subLayerId === -1 || subLayer.id === subLayerId) ? subLayer.clone(props).toJSON() : subLayer.toJSON());\n }\n\n this.changeMapLayerProps({ subLayers }, mapLayerIndex);\n }\n\n /* @internal */\n private _synchBackgroundMapImagery() {\n this.settings.synchMapImagery();\n }\n\n /** Move map layer to top.\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer to move.\n * @public\n *\n */\n public moveMapLayerToTop(mapLayerIndex: MapLayerIndex) {\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n const index = mapLayerIndex.index;\n if (index >= 0 && index < layers.length - 1) {\n const layer = layers.splice(index, 1);\n layers.push(layer[0]);\n this._synchBackgroundMapImagery();\n }\n }\n\n /** Move map layer to bottom.\n * @param mapLayerIndex the [[MapLayerIndex]] of the map layer to move.\n * @public\n */\n public moveMapLayerToBottom(mapLayerIndex: MapLayerIndex) {\n const layers = this.getMapLayers(mapLayerIndex.isOverlay);\n const index = mapLayerIndex.index;\n if (index > 0 && index < layers.length) {\n const layer = layers.splice(index, 1);\n layers.unshift(layer[0]);\n this._synchBackgroundMapImagery();\n }\n }\n\n /** Reorder map layers\n * @param fromIndex index of map layer to move\n * @param toIndex insert index. If equal to length of map array the map layer is moved to end of array.\n * @param isOverlay true if map-layer is part of the overlay map, otherwise it is part of the background map.\n * @public\n */\n public moveMapLayerToIndex(fromIndex: number, toIndex: number, isOverlay: boolean) {\n const layers = this.getMapLayers(isOverlay);\n if (fromIndex === toIndex)\n return;\n\n if (fromIndex < 0 || fromIndex >= layers.length || toIndex > layers.length)\n return;\n\n const layer = layers.splice(fromIndex, 1);\n layers.splice(toIndex, 0, layer[0]); // note: if toIndex === settings.mapImagery.backgroundLayers.length item is appended\n this._synchBackgroundMapImagery();\n }\n\n /** Flags controlling various aspects of the display style.\n * @see [DisplayStyleSettings.viewFlags]($common)\n */\n public get viewFlags(): ViewFlags { return this.settings.viewFlags; }\n public set viewFlags(flags: ViewFlags) { this.settings.viewFlags = flags; }\n\n /** The background color for this DisplayStyle */\n public get backgroundColor(): ColorDef { return this.settings.backgroundColor; }\n public set backgroundColor(val: ColorDef) { this.settings.backgroundColor = val; }\n\n /** The color used to draw geometry in monochrome mode.\n * @see [ViewFlags.monochrome]($common) for enabling monochrome mode.\n */\n public get monochromeColor(): ColorDef { return this.settings.monochromeColor; }\n public set monochromeColor(val: ColorDef) { this.settings.monochromeColor = val; }\n\n private _backgroundMapGeometry?: {\n bimElevationBias: number;\n geometry: BackgroundMapGeometry;\n globeMode: GlobeMode;\n };\n\n /** @internal */\n public anyMapLayersVisible(overlay: boolean): boolean {\n const layers = this.getMapLayers(overlay);\n\n for (const mapLayer of layers)\n if (mapLayer.visible)\n return true;\n\n return false;\n }\n\n /** @internal */\n public getIsBackgroundMapVisible(): boolean {\n return undefined !== this.iModel.ecefLocation && (this.viewFlags.backgroundMap || this.anyMapLayersVisible(false));\n }\n /** @internal */\n public get backgroundMapElevationBias(): number | undefined {\n if (this.backgroundMapSettings.applyTerrain) {\n const terrainSettings = this.backgroundMapSettings.terrainSettings;\n switch (terrainSettings.heightOriginMode) {\n case TerrainHeightOriginMode.Ground:\n return (undefined === this.iModel.projectCenterAltitude) ? undefined : terrainSettings.heightOrigin + terrainSettings.exaggeration * this.iModel.projectCenterAltitude;\n\n case TerrainHeightOriginMode.Geodetic:\n return terrainSettings.heightOrigin;\n\n case TerrainHeightOriginMode.Geoid:\n return (undefined === this.iModel.geodeticToSeaLevel) ? undefined : terrainSettings.heightOrigin + this.iModel.geodeticToSeaLevel;\n }\n } else {\n return this.backgroundMapSettings.groundBias;\n }\n\n }\n\n /** @internal */\n public getBackgroundMapGeometry(): BackgroundMapGeometry | undefined {\n if (undefined === this.iModel.ecefLocation)\n return undefined;\n\n const bimElevationBias = this.backgroundMapElevationBias;\n\n if (undefined === bimElevationBias)\n return undefined;\n\n const globeMode = this.globeMode;\n if (undefined === this._backgroundMapGeometry || this._backgroundMapGeometry.globeMode !== globeMode || this._backgroundMapGeometry.bimElevationBias !== bimElevationBias) {\n const geometry = new BackgroundMapGeometry(bimElevationBias, globeMode, this.iModel);\n this._backgroundMapGeometry = { bimElevationBias, geometry, globeMode };\n }\n return this._backgroundMapGeometry.geometry;\n }\n\n /** [[ContextRealityModelState]]s attached to this display style.\n * @see [DisplayStyleSettings.contextRealityModels]($common).\n */\n public get contextRealityModelStates(): ReadonlyArray<ContextRealityModelState> {\n return this.settings.contextRealityModels.models as ContextRealityModelState[];\n }\n\n /** @internal */\n public getGlobalGeometryAndHeightRange(): { geometry: BackgroundMapGeometry, heightRange: Range1d } | undefined {\n let geometry = this.getIsBackgroundMapVisible() ? this.getBackgroundMapGeometry() : undefined;\n const terrainRange = ApproximateTerrainHeights.instance.globalHeightRange;\n let heightRange = this.displayTerrain ? terrainRange : Range1d.createXX(-1, 1);\n if (this.globeMode === GlobeMode.Ellipsoid && this.contextRealityModelStates.find((model) => model.isGlobal)) {\n if (!geometry) {\n if (!this._ellipsoidMapGeometry)\n this._ellipsoidMapGeometry = new BackgroundMapGeometry(0, GlobeMode.Ellipsoid, this.iModel);\n\n geometry = this._ellipsoidMapGeometry;\n }\n\n heightRange = terrainRange;\n }\n\n return geometry ? { geometry, heightRange } : undefined;\n }\n\n /** Returns true if this is a 3d display style. */\n public is3d(): this is DisplayStyle3dState { return this instanceof DisplayStyle3dState; }\n\n /** Customize the way geometry belonging to a [[SubCategory]] is drawn by this display style.\n * @param id The ID of the SubCategory whose appearance is to be overridden.\n * @param ovr The overrides to apply to the [[SubCategoryAppearance]].\n * @see [[dropSubCategoryOverride]]\n */\n public overrideSubCategory(id: Id64String, ovr: SubCategoryOverride) { this.settings.overrideSubCategory(id, ovr); }\n\n /** Remove any [[SubCategoryOverride]] applied to a [[SubCategoryAppearance]] by this style.\n * @param id The ID of the [[SubCategory]].\n * @see [[overrideSubCategory]]\n */\n public dropSubCategoryOverride(id: Id64String) { this.settings.dropSubCategoryOverride(id); }\n\n /** Returns true if an [[SubCategoryOverride]]s are defined by this style. */\n public get hasSubCategoryOverride() { return this.settings.hasSubCategoryOverride; }\n\n /** Obtain the overrides applied to a [[SubCategoryAppearance]] by this style.\n * @param id The ID of the [[SubCategory]].\n * @returns The corresponding SubCategoryOverride, or undefined if the SubCategory's appearance is not overridden.\n * @see [[overrideSubCategory]]\n */\n public getSubCategoryOverride(id: Id64String): SubCategoryOverride | undefined { return this.settings.getSubCategoryOverride(id); }\n\n /** For each subcategory belonging to any of the specified categories, make it visible by turning off the \"invisible\" flag in its subcategory appearance.\n * This requires that the categories and subcategories have been previously loaded by, e.g., a call to IModelConnection.querySubCategories.\n * @returns true if the visibility of any subcategory was modified.\n * @see Viewport.changeCategoryDisplay\n * @see ViewCreator3dOptions.allSubCategoriesVisible\n * @internal\n */\n public enableAllLoadedSubCategories(categoryIds: Id64Arg): boolean {\n let anyChanged = false;\n for (const categoryId of Id64.iterable(categoryIds)) {\n const subCategoryIds = this.iModel.subcategories.getSubCategories(categoryId);\n if (undefined !== subCategoryIds)\n for (const subCategoryId of subCategoryIds)\n if (this.setSubCategoryVisible(subCategoryId, true))\n anyChanged = true;\n }\n\n return anyChanged;\n }\n\n /** Change the \"invisible\" flag for the given subcategory's appearance.\n * This requires that the subcategory appearance has been previously loaded by, e.g., a call to IModelConnection.Categories.getSubCategoryInfo.\n * @returns true if the visibility of any subcategory was modified.\n * @see [[enableAllLoadedSubCategories]]\n * @internal\n */\n public setSubCategoryVisible(subCategoryId: Id64String, visible: boolean): boolean {\n const app = this.iModel.subcategories.getSubCategoryAppearance(subCategoryId);\n if (undefined === app)\n return false; // category not enabled or subcategory not found\n\n const curOvr = this.getSubCategoryOverride(subCategoryId);\n const isAlreadyVisible = undefined !== curOvr && undefined !== curOvr.invisible ? !curOvr.invisible : !app.invisible;\n if (isAlreadyVisible === visible)\n return false;\n\n // Preserve existing overrides - just flip the visibility flag.\n const json = undefined !== curOvr ? curOvr.toJSON() : {};\n json.invisible = !visible;\n this.overrideSubCategory(subCategoryId, SubCategoryOverride.fromJSON(json));\n return true;\n }\n\n /** Returns true if solar shadow display is enabled by this display style. */\n public get wantShadows(): boolean {\n return this.is3d() && this.viewFlags.shadows && false !== IModelApp.renderSystem.options.displaySolarShadows;\n }\n\n /** @internal */\n protected registerSettingsEventListeners(): void {\n this.settings.onScheduleScriptPropsChanged.addListener((scriptProps) => {\n if (this._assigningScript)\n return;\n\n try {\n this._assigningScript = true;\n if (scriptProps)\n this.loadScriptReferenceFromScript(scriptProps);\n else\n this.loadScriptReferenceFromTimeline(this.settings.renderTimeline); // eslint-disable-line @typescript-eslint/no-floating-promises\n } finally {\n this._assigningScript = false;\n }\n });\n\n this.settings.onRenderTimelineChanged.addListener((newTimeline) => {\n // Cancel any in-progress loading of script from timeline.\n this._queryRenderTimelinePropsPromise = undefined;\n\n if (!this.settings.scheduleScriptProps)\n this.loadScriptReferenceFromTimeline(newTimeline); // eslint-disable-line @typescript-eslint/no-floating-promises\n });\n\n this.settings.onPlanarClipMaskChanged.addListener((id, newSettings) => {\n if (newSettings)\n this._attachedRealityModelPlanarClipMasks.set(id, PlanarClipMaskState.create(newSettings));\n else\n this._attachedRealityModelPlanarClipMasks.delete(id);\n });\n }\n\n /** @internal */\n protected createRealityModel(props: ContextRealityModelProps): ContextRealityModelState {\n return new ContextRealityModelState(props, this.iModel, this);\n }\n\n /** @internal */\n public getPlanarClipMaskState(modelId: Id64String): PlanarClipMaskState | undefined {\n const model = this.iModel.models.getLoaded(modelId)?.asSpatialModel;\n return (model && model.isRealityModel) ? this._attachedRealityModelPlanarClipMasks.get(modelId) : undefined;\n }\n}\n\n/** A display style that can be applied to 2d views.\n * @public\n * @extensions\n */\nexport class DisplayStyle2dState extends DisplayStyleState {\n public static override get className() { return \"DisplayStyle2d\"; }\n private readonly _settings: DisplayStyleSettings;\n\n public get settings(): DisplayStyleSettings { return this._settings; }\n\n /** @internal */\n public overrideTerrainDisplay(): TerrainDisplayOverrides | undefined { return undefined; }\n\n constructor(props: DisplayStyleProps, iModel: IModelConnection) {\n super(props, iModel);\n this._settings = new DisplayStyleSettings(this.jsonProperties, {\n createContextRealityModel: (modelProps) => this.createRealityModel(modelProps),\n deferContextRealityModels: true,\n });\n\n this._settings.contextRealityModels.populate();\n this.registerSettingsEventListeners();\n }\n}\n\n/** A [[DisplayStyleState]] that can be applied to spatial views.\n * @public\n * @extensions\n */\nexport class DisplayStyle3dState extends DisplayStyleState {\n public static override get className() { return \"DisplayStyle3d\"; }\n private _settings: DisplayStyle3dSettings;\n\n public get settings(): DisplayStyle3dSettings { return this._settings; }\n\n public constructor(props: DisplayStyleProps, iModel: IModelConnection, source?: DisplayStyle3dState) {\n super(props, iModel, source);\n this._settings = new DisplayStyle3dSettings(this.jsonProperties, {\n createContextRealityModel: (modelProps) => this.createRealityModel(modelProps),\n deferContextRealityModels: true,\n });\n\n this._settings.contextRealityModels.populate();\n this.registerSettingsEventListeners();\n }\n\n public get environment(): Environment {\n return this.settings.environment;\n }\n public set environment(env: Environment) {\n this.settings.environment = env;\n }\n\n public get lights(): LightSettings { return this.settings.lights; }\n public set lights(lights: LightSettings) { this.settings.lights = lights; }\n\n /** The direction of the solar light. */\n public get sunDirection(): Readonly<Vector3d> {\n return this.settings.lights.solar.direction;\n }\n\n /** Set the solar light direction based on time value\n * @param time The time in unix time milliseconds.\n * @see [DisplayStyle3dSettings.sunTime]($common) to obtain the current sun time.\n * @see [DisplayStyle3dSettings.setSunTime]($common).\n */\n public setSunTime(time: number) {\n this.settings.setSunTime(time, this.iModel);\n }\n\n /** Settings controlling shadow display. */\n public get solarShadows(): SolarShadowSettings {\n return this.settings.solarShadows;\n }\n public set solarShadows(settings: SolarShadowSettings) {\n this.settings.solarShadows = settings;\n }\n\n /** @internal */\n protected override registerSettingsEventListeners(): void {\n super.registerSettingsEventListeners();\n\n this.settings.onOverridesApplied.addListener((overrides: DisplayStyle3dSettingsProps) => {\n if (overrides.thematic && this.settings.thematic.displayMode === ThematicDisplayMode.Height && undefined === overrides.thematic.range) {\n // Use the project extents as reasonable default height range.\n // NB: assumes using Z axis...\n const extents = this.iModel.projectExtents;\n const props = { ...overrides.thematic };\n props.range = { low: extents.zLow, high: extents.zHigh };\n this.settings.thematic = ThematicDisplay.fromJSON(props);\n }\n });\n }\n\n /** @internal */\n public overrideTerrainDisplay(): TerrainDisplayOverrides | undefined {\n if (undefined !== this.settings.thematic) {\n const ovr = new TerrainDisplayOverrides();\n if (this.viewFlags.thematicDisplay && ThematicGradientMode.IsoLines === this.settings.thematic.gradientSettings.mode)\n ovr.wantSkirts = false;\n if (this.viewFlags.thematicDisplay && (ThematicDisplayMode.Slope === this.settings.thematic.displayMode || ThematicDisplayMode.HillShade === this.settings.thematic.displayMode))\n ovr.wantNormals = true;\n return ovr;\n }\n return undefined;\n }\n}\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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"}
|