@itwin/frontend-devtools 3.0.0-dev.126 → 3.0.0-dev.130
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/README.md +7 -0
- package/lib/cjs/FrontEndDevTools.d.ts.map +1 -1
- package/lib/cjs/FrontEndDevTools.js +2 -0
- package/lib/cjs/FrontEndDevTools.js.map +1 -1
- package/lib/cjs/tools/ClipTools.d.ts +2 -2
- package/lib/cjs/tools/ClipTools.d.ts.map +1 -1
- package/lib/cjs/tools/ClipTools.js +2 -2
- package/lib/cjs/tools/ClipTools.js.map +1 -1
- package/lib/cjs/tools/DisplayStyleTools.d.ts +31 -19
- package/lib/cjs/tools/DisplayStyleTools.d.ts.map +1 -1
- package/lib/cjs/tools/DisplayStyleTools.js +92 -17
- package/lib/cjs/tools/DisplayStyleTools.js.map +1 -1
- package/lib/cjs/tools/PlanProjectionTools.d.ts +6 -6
- package/lib/cjs/tools/PlanProjectionTools.d.ts.map +1 -1
- package/lib/cjs/tools/PlanProjectionTools.js +6 -6
- package/lib/cjs/tools/PlanProjectionTools.js.map +1 -1
- package/lib/cjs/tools/SourceAspectIdTools.js +1 -1
- package/lib/cjs/tools/SourceAspectIdTools.js.map +1 -1
- package/lib/cjs/tools/ViewportTools.d.ts +15 -0
- package/lib/cjs/tools/ViewportTools.d.ts.map +1 -1
- package/lib/cjs/tools/ViewportTools.js +46 -1
- package/lib/cjs/tools/ViewportTools.js.map +1 -1
- package/lib/cjs/widgets/DiagnosticsPanel.d.ts +2 -0
- package/lib/cjs/widgets/DiagnosticsPanel.d.ts.map +1 -1
- package/lib/cjs/widgets/DiagnosticsPanel.js +6 -0
- package/lib/cjs/widgets/DiagnosticsPanel.js.map +1 -1
- package/lib/cjs/widgets/RenderCommandBreakdown.d.ts +16 -0
- package/lib/cjs/widgets/RenderCommandBreakdown.d.ts.map +1 -0
- package/lib/cjs/widgets/RenderCommandBreakdown.js +69 -0
- package/lib/cjs/widgets/RenderCommandBreakdown.js.map +1 -0
- package/lib/esm/FrontEndDevTools.d.ts.map +1 -1
- package/lib/esm/FrontEndDevTools.js +5 -3
- package/lib/esm/FrontEndDevTools.js.map +1 -1
- package/lib/esm/tools/ClipTools.d.ts +2 -2
- package/lib/esm/tools/ClipTools.d.ts.map +1 -1
- package/lib/esm/tools/ClipTools.js +2 -2
- package/lib/esm/tools/ClipTools.js.map +1 -1
- package/lib/esm/tools/DisplayStyleTools.d.ts +31 -19
- package/lib/esm/tools/DisplayStyleTools.d.ts.map +1 -1
- package/lib/esm/tools/DisplayStyleTools.js +90 -16
- package/lib/esm/tools/DisplayStyleTools.js.map +1 -1
- package/lib/esm/tools/PlanProjectionTools.d.ts +6 -6
- package/lib/esm/tools/PlanProjectionTools.d.ts.map +1 -1
- package/lib/esm/tools/PlanProjectionTools.js +6 -6
- package/lib/esm/tools/PlanProjectionTools.js.map +1 -1
- package/lib/esm/tools/SourceAspectIdTools.js +1 -1
- package/lib/esm/tools/SourceAspectIdTools.js.map +1 -1
- package/lib/esm/tools/ViewportTools.d.ts +15 -0
- package/lib/esm/tools/ViewportTools.d.ts.map +1 -1
- package/lib/esm/tools/ViewportTools.js +44 -0
- package/lib/esm/tools/ViewportTools.js.map +1 -1
- package/lib/esm/widgets/DiagnosticsPanel.d.ts +2 -0
- package/lib/esm/widgets/DiagnosticsPanel.d.ts.map +1 -1
- package/lib/esm/widgets/DiagnosticsPanel.js +6 -0
- package/lib/esm/widgets/DiagnosticsPanel.js.map +1 -1
- package/lib/esm/widgets/RenderCommandBreakdown.d.ts +16 -0
- package/lib/esm/widgets/RenderCommandBreakdown.d.ts.map +1 -0
- package/lib/esm/widgets/RenderCommandBreakdown.js +65 -0
- package/lib/esm/widgets/RenderCommandBreakdown.js.map +1 -0
- package/lib/public/locales/en/FrontendDevTools.json +461 -455
- package/package.json +8 -8
package/README.md
CHANGED
|
@@ -306,6 +306,13 @@ These keysins control the planar masking of reality models.
|
|
|
306
306
|
* `fdt webgl lose context` - Force a webgl context loss.
|
|
307
307
|
* `fdt compile shaders` - Compile all un-compiled registered shader programs and report whether any errors occurred. Useful for testing/debugging platform-specific shader issues.
|
|
308
308
|
* `fdt animation interval` - Changes the `IModelApp.animationInterval` settings. Specify milliseconds in non-negative milliseconds; or anything not parseable as an integer to disable the interval callback entirely.
|
|
309
|
+
* `fdt query schedule script` - Queries the schedule script associated with the RenderTimeline or DisplayStyle element specified by Id. All arguments are optional:
|
|
310
|
+
- "id=<Id>": The Id of the element hosting the script. If omitted, obtains the Id from the schedule script applied to the active viewport.
|
|
311
|
+
- "action=<break|copy>": Specifies what to do after obtaining the script. "break" causes execution to pause in the debugger. "copy" (the default) copies the script JSON to the clipboard.
|
|
312
|
+
- "elementIds=<include|count|expand>": Specifies what to do with the list of element Ids in the script. By default, they are omitted.
|
|
313
|
+
* "include": Include the Ids as they are stored in the script - possibly in compressed format.
|
|
314
|
+
* "expand": Include the Ids, decompressing them if they are in compressed format.
|
|
315
|
+
* "count": Replace each list of Ids with the number of Ids in that list.
|
|
309
316
|
* `fdt visibility` - Controls whether instanced, un-instanced (batched), or all geometry is displayed in the active viewport. Accepts at most one argument; defaults to "all" if none is specified:
|
|
310
317
|
* "instanced": Display only instanced geometry.
|
|
311
318
|
* "batched": Display only un-instanced (batched) geometry.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrontEndDevTools.d.ts","sourceRoot":"","sources":["../../src/FrontEndDevTools.ts"],"names":[],"mappings":"AAIA;;GAEG;
|
|
1
|
+
{"version":3,"file":"FrontEndDevTools.d.ts","sourceRoot":"","sources":["../../src/FrontEndDevTools.ts"],"names":[],"mappings":"AAIA;;GAEG;AA8DH;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAC,YAAY,CAAS;IAEpC;;;;;;;OAOG;WACiB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAuJhD"}
|
|
@@ -113,6 +113,7 @@ class FrontendDevTools {
|
|
|
113
113
|
MeasureTileLoadTime_1.MeasureTileLoadTimeTool,
|
|
114
114
|
DisplayStyleTools_1.OverrideSubCategoryTool,
|
|
115
115
|
PlanProjectionTools_1.OverrideSubCategoryPriorityTool,
|
|
116
|
+
DisplayStyleTools_1.QueryScheduleScriptTool,
|
|
116
117
|
RealityTransitionTool_1.RealityTransitionTool,
|
|
117
118
|
MapLayerTool_1.ReorderMapLayers,
|
|
118
119
|
ReportWebGLCompatibilityTool_1.ReportWebGLCompatibilityTool,
|
|
@@ -147,6 +148,7 @@ class FrontendDevTools {
|
|
|
147
148
|
DisplayStyleTools_1.ToggleSkyboxTool,
|
|
148
149
|
TileRequestDecoration_1.ToggleTileRequestDecorationTool,
|
|
149
150
|
TileTreeBoundsDecoration_1.ToggleTileTreeBoundsDecorationTool,
|
|
151
|
+
ViewportTools_1.ToggleTileTreeReferencesTool,
|
|
150
152
|
ToolTipProvider_1.ToggleToolTipsTool,
|
|
151
153
|
ViewportTools_1.ToggleViewAttachmentBoundariesTool,
|
|
152
154
|
ViewportTools_1.ToggleViewAttachmentClipShapesTool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrontEndDevTools.js","sourceRoot":"","sources":["../../src/FrontEndDevTools.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,wDAAiD;AACjD,uDAA+I;AAC/I,uDAAyD;AACzD,mDAAsD;AACtD,mDAAuE;AACvE,6DAAsF;AACtF,qDAA0E;AAC1E,yCAA4C;AAC5C,iDAAoE;AACpE,6DAAma;AACna,yDAAqe;AACre,yEAAsE;AACtE,6DAA0D;AAC1D,iDAA2F;AAC3F,iEAEmC;AACnC,yEAEuC;AACvC,iEAA8H;AAC9H,mEAAgE;AAChE,uDAI8B;AAC9B,qEAAsE;AACtE,uEAGsC;AACtC,qEAAgJ;AAChJ,2DAAkE;AAClE,iEAGmC;AACnC,yEAAsE;AACtE,iEAA8H;AAC9H,iEAGmC;AACnC,uFAAoF;AACpF,mDAAoF;AACpF,2DAAgE;AAChE,yEAAsE;AACtE,qEAA+G;AAC/G,yEAAgF;AAChF,+EAAsF;AACtF,6DAA6D;AAE7D;;GAEG;AACH,MAAa,gBAAgB;IAG3B;;;;;;;OAOG;IACI,MAAM,CAAC,KAAK,CAAC,UAAU;QAC5B,IAAI,IAAI,CAAC,YAAY;YACnB,OAAO;QAET,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,MAAM,SAAS,GAAG,kBAAkB,CAAC;QACrC,MAAM,gBAAgB,GAAG,yBAAS,CAAC,YAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC7E,MAAM,KAAK,GAAG;YACZ,iCAAkB;YAClB,mCAAoB;YACpB,4CAA6B;YAC7B,yCAA0B;YAC1B,0CAA2B;YAC3B,6CAA8B;YAC9B,6CAAqB;YACrB,2CAAuB;YACvB,8BAAiB;YACjB,0BAAa;YACb,gCAAgB;YAChB,0CAA0B;YAC1B,uCAAuB;YACvB,wCAAwB;YACxB,sDAAgC;YAChC,iCAAe;YACf,uCAAmB;YACnB,8BAAgB;YAChB,mDAA2B;YAC3B,iDAAyB;YACzB,yBAAa;YACb,sCAAkB;YAClB,2CAA2B;YAC3B,kCAAmB;YACnB,oDAA8B;YAC9B,iCAAmB;YACnB,0BAAY;YACZ,qDAA+B;YAC/B,qDAA6B;YAC7B,oDAA4B;YAC5B,2BAAe;YACf,2BAAW;YACX,2BAAe;YACf,2BAAe;YACf,+BAAe;YACf,gCAAkB;YAClB,uCAAkB;YAClB,mDAA2B;YAC3B,qCAAoB;YACpB,qCAAoB;YACpB,wCAAoB;YACpB,uCAAwB;YACxB,qCAAsB;YACtB,6CAA8B;YAC9B,+BAAgB;YAChB,+BAAgB;YAChB,sCAAuB;YACvB,oCAAqB;YACrB,6CAAuB;YACvB,2CAAuB;YACvB,qDAA+B;YAC/B,6CAAqB;YACrB,+BAAgB;YAChB,2DAA4B;YAC5B,6BAAgB;YAChB,6BAAgB;YAChB,0CAAsB;YACtB,yBAAY;YACZ,uCAAsB;YACtB,oCAAgB;YAChB,sCAAsB;YACtB,2CAAuB;YACvB,6BAAc;YACd,2BAAa;YACb,6BAAe;YACf,mCAAmB;YACnB,+BAAW;YACX,iCAAa;YACb,iBAAU;YACV,qDAA+B;YAC/B,6BAAiB;YACjB,yCAAyB;YACzB,yCAAyB;YACzB,uCAAmB;YACnB,0CAAsB;YACtB,6CAAyB;YACzB,iDAA6B;YAC7B,yCAAwB;YACxB,wCAAoB;YACpB,mDAAmC;YACnC,iDAA6B;YAC7B,2CAAuB;YACvB,oCAAgB;YAChB,uDAA+B;YAC/B,6DAAkC;YAClC,oCAAkB;YAClB,kDAAkC;YAClC,kDAAkC;YAClC,yCAAyB;YACzB,sCAAkB;YAClB,2CAAuB;YACvB,4CAAwB;YACxB,4CAAwB;YACxB,2CAAuB;YACvB,gCAAoB;YACpB,gCAAiB;YACjB,6BAAe;YACf,uCAAuB;YACvB,4CAA4B;YAC5B,yBAAc;YACd,yBAAc;YACd,0CAAsB;YACtB,0CAAsB;YACtB,wCAAoB;YACpB,6CAAqB;YACrB,6CAAyB;YACzB,iDAA6B;YAC7B,mDAA+B;YAC/B,4CAAwB;YACxB,yCAAkB;YAClB,6CAAsB;YACtB,+CAAwB;YACxB,wCAAiB;YACjB,6CAAsB;YACtB,2CAAoB;YACpB,mDAA4B;YAC5B,wDAAoC;YACpC,oDAA6B;YAC7B,yCAAqB;YACrB,4CAAwB;YACxB,sDAAoC;YACpC,6CAA2B;YAC3B,6CAA2B;YAC3B,mDAAiC;YACjC,+CAA6B;YAC7B,uDAAqC;YACrC,wCAAsB;YACtB,8CAA4B;YAC5B,oDAAkC;YAClC,gDAA8B;YAC9B,wDAAsC;YACtC,+BAAa;YACb,2CAAuB;SACxB,CAAC;QAEF,KAAK,MAAM,IAAI,IAAI,KAAK;YACtB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAE3B,OAAO,gBAAgB,CAAC;IAC1B,CAAC;;AA/JH,4CAgKC;AA/JgB,6BAAY,GAAG,KAAK,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Utilities\r\n */\r\n\r\nimport { IModelApp } from \"@itwin/core-frontend\";\r\nimport { EdgeDetectionEffect, EmbossEffect, GaussianBlurEffect, SharpenEffect, SharpnessEffect, UnsharpenEffect } from \"./effects/Convolution\";\r\nimport { ClearEffectsTool } from \"./effects/EffectTools\";\r\nimport { ExplosionEffect } from \"./effects/Explosion\";\r\nimport { FlipImageConfig, FlipImageEffect } from \"./effects/FlipImage\";\r\nimport { LensDistortionConfig, LensDistortionEffect } from \"./effects/LensDistortion\";\r\nimport { SaturationConfig, SaturationEffect } from \"./effects/Saturation\";\r\nimport { SnowEffect } from \"./effects/Snow\";\r\nimport { VignetteConfig, VignetteEffect } from \"./effects/Vignette\";\r\nimport { MaskBackgroundMapByElementTool, MaskBackgroundMapByExcludedElementTool, MaskBackgroundMapByModelTool, MaskBackgroundMapBySubCategoryTool, MaskRealityModelByElementTool, MaskRealityModelByExcludedElementTool, MaskRealityModelByModelTool, MaskRealityModelBySubCategoryTool, SetHigherPriorityRealityModelMasking, SetMapHigherPriorityMasking, UnmaskMapTool, UnmaskRealityModelTool } from \"./tools/PlanarMaskTools\";\r\nimport { ChangeCameraTool, ChangeEmphasisSettingsTool, ChangeFlashSettingsTool, ChangeHiliteSettingsTool, DefaultTileSizeModifierTool, FadeOutTool, FreezeSceneTool, SetAspectRatioSkewTool, ShowTileVolumesTool, Toggle3dManipulationsTool, ToggleDrawingGraphicsTool, ToggleSectionDrawingSpatialViewTool, ToggleViewAttachmentBoundariesTool, ToggleViewAttachmentClipShapesTool, ToggleViewAttachmentsTool, ViewportAddRealityModel, ViewportTileSizeModifierTool } from \"./tools/ViewportTools\";\r\nimport { AnimationIntervalTool } from \"./tools/AnimationIntervalTool\";\r\nimport { ChangeUnitsTool } from \"./tools/ChangeUnitsTool\";\r\nimport { ClipColorTool, TestClipStyleTool, ToggleSectionCutTool } from \"./tools/ClipTools\";\r\nimport {\r\n ApplyRenderingStyleTool, ChangeViewFlagsTool, OverrideSubCategoryTool, SaveRenderingStyleTool, SkyCubeTool, SkySphereTool, ToggleSkyboxTool, WoWIgnoreBackgroundTool,\r\n} from \"./tools/DisplayStyleTools\";\r\nimport {\r\n ClearEmphasizedElementsTool, ClearIsolatedElementsTool, EmphasizeSelectedElementsTool, EmphasizeVisibleElementsTool, IsolateSelectedElementsTool,\r\n} from \"./tools/EmphasizeElementsTool\";\r\nimport { ToggleFrustumSnapshotTool, ToggleSelectedViewFrustumTool, ToggleShadowFrustumTool } from \"./tools/FrustumDecoration\";\r\nimport { InspectElementTool } from \"./tools/InspectElementTool\";\r\nimport {\r\n AttachArcGISMapLayerByUrlTool, AttachMapLayerTool, AttachMapOverlayTool, AttachTileURLMapLayerByUrlTool, AttachWmsMapLayerByUrlTool,\r\n AttachWmtsMapLayerByUrlTool, DetachMapLayersTool, MapBaseColorTool, MapBaseTransparencyTool, MapBaseVisibilityTool, MapLayerSubLayerVisibilityTool,\r\n MapLayerTransparencyTool, MapLayerVisibilityTool, MapLayerZoomTool, ReorderMapLayers, SetMapBaseTool, ToggleTerrainTool,\r\n} from \"./tools/MapLayerTool\";\r\nimport { MeasureTileLoadTimeTool } from \"./tools/MeasureTileLoadTime\";\r\nimport {\r\n ClearModelAppearanceOverrides, SetModelColorTool, SetModelEmphasizedTool, SetModelIgnoresMaterialsTool, SetModelLineCodeTool,\r\n SetModelLineWeightTool, SetModelLocateTool, SetModelTransparencyTool,\r\n} from \"./tools/ModelAppearanceTools\";\r\nimport { ChangePlanProjectionSettingsTool, DumpPlanProjectionSettingsTool, OverrideSubCategoryPriorityTool } from \"./tools/PlanProjectionTools\";\r\nimport { ToggleProjectExtentsTool } from \"./tools/ProjectExtents\";\r\nimport {\r\n AttachCesiumAssetTool, AttachRealityModelTool, ClearRealityModelAppearanceOverrides, DetachRealityModelTool, SaveRealityModelTool,\r\n SetRealityModelColorTool, SetRealityModelEmphasizedTool, SetRealityModelLocateTool, SetRealityModelTransparencyTool, ToggleOSMBuildingDisplay,\r\n} from \"./tools/RealityModelTools\";\r\nimport { RealityTransitionTool } from \"./tools/RealityTransitionTool\";\r\nimport { CompileShadersTool, LoseWebGLContextTool, ToggleDPIForLODTool, ToggleWiremeshTool } from \"./tools/RenderSystemTools\";\r\nimport {\r\n SetAASamplesTool, ToggleDrapeFrustumTool, TogglePrimitiveVisibilityTool, ToggleReadPixelsTool, ToggleRealityTileBounds, ToggleRealityTileFreeze,\r\n ToggleRealityTileLogging, ToggleRealityTilePreload, ToggleVolClassIntersect,\r\n} from \"./tools/RenderTargetTools\";\r\nimport { ReportWebGLCompatibilityTool } from \"./tools/ReportWebGLCompatibilityTool\";\r\nimport { ApplyViewByIdTool, ApplyViewTool, SaveViewTool } from \"./tools/SavedViews\";\r\nimport { SelectElementsByIdTool } from \"./tools/SelectionTools\";\r\nimport { SetGpuMemoryLimitTool } from \"./tools/SetGpuMemoryLimitTool\";\r\nimport { ElementIdFromSourceAspectIdTool, SourceAspectIdFromElementIdTool } from \"./tools/SourceAspectIdTools\";\r\nimport { ToggleTileRequestDecorationTool } from \"./tools/TileRequestDecoration\";\r\nimport { ToggleTileTreeBoundsDecorationTool } from \"./tools/TileTreeBoundsDecoration\";\r\nimport { ToggleToolTipsTool } from \"./tools/ToolTipProvider\";\r\n\r\n/** Entry-point for the package. Before using the package you *must* call [[FrontendDevTools.initialize]].\r\n * @beta\r\n */\r\nexport class FrontendDevTools {\r\n private static _initialized = false;\r\n\r\n /** Call this before using the package (e.g., before instantiating any of its widgets or attempting to use any of its tools.\r\n * To initialize when starting up your app:\r\n * ```ts\r\n * IModelApp.startup();\r\n * await FrontendDevTools.initialize();\r\n * ```\r\n * @beta\r\n */\r\n public static async initialize(): Promise<void> {\r\n if (this._initialized)\r\n return;\r\n\r\n this._initialized = true;\r\n\r\n const namespace = \"FrontendDevTools\";\r\n const namespacePromise = IModelApp.localization.registerNamespace(namespace);\r\n const tools = [\r\n AttachMapLayerTool,\r\n AttachMapOverlayTool,\r\n AttachArcGISMapLayerByUrlTool,\r\n AttachWmsMapLayerByUrlTool,\r\n AttachWmtsMapLayerByUrlTool,\r\n AttachTileURLMapLayerByUrlTool,\r\n AnimationIntervalTool,\r\n ApplyRenderingStyleTool,\r\n ApplyViewByIdTool,\r\n ApplyViewTool,\r\n ChangeCameraTool,\r\n ChangeEmphasisSettingsTool,\r\n ChangeFlashSettingsTool,\r\n ChangeHiliteSettingsTool,\r\n ChangePlanProjectionSettingsTool,\r\n ChangeUnitsTool,\r\n ChangeViewFlagsTool,\r\n ClearEffectsTool,\r\n ClearEmphasizedElementsTool,\r\n ClearIsolatedElementsTool,\r\n ClipColorTool,\r\n CompileShadersTool,\r\n DefaultTileSizeModifierTool,\r\n DetachMapLayersTool,\r\n DumpPlanProjectionSettingsTool,\r\n EdgeDetectionEffect,\r\n EmbossEffect,\r\n ElementIdFromSourceAspectIdTool,\r\n EmphasizeSelectedElementsTool,\r\n EmphasizeVisibleElementsTool,\r\n ExplosionEffect,\r\n FadeOutTool,\r\n FlipImageConfig,\r\n FlipImageEffect,\r\n FreezeSceneTool,\r\n GaussianBlurEffect,\r\n InspectElementTool,\r\n IsolateSelectedElementsTool,\r\n LensDistortionConfig,\r\n LensDistortionEffect,\r\n LoseWebGLContextTool,\r\n MapLayerTransparencyTool,\r\n MapLayerVisibilityTool,\r\n MapLayerSubLayerVisibilityTool,\r\n MapLayerZoomTool,\r\n MapBaseColorTool,\r\n MapBaseTransparencyTool,\r\n MapBaseVisibilityTool,\r\n MeasureTileLoadTimeTool,\r\n OverrideSubCategoryTool,\r\n OverrideSubCategoryPriorityTool,\r\n RealityTransitionTool,\r\n ReorderMapLayers,\r\n ReportWebGLCompatibilityTool,\r\n SaturationConfig,\r\n SaturationEffect,\r\n SaveRenderingStyleTool,\r\n SaveViewTool,\r\n SelectElementsByIdTool,\r\n SetAASamplesTool,\r\n SetAspectRatioSkewTool,\r\n ToggleVolClassIntersect,\r\n SetMapBaseTool,\r\n SharpenEffect,\r\n SharpnessEffect,\r\n ShowTileVolumesTool,\r\n SkyCubeTool,\r\n SkySphereTool,\r\n SnowEffect,\r\n SourceAspectIdFromElementIdTool,\r\n TestClipStyleTool,\r\n Toggle3dManipulationsTool,\r\n ToggleDrawingGraphicsTool,\r\n ToggleDPIForLODTool,\r\n ToggleDrapeFrustumTool,\r\n ToggleFrustumSnapshotTool,\r\n TogglePrimitiveVisibilityTool,\r\n ToggleProjectExtentsTool,\r\n ToggleReadPixelsTool,\r\n ToggleSectionDrawingSpatialViewTool,\r\n ToggleSelectedViewFrustumTool,\r\n ToggleShadowFrustumTool,\r\n ToggleSkyboxTool,\r\n ToggleTileRequestDecorationTool,\r\n ToggleTileTreeBoundsDecorationTool,\r\n ToggleToolTipsTool,\r\n ToggleViewAttachmentBoundariesTool,\r\n ToggleViewAttachmentClipShapesTool,\r\n ToggleViewAttachmentsTool,\r\n ToggleWiremeshTool,\r\n ToggleRealityTileBounds,\r\n ToggleRealityTilePreload,\r\n ToggleRealityTileLogging,\r\n ToggleRealityTileFreeze,\r\n ToggleSectionCutTool,\r\n ToggleTerrainTool,\r\n UnsharpenEffect,\r\n ViewportAddRealityModel,\r\n ViewportTileSizeModifierTool,\r\n VignetteConfig,\r\n VignetteEffect,\r\n AttachRealityModelTool,\r\n DetachRealityModelTool,\r\n SaveRealityModelTool,\r\n SetGpuMemoryLimitTool,\r\n SetRealityModelLocateTool,\r\n SetRealityModelEmphasizedTool,\r\n SetRealityModelTransparencyTool,\r\n SetRealityModelColorTool,\r\n SetModelLocateTool,\r\n SetModelEmphasizedTool,\r\n SetModelTransparencyTool,\r\n SetModelColorTool,\r\n SetModelLineWeightTool,\r\n SetModelLineCodeTool,\r\n SetModelIgnoresMaterialsTool,\r\n ClearRealityModelAppearanceOverrides,\r\n ClearModelAppearanceOverrides,\r\n AttachCesiumAssetTool,\r\n ToggleOSMBuildingDisplay,\r\n SetHigherPriorityRealityModelMasking,\r\n SetMapHigherPriorityMasking,\r\n MaskRealityModelByModelTool,\r\n MaskRealityModelBySubCategoryTool,\r\n MaskRealityModelByElementTool,\r\n MaskRealityModelByExcludedElementTool,\r\n UnmaskRealityModelTool,\r\n MaskBackgroundMapByModelTool,\r\n MaskBackgroundMapBySubCategoryTool,\r\n MaskBackgroundMapByElementTool,\r\n MaskBackgroundMapByExcludedElementTool,\r\n UnmaskMapTool,\r\n WoWIgnoreBackgroundTool,\r\n ];\r\n\r\n for (const tool of tools)\r\n tool.register(namespace);\r\n\r\n return namespacePromise;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"FrontEndDevTools.js","sourceRoot":"","sources":["../../src/FrontEndDevTools.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Utilities\r\n */\r\n\r\nimport { IModelApp } from \"@itwin/core-frontend\";\r\nimport { EdgeDetectionEffect, EmbossEffect, GaussianBlurEffect, SharpenEffect, SharpnessEffect, UnsharpenEffect } from \"./effects/Convolution\";\r\nimport { ClearEffectsTool } from \"./effects/EffectTools\";\r\nimport { ExplosionEffect } from \"./effects/Explosion\";\r\nimport { FlipImageConfig, FlipImageEffect } from \"./effects/FlipImage\";\r\nimport { LensDistortionConfig, LensDistortionEffect } from \"./effects/LensDistortion\";\r\nimport { SaturationConfig, SaturationEffect } from \"./effects/Saturation\";\r\nimport { SnowEffect } from \"./effects/Snow\";\r\nimport { VignetteConfig, VignetteEffect } from \"./effects/Vignette\";\r\nimport {\r\n MaskBackgroundMapByElementTool, MaskBackgroundMapByExcludedElementTool, MaskBackgroundMapByModelTool, MaskBackgroundMapBySubCategoryTool, MaskRealityModelByElementTool, MaskRealityModelByExcludedElementTool,\r\n MaskRealityModelByModelTool, MaskRealityModelBySubCategoryTool, SetHigherPriorityRealityModelMasking, SetMapHigherPriorityMasking, UnmaskMapTool, UnmaskRealityModelTool,\r\n} from \"./tools/PlanarMaskTools\";\r\nimport {\r\n ChangeCameraTool, ChangeEmphasisSettingsTool, ChangeFlashSettingsTool, ChangeHiliteSettingsTool, DefaultTileSizeModifierTool, FadeOutTool, FreezeSceneTool, SetAspectRatioSkewTool, ShowTileVolumesTool,\r\n Toggle3dManipulationsTool, ToggleDrawingGraphicsTool, ToggleSectionDrawingSpatialViewTool, ToggleTileTreeReferencesTool, ToggleViewAttachmentBoundariesTool, ToggleViewAttachmentClipShapesTool,\r\n ToggleViewAttachmentsTool, ViewportAddRealityModel, ViewportTileSizeModifierTool,\r\n} from \"./tools/ViewportTools\";\r\nimport { AnimationIntervalTool } from \"./tools/AnimationIntervalTool\";\r\nimport { ChangeUnitsTool } from \"./tools/ChangeUnitsTool\";\r\nimport { ClipColorTool, TestClipStyleTool, ToggleSectionCutTool } from \"./tools/ClipTools\";\r\nimport {\r\n ApplyRenderingStyleTool, ChangeViewFlagsTool, OverrideSubCategoryTool, QueryScheduleScriptTool, SaveRenderingStyleTool, SkyCubeTool, SkySphereTool, ToggleSkyboxTool, WoWIgnoreBackgroundTool,\r\n} from \"./tools/DisplayStyleTools\";\r\nimport {\r\n ClearEmphasizedElementsTool, ClearIsolatedElementsTool, EmphasizeSelectedElementsTool, EmphasizeVisibleElementsTool, IsolateSelectedElementsTool,\r\n} from \"./tools/EmphasizeElementsTool\";\r\nimport { ToggleFrustumSnapshotTool, ToggleSelectedViewFrustumTool, ToggleShadowFrustumTool } from \"./tools/FrustumDecoration\";\r\nimport { InspectElementTool } from \"./tools/InspectElementTool\";\r\nimport {\r\n AttachArcGISMapLayerByUrlTool, AttachMapLayerTool, AttachMapOverlayTool, AttachTileURLMapLayerByUrlTool, AttachWmsMapLayerByUrlTool,\r\n AttachWmtsMapLayerByUrlTool, DetachMapLayersTool, MapBaseColorTool, MapBaseTransparencyTool, MapBaseVisibilityTool, MapLayerSubLayerVisibilityTool,\r\n MapLayerTransparencyTool, MapLayerVisibilityTool, MapLayerZoomTool, ReorderMapLayers, SetMapBaseTool, ToggleTerrainTool,\r\n} from \"./tools/MapLayerTool\";\r\nimport { MeasureTileLoadTimeTool } from \"./tools/MeasureTileLoadTime\";\r\nimport {\r\n ClearModelAppearanceOverrides, SetModelColorTool, SetModelEmphasizedTool, SetModelIgnoresMaterialsTool, SetModelLineCodeTool,\r\n SetModelLineWeightTool, SetModelLocateTool, SetModelTransparencyTool,\r\n} from \"./tools/ModelAppearanceTools\";\r\nimport { ChangePlanProjectionSettingsTool, DumpPlanProjectionSettingsTool, OverrideSubCategoryPriorityTool } from \"./tools/PlanProjectionTools\";\r\nimport { ToggleProjectExtentsTool } from \"./tools/ProjectExtents\";\r\nimport {\r\n AttachCesiumAssetTool, AttachRealityModelTool, ClearRealityModelAppearanceOverrides, DetachRealityModelTool, SaveRealityModelTool,\r\n SetRealityModelColorTool, SetRealityModelEmphasizedTool, SetRealityModelLocateTool, SetRealityModelTransparencyTool, ToggleOSMBuildingDisplay,\r\n} from \"./tools/RealityModelTools\";\r\nimport { RealityTransitionTool } from \"./tools/RealityTransitionTool\";\r\nimport { CompileShadersTool, LoseWebGLContextTool, ToggleDPIForLODTool, ToggleWiremeshTool } from \"./tools/RenderSystemTools\";\r\nimport {\r\n SetAASamplesTool, ToggleDrapeFrustumTool, TogglePrimitiveVisibilityTool, ToggleReadPixelsTool, ToggleRealityTileBounds, ToggleRealityTileFreeze,\r\n ToggleRealityTileLogging, ToggleRealityTilePreload, ToggleVolClassIntersect,\r\n} from \"./tools/RenderTargetTools\";\r\nimport { ReportWebGLCompatibilityTool } from \"./tools/ReportWebGLCompatibilityTool\";\r\nimport { ApplyViewByIdTool, ApplyViewTool, SaveViewTool } from \"./tools/SavedViews\";\r\nimport { SelectElementsByIdTool } from \"./tools/SelectionTools\";\r\nimport { SetGpuMemoryLimitTool } from \"./tools/SetGpuMemoryLimitTool\";\r\nimport { ElementIdFromSourceAspectIdTool, SourceAspectIdFromElementIdTool } from \"./tools/SourceAspectIdTools\";\r\nimport { ToggleTileRequestDecorationTool } from \"./tools/TileRequestDecoration\";\r\nimport { ToggleTileTreeBoundsDecorationTool } from \"./tools/TileTreeBoundsDecoration\";\r\nimport { ToggleToolTipsTool } from \"./tools/ToolTipProvider\";\r\n\r\n/** Entry-point for the package. Before using the package you *must* call [[FrontendDevTools.initialize]].\r\n * @beta\r\n */\r\nexport class FrontendDevTools {\r\n private static _initialized = false;\r\n\r\n /** Call this before using the package (e.g., before instantiating any of its widgets or attempting to use any of its tools.\r\n * To initialize when starting up your app:\r\n * ```ts\r\n * IModelApp.startup();\r\n * await FrontendDevTools.initialize();\r\n * ```\r\n * @beta\r\n */\r\n public static async initialize(): Promise<void> {\r\n if (this._initialized)\r\n return;\r\n\r\n this._initialized = true;\r\n\r\n const namespace = \"FrontendDevTools\";\r\n const namespacePromise = IModelApp.localization.registerNamespace(namespace);\r\n const tools = [\r\n AttachMapLayerTool,\r\n AttachMapOverlayTool,\r\n AttachArcGISMapLayerByUrlTool,\r\n AttachWmsMapLayerByUrlTool,\r\n AttachWmtsMapLayerByUrlTool,\r\n AttachTileURLMapLayerByUrlTool,\r\n AnimationIntervalTool,\r\n ApplyRenderingStyleTool,\r\n ApplyViewByIdTool,\r\n ApplyViewTool,\r\n ChangeCameraTool,\r\n ChangeEmphasisSettingsTool,\r\n ChangeFlashSettingsTool,\r\n ChangeHiliteSettingsTool,\r\n ChangePlanProjectionSettingsTool,\r\n ChangeUnitsTool,\r\n ChangeViewFlagsTool,\r\n ClearEffectsTool,\r\n ClearEmphasizedElementsTool,\r\n ClearIsolatedElementsTool,\r\n ClipColorTool,\r\n CompileShadersTool,\r\n DefaultTileSizeModifierTool,\r\n DetachMapLayersTool,\r\n DumpPlanProjectionSettingsTool,\r\n EdgeDetectionEffect,\r\n EmbossEffect,\r\n ElementIdFromSourceAspectIdTool,\r\n EmphasizeSelectedElementsTool,\r\n EmphasizeVisibleElementsTool,\r\n ExplosionEffect,\r\n FadeOutTool,\r\n FlipImageConfig,\r\n FlipImageEffect,\r\n FreezeSceneTool,\r\n GaussianBlurEffect,\r\n InspectElementTool,\r\n IsolateSelectedElementsTool,\r\n LensDistortionConfig,\r\n LensDistortionEffect,\r\n LoseWebGLContextTool,\r\n MapLayerTransparencyTool,\r\n MapLayerVisibilityTool,\r\n MapLayerSubLayerVisibilityTool,\r\n MapLayerZoomTool,\r\n MapBaseColorTool,\r\n MapBaseTransparencyTool,\r\n MapBaseVisibilityTool,\r\n MeasureTileLoadTimeTool,\r\n OverrideSubCategoryTool,\r\n OverrideSubCategoryPriorityTool,\r\n QueryScheduleScriptTool,\r\n RealityTransitionTool,\r\n ReorderMapLayers,\r\n ReportWebGLCompatibilityTool,\r\n SaturationConfig,\r\n SaturationEffect,\r\n SaveRenderingStyleTool,\r\n SaveViewTool,\r\n SelectElementsByIdTool,\r\n SetAASamplesTool,\r\n SetAspectRatioSkewTool,\r\n ToggleVolClassIntersect,\r\n SetMapBaseTool,\r\n SharpenEffect,\r\n SharpnessEffect,\r\n ShowTileVolumesTool,\r\n SkyCubeTool,\r\n SkySphereTool,\r\n SnowEffect,\r\n SourceAspectIdFromElementIdTool,\r\n TestClipStyleTool,\r\n Toggle3dManipulationsTool,\r\n ToggleDrawingGraphicsTool,\r\n ToggleDPIForLODTool,\r\n ToggleDrapeFrustumTool,\r\n ToggleFrustumSnapshotTool,\r\n TogglePrimitiveVisibilityTool,\r\n ToggleProjectExtentsTool,\r\n ToggleReadPixelsTool,\r\n ToggleSectionDrawingSpatialViewTool,\r\n ToggleSelectedViewFrustumTool,\r\n ToggleShadowFrustumTool,\r\n ToggleSkyboxTool,\r\n ToggleTileRequestDecorationTool,\r\n ToggleTileTreeBoundsDecorationTool,\r\n ToggleTileTreeReferencesTool,\r\n ToggleToolTipsTool,\r\n ToggleViewAttachmentBoundariesTool,\r\n ToggleViewAttachmentClipShapesTool,\r\n ToggleViewAttachmentsTool,\r\n ToggleWiremeshTool,\r\n ToggleRealityTileBounds,\r\n ToggleRealityTilePreload,\r\n ToggleRealityTileLogging,\r\n ToggleRealityTileFreeze,\r\n ToggleSectionCutTool,\r\n ToggleTerrainTool,\r\n UnsharpenEffect,\r\n ViewportAddRealityModel,\r\n ViewportTileSizeModifierTool,\r\n VignetteConfig,\r\n VignetteEffect,\r\n AttachRealityModelTool,\r\n DetachRealityModelTool,\r\n SaveRealityModelTool,\r\n SetGpuMemoryLimitTool,\r\n SetRealityModelLocateTool,\r\n SetRealityModelEmphasizedTool,\r\n SetRealityModelTransparencyTool,\r\n SetRealityModelColorTool,\r\n SetModelLocateTool,\r\n SetModelEmphasizedTool,\r\n SetModelTransparencyTool,\r\n SetModelColorTool,\r\n SetModelLineWeightTool,\r\n SetModelLineCodeTool,\r\n SetModelIgnoresMaterialsTool,\r\n ClearRealityModelAppearanceOverrides,\r\n ClearModelAppearanceOverrides,\r\n AttachCesiumAssetTool,\r\n ToggleOSMBuildingDisplay,\r\n SetHigherPriorityRealityModelMasking,\r\n SetMapHigherPriorityMasking,\r\n MaskRealityModelByModelTool,\r\n MaskRealityModelBySubCategoryTool,\r\n MaskRealityModelByElementTool,\r\n MaskRealityModelByExcludedElementTool,\r\n UnmaskRealityModelTool,\r\n MaskBackgroundMapByModelTool,\r\n MaskBackgroundMapBySubCategoryTool,\r\n MaskBackgroundMapByElementTool,\r\n MaskBackgroundMapByExcludedElementTool,\r\n UnmaskMapTool,\r\n WoWIgnoreBackgroundTool,\r\n ];\r\n\r\n for (const tool of tools)\r\n tool.register(namespace);\r\n\r\n return namespacePromise;\r\n }\r\n}\r\n"]}
|
|
@@ -62,7 +62,7 @@ export declare class TestClipStyleTool extends DisplayStyleTool {
|
|
|
62
62
|
static get minArgs(): number;
|
|
63
63
|
private _useStyle;
|
|
64
64
|
protected get require3d(): boolean;
|
|
65
|
-
protected parse(args: string[]): boolean
|
|
66
|
-
protected execute(vp: Viewport): boolean
|
|
65
|
+
protected parse(args: string[]): Promise<boolean>;
|
|
66
|
+
protected execute(vp: Viewport): Promise<boolean>;
|
|
67
67
|
}
|
|
68
68
|
//# sourceMappingURL=ClipTools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClipTools.d.ts","sourceRoot":"","sources":["../../../src/tools/ClipTools.ts"],"names":[],"mappings":"AAYA,OAAO,EAAa,IAAI,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,aAAc,SAAQ,IAAI;IACrC,OAAuB,MAAM,SAAmB;IAChD,WAA2B,OAAO,WAAgB;IAClD,WAA2B,OAAO,WAAgB;IAElD,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,YAAY;IASpB;;;;;;;;;;;;;OAaG;IACmB,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAcvE;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,IAAI;IAC5C,OAAuB,MAAM,SAAsB;IACnD,WAA2B,OAAO,WAAgB;IAClD,WAA2B,OAAO,WAAgB;IAElD;;OAEG;IACmB,GAAG,CAAC,kBAAkB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBzE;;OAEG;IACmB,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAOvE;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,gBAAgB;IACrD,OAAuB,MAAM,SAAmB;IAChD,WAA2B,OAAO,WAAgB;IAClD,WAA2B,OAAO,WAAgB;IAElD,OAAO,CAAC,SAAS,CAAS;IAE1B,cAAuB,SAAS,YAAmB;
|
|
1
|
+
{"version":3,"file":"ClipTools.d.ts","sourceRoot":"","sources":["../../../src/tools/ClipTools.ts"],"names":[],"mappings":"AAYA,OAAO,EAAa,IAAI,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,aAAc,SAAQ,IAAI;IACrC,OAAuB,MAAM,SAAmB;IAChD,WAA2B,OAAO,WAAgB;IAClD,WAA2B,OAAO,WAAgB;IAElD,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,YAAY;IASpB;;;;;;;;;;;;;OAaG;IACmB,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAcvE;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,IAAI;IAC5C,OAAuB,MAAM,SAAsB;IACnD,WAA2B,OAAO,WAAgB;IAClD,WAA2B,OAAO,WAAgB;IAElD;;OAEG;IACmB,GAAG,CAAC,kBAAkB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBzE;;OAEG;IACmB,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAOvE;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,gBAAgB;IACrD,OAAuB,MAAM,SAAmB;IAChD,WAA2B,OAAO,WAAgB;IAClD,WAA2B,OAAO,WAAgB;IAElD,OAAO,CAAC,SAAS,CAAS;IAE1B,cAAuB,SAAS,YAAmB;cAEnC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;cAKvC,OAAO,CAAC,EAAE,EAAE,QAAQ;CA+BrC"}
|
|
@@ -125,12 +125,12 @@ class TestClipStyleTool extends DisplayStyleTools_1.DisplayStyleTool {
|
|
|
125
125
|
static get maxArgs() { return 1; }
|
|
126
126
|
static get minArgs() { return 1; }
|
|
127
127
|
get require3d() { return true; }
|
|
128
|
-
parse(args) {
|
|
128
|
+
async parse(args) {
|
|
129
129
|
var _a;
|
|
130
130
|
this._useStyle = (_a = (0, parseBoolean_1.parseBoolean)(args[0])) !== null && _a !== void 0 ? _a : false;
|
|
131
131
|
return true;
|
|
132
132
|
}
|
|
133
|
-
execute(vp) {
|
|
133
|
+
async execute(vp) {
|
|
134
134
|
const props = { produceCutGeometry: true };
|
|
135
135
|
if (this._useStyle) {
|
|
136
136
|
props.cutStyle = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClipTools.js","sourceRoot":"","sources":["../../../src/tools/ClipTools.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module Tools\r\n */\r\n\r\nimport {\r\n ClipStyle, ClipStyleProps, ColorByName, ColorDef, LinePixels, RenderMode, RgbColor,\r\n} from \"@itwin/core-common\";\r\nimport { IModelApp, Tool, Viewport } from \"@itwin/core-frontend\";\r\nimport { parseToggle } from \"./parseToggle\";\r\nimport { parseBoolean } from \"./parseBoolean\";\r\nimport { DisplayStyleTool } from \"./DisplayStyleTools\";\r\n\r\n/** This tool specifies or un-specifies a clip color to use for pixels inside or outside the clip region.\r\n * Arguments can be:\r\n * - clear\r\n * - inside <color string> | clear\r\n * - outside <color string> | clear\r\n * <color string> must be in one of the following forms:\r\n * \"rgb(255,0,0)\"\r\n * \"rgba(255,0,0,255)\"\r\n * \"rgb(100%,0%,0%)\"\r\n * \"hsl(120,50%,50%)\"\r\n * \"#rrbbgg\"\r\n * \"blanchedAlmond\" (see possible values from [[ColorByName]]). Case insensitive.\r\n * @see [ColorDef]\r\n * @beta\r\n */\r\nexport class ClipColorTool extends Tool {\r\n public static override toolId = \"ClipColorTool\";\r\n public static override get minArgs() { return 1; }\r\n public static override get maxArgs() { return 2; }\r\n\r\n private _clearClipColors() {\r\n const vp = IModelApp.viewManager.selectedView;\r\n if (undefined !== vp) {\r\n const props = vp.displayStyle.settings.clipStyle.toJSON() ?? {};\r\n props.insideColor = props.outsideColor = undefined;\r\n vp.displayStyle.settings.clipStyle = ClipStyle.fromJSON(props);\r\n }\r\n }\r\n\r\n private setClipColor(colStr: string, which: \"insideColor\" | \"outsideColor\") {\r\n const vp = IModelApp.viewManager.selectedView;\r\n if (vp) {\r\n const props = vp.displayStyle.settings.clipStyle.toJSON() ?? {};\r\n props[which] = colStr === \"clear\" ? undefined : RgbColor.fromColorDef(ColorDef.fromString(colStr));\r\n vp.displayStyle.settings.clipStyle = ClipStyle.fromJSON(props);\r\n }\r\n }\r\n\r\n /** This runs the tool using the given arguments, specifying or unspecifying a clip color to use for pixels inside or outside the clip region.\r\n * Arguments can be:\r\n * - clear\r\n * - inside <color string> | clear\r\n * - outside <color string> | clear\r\n * <color string> must be in one of the following forms:\r\n * \"rgb(255,0,0)\"\r\n * \"rgba(255,0,0,255)\"\r\n * \"rgb(100%,0%,0%)\"\r\n * \"hsl(120,50%,50%)\"\r\n * \"#rrbbgg\"\r\n * \"blanchedAlmond\" (see possible values from [[ColorByName]]). Case insensitive.\r\n * @beta\r\n */\r\n public override async parseAndRun(...args: string[]): Promise<boolean> {\r\n if (1 === args.length) {\r\n if (args[0] === \"clear\")\r\n this._clearClipColors();\r\n\r\n return true;\r\n }\r\n\r\n const which = args[0];\r\n if (which === \"inside\" || which === \"outside\")\r\n this.setClipColor(args[1], \"inside\" === which ? \"insideColor\" : \"outsideColor\");\r\n\r\n return true;\r\n }\r\n}\r\n\r\n/** Controls a view state's view details' flag for producing cut geometry for a clip style.\r\n * @beta\r\n */\r\nexport class ToggleSectionCutTool extends Tool {\r\n public static override toolId = \"ToggleSectionCut\";\r\n public static override get minArgs() { return 0; }\r\n public static override get maxArgs() { return 1; }\r\n\r\n /** This method runs the tool, controlling a view state's view details' flag for producing cut geometry for a clip style.\r\n * @param produceCutGeometry whether to produce cut geometry\r\n */\r\n public override async run(produceCutGeometry?: boolean): Promise<boolean> {\r\n const vp = IModelApp.viewManager.selectedView;\r\n if (vp) {\r\n const style = vp.view.displayStyle.settings.clipStyle;\r\n produceCutGeometry = produceCutGeometry ?? !style.produceCutGeometry;\r\n if (produceCutGeometry !== style.produceCutGeometry) {\r\n const json = {\r\n ...vp.view.displayStyle.settings.clipStyle.toJSON(),\r\n produceCutGeometry,\r\n };\r\n\r\n vp.view.displayStyle.settings.clipStyle = ClipStyle.fromJSON(json);\r\n vp.invalidateScene();\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n /** Executes this tool's run method with args[0] containing `produceCutGeometry`.\r\n * @see [[run]]\r\n */\r\n public override async parseAndRun(...args: string[]): Promise<boolean> {\r\n const enable = parseToggle(args[0]);\r\n if (typeof enable !== \"string\")\r\n await this.run(enable);\r\n\r\n return true;\r\n }\r\n}\r\n\r\n/** Simple tool that toggles a hard-coded clip style overriding various aspects of the cut geometry appearance.\r\n * @beta\r\n */\r\nexport class TestClipStyleTool extends DisplayStyleTool {\r\n public static override toolId = \"TestClipStyle\";\r\n public static override get maxArgs() { return 1; }\r\n public static override get minArgs() { return 1; }\r\n\r\n private _useStyle = false;\r\n\r\n protected override get require3d() { return true; }\r\n\r\n protected parse(args: string[]): boolean {\r\n this._useStyle = parseBoolean(args[0]) ?? false;\r\n return true;\r\n }\r\n\r\n protected execute(vp: Viewport): boolean {\r\n const props: ClipStyleProps = { produceCutGeometry: true };\r\n if (this._useStyle) {\r\n props.cutStyle = {\r\n viewflags: {\r\n renderMode: RenderMode.SmoothShade,\r\n visibleEdges: true,\r\n hiddenEdges: false,\r\n },\r\n appearance: {\r\n rgb: { r: 0xff, g: 0x7f, b: 0 },\r\n transparency: 0.5,\r\n nonLocatable: true,\r\n },\r\n hiddenLine: {\r\n visible: {\r\n ovrColor: true,\r\n color: ColorByName.blue,\r\n pattern: LinePixels.Solid,\r\n width: 3,\r\n },\r\n },\r\n };\r\n }\r\n\r\n vp.displayStyle.settings.clipStyle = ClipStyle.fromJSON(props);\r\n vp.invalidateRenderPlan();\r\n vp.setFeatureOverrideProviderChanged();\r\n\r\n return true;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ClipTools.js","sourceRoot":"","sources":["../../../src/tools/ClipTools.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module Tools\r\n */\r\n\r\nimport {\r\n ClipStyle, ClipStyleProps, ColorByName, ColorDef, LinePixels, RenderMode, RgbColor,\r\n} from \"@itwin/core-common\";\r\nimport { IModelApp, Tool, Viewport } from \"@itwin/core-frontend\";\r\nimport { parseToggle } from \"./parseToggle\";\r\nimport { parseBoolean } from \"./parseBoolean\";\r\nimport { DisplayStyleTool } from \"./DisplayStyleTools\";\r\n\r\n/** This tool specifies or un-specifies a clip color to use for pixels inside or outside the clip region.\r\n * Arguments can be:\r\n * - clear\r\n * - inside <color string> | clear\r\n * - outside <color string> | clear\r\n * <color string> must be in one of the following forms:\r\n * \"rgb(255,0,0)\"\r\n * \"rgba(255,0,0,255)\"\r\n * \"rgb(100%,0%,0%)\"\r\n * \"hsl(120,50%,50%)\"\r\n * \"#rrbbgg\"\r\n * \"blanchedAlmond\" (see possible values from [[ColorByName]]). Case insensitive.\r\n * @see [ColorDef]\r\n * @beta\r\n */\r\nexport class ClipColorTool extends Tool {\r\n public static override toolId = \"ClipColorTool\";\r\n public static override get minArgs() { return 1; }\r\n public static override get maxArgs() { return 2; }\r\n\r\n private _clearClipColors() {\r\n const vp = IModelApp.viewManager.selectedView;\r\n if (undefined !== vp) {\r\n const props = vp.displayStyle.settings.clipStyle.toJSON() ?? {};\r\n props.insideColor = props.outsideColor = undefined;\r\n vp.displayStyle.settings.clipStyle = ClipStyle.fromJSON(props);\r\n }\r\n }\r\n\r\n private setClipColor(colStr: string, which: \"insideColor\" | \"outsideColor\") {\r\n const vp = IModelApp.viewManager.selectedView;\r\n if (vp) {\r\n const props = vp.displayStyle.settings.clipStyle.toJSON() ?? {};\r\n props[which] = colStr === \"clear\" ? undefined : RgbColor.fromColorDef(ColorDef.fromString(colStr));\r\n vp.displayStyle.settings.clipStyle = ClipStyle.fromJSON(props);\r\n }\r\n }\r\n\r\n /** This runs the tool using the given arguments, specifying or unspecifying a clip color to use for pixels inside or outside the clip region.\r\n * Arguments can be:\r\n * - clear\r\n * - inside <color string> | clear\r\n * - outside <color string> | clear\r\n * <color string> must be in one of the following forms:\r\n * \"rgb(255,0,0)\"\r\n * \"rgba(255,0,0,255)\"\r\n * \"rgb(100%,0%,0%)\"\r\n * \"hsl(120,50%,50%)\"\r\n * \"#rrbbgg\"\r\n * \"blanchedAlmond\" (see possible values from [[ColorByName]]). Case insensitive.\r\n * @beta\r\n */\r\n public override async parseAndRun(...args: string[]): Promise<boolean> {\r\n if (1 === args.length) {\r\n if (args[0] === \"clear\")\r\n this._clearClipColors();\r\n\r\n return true;\r\n }\r\n\r\n const which = args[0];\r\n if (which === \"inside\" || which === \"outside\")\r\n this.setClipColor(args[1], \"inside\" === which ? \"insideColor\" : \"outsideColor\");\r\n\r\n return true;\r\n }\r\n}\r\n\r\n/** Controls a view state's view details' flag for producing cut geometry for a clip style.\r\n * @beta\r\n */\r\nexport class ToggleSectionCutTool extends Tool {\r\n public static override toolId = \"ToggleSectionCut\";\r\n public static override get minArgs() { return 0; }\r\n public static override get maxArgs() { return 1; }\r\n\r\n /** This method runs the tool, controlling a view state's view details' flag for producing cut geometry for a clip style.\r\n * @param produceCutGeometry whether to produce cut geometry\r\n */\r\n public override async run(produceCutGeometry?: boolean): Promise<boolean> {\r\n const vp = IModelApp.viewManager.selectedView;\r\n if (vp) {\r\n const style = vp.view.displayStyle.settings.clipStyle;\r\n produceCutGeometry = produceCutGeometry ?? !style.produceCutGeometry;\r\n if (produceCutGeometry !== style.produceCutGeometry) {\r\n const json = {\r\n ...vp.view.displayStyle.settings.clipStyle.toJSON(),\r\n produceCutGeometry,\r\n };\r\n\r\n vp.view.displayStyle.settings.clipStyle = ClipStyle.fromJSON(json);\r\n vp.invalidateScene();\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n /** Executes this tool's run method with args[0] containing `produceCutGeometry`.\r\n * @see [[run]]\r\n */\r\n public override async parseAndRun(...args: string[]): Promise<boolean> {\r\n const enable = parseToggle(args[0]);\r\n if (typeof enable !== \"string\")\r\n await this.run(enable);\r\n\r\n return true;\r\n }\r\n}\r\n\r\n/** Simple tool that toggles a hard-coded clip style overriding various aspects of the cut geometry appearance.\r\n * @beta\r\n */\r\nexport class TestClipStyleTool extends DisplayStyleTool {\r\n public static override toolId = \"TestClipStyle\";\r\n public static override get maxArgs() { return 1; }\r\n public static override get minArgs() { return 1; }\r\n\r\n private _useStyle = false;\r\n\r\n protected override get require3d() { return true; }\r\n\r\n protected async parse(args: string[]): Promise<boolean> {\r\n this._useStyle = parseBoolean(args[0]) ?? false;\r\n return true;\r\n }\r\n\r\n protected async execute(vp: Viewport) {\r\n const props: ClipStyleProps = { produceCutGeometry: true };\r\n if (this._useStyle) {\r\n props.cutStyle = {\r\n viewflags: {\r\n renderMode: RenderMode.SmoothShade,\r\n visibleEdges: true,\r\n hiddenEdges: false,\r\n },\r\n appearance: {\r\n rgb: { r: 0xff, g: 0x7f, b: 0 },\r\n transparency: 0.5,\r\n nonLocatable: true,\r\n },\r\n hiddenLine: {\r\n visible: {\r\n ovrColor: true,\r\n color: ColorByName.blue,\r\n pattern: LinePixels.Solid,\r\n width: 3,\r\n },\r\n },\r\n };\r\n }\r\n\r\n vp.displayStyle.settings.clipStyle = ClipStyle.fromJSON(props);\r\n vp.invalidateRenderPlan();\r\n vp.setFeatureOverrideProviderChanged();\r\n\r\n return true;\r\n }\r\n}\r\n"]}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
/** @packageDocumentation
|
|
2
|
-
* @module Tools
|
|
3
|
-
*/
|
|
4
1
|
import { ViewFlags } from "@itwin/core-common";
|
|
5
2
|
import { Tool, Viewport } from "@itwin/core-frontend";
|
|
6
3
|
/** Modifies the selected viewport's DisplayStyleState.
|
|
@@ -8,8 +5,8 @@ import { Tool, Viewport } from "@itwin/core-frontend";
|
|
|
8
5
|
*/
|
|
9
6
|
export declare abstract class DisplayStyleTool extends Tool {
|
|
10
7
|
protected get require3d(): boolean;
|
|
11
|
-
protected abstract execute(vp: Viewport): boolean
|
|
12
|
-
protected abstract parse(args: string[]): boolean
|
|
8
|
+
protected abstract execute(vp: Viewport): Promise<boolean>;
|
|
9
|
+
protected abstract parse(args: string[], vp: Viewport): Promise<boolean>;
|
|
13
10
|
run(): Promise<boolean>;
|
|
14
11
|
parseAndRun(...args: string[]): Promise<boolean>;
|
|
15
12
|
}
|
|
@@ -34,8 +31,8 @@ export declare class ChangeViewFlagsTool extends Tool {
|
|
|
34
31
|
export declare class ToggleSkyboxTool extends DisplayStyleTool {
|
|
35
32
|
static toolId: string;
|
|
36
33
|
get require3d(): boolean;
|
|
37
|
-
parse(_args: string[]): boolean
|
|
38
|
-
execute(vp: Viewport): boolean
|
|
34
|
+
parse(_args: string[]): Promise<boolean>;
|
|
35
|
+
execute(vp: Viewport): Promise<boolean>;
|
|
39
36
|
}
|
|
40
37
|
/** Defines a [SkySphere]($common) to apply to the current view.
|
|
41
38
|
* @beta
|
|
@@ -46,8 +43,8 @@ export declare class SkySphereTool extends DisplayStyleTool {
|
|
|
46
43
|
static get minArgs(): number;
|
|
47
44
|
static get maxArgs(): number;
|
|
48
45
|
get require3d(): boolean;
|
|
49
|
-
parse(args: string[]): boolean
|
|
50
|
-
execute(vp: Viewport): boolean
|
|
46
|
+
parse(args: string[]): Promise<boolean>;
|
|
47
|
+
execute(vp: Viewport): Promise<boolean>;
|
|
51
48
|
}
|
|
52
49
|
/** Defines a [SkyCube]($common) to apply to the current view.
|
|
53
50
|
* @beta
|
|
@@ -58,8 +55,8 @@ export declare class SkyCubeTool extends DisplayStyleTool {
|
|
|
58
55
|
static get minArgs(): number;
|
|
59
56
|
static get maxArgs(): number;
|
|
60
57
|
get require3d(): boolean;
|
|
61
|
-
parse(args: string[]): boolean
|
|
62
|
-
execute(vp: Viewport): boolean
|
|
58
|
+
parse(args: string[]): Promise<boolean>;
|
|
59
|
+
execute(vp: Viewport): Promise<boolean>;
|
|
63
60
|
}
|
|
64
61
|
/** Outputs (and optionally copies to the clipboard) a "rendering style" as a partial DisplayStyle3dSettingsProps JSON object based
|
|
65
62
|
* on the current view's display style settings.
|
|
@@ -82,8 +79,8 @@ export declare class SaveRenderingStyleTool extends DisplayStyleTool {
|
|
|
82
79
|
static toolId: string;
|
|
83
80
|
static get minArgs(): number;
|
|
84
81
|
static get maxArgs(): number;
|
|
85
|
-
parse(inputArgs: string[]): boolean
|
|
86
|
-
execute(vp: Viewport): boolean
|
|
82
|
+
parse(inputArgs: string[]): Promise<boolean>;
|
|
83
|
+
execute(vp: Viewport): Promise<boolean>;
|
|
87
84
|
}
|
|
88
85
|
/** Given a "rendering style" as a partial DisplayStyle3dSettingsProperties JSON string, apply it to the selected viewport's display style.
|
|
89
86
|
* @see [DisplayStyleSettings.applyOverrides]($common) for details.
|
|
@@ -94,8 +91,8 @@ export declare class ApplyRenderingStyleTool extends DisplayStyleTool {
|
|
|
94
91
|
static toolId: string;
|
|
95
92
|
static get minArgs(): number;
|
|
96
93
|
static get maxArgs(): number;
|
|
97
|
-
parse(args: string[]): boolean
|
|
98
|
-
execute(vp: Viewport): boolean
|
|
94
|
+
parse(args: string[]): Promise<boolean>;
|
|
95
|
+
execute(vp: Viewport): Promise<boolean>;
|
|
99
96
|
}
|
|
100
97
|
/** Apply appearance overrides to one or more subcategories in the active viewport.
|
|
101
98
|
* @beta
|
|
@@ -106,8 +103,23 @@ export declare class OverrideSubCategoryTool extends DisplayStyleTool {
|
|
|
106
103
|
static toolId: string;
|
|
107
104
|
static get minArgs(): number;
|
|
108
105
|
static get maxArgs(): number;
|
|
109
|
-
parse(inArgs: string[]): boolean
|
|
110
|
-
execute(vp: Viewport): boolean
|
|
106
|
+
parse(inArgs: string[]): Promise<boolean>;
|
|
107
|
+
execute(vp: Viewport): Promise<boolean>;
|
|
108
|
+
}
|
|
109
|
+
/** Query the schedule script JSON from an element.
|
|
110
|
+
* @beta
|
|
111
|
+
*/
|
|
112
|
+
export declare class QueryScheduleScriptTool extends DisplayStyleTool {
|
|
113
|
+
private _sourceId?;
|
|
114
|
+
private _action;
|
|
115
|
+
private _includeElementIds;
|
|
116
|
+
private _countElementIds;
|
|
117
|
+
private _expandElementIds;
|
|
118
|
+
static toolId: string;
|
|
119
|
+
static get minArgs(): number;
|
|
120
|
+
static get maxArgs(): number;
|
|
121
|
+
parse(input: string[], vp: Viewport): Promise<boolean>;
|
|
122
|
+
execute(vp: Viewport): Promise<boolean>;
|
|
111
123
|
}
|
|
112
124
|
/** Set whether background color is ignored when applying white-on-white reversal.
|
|
113
125
|
* @beta
|
|
@@ -117,7 +129,7 @@ export declare class WoWIgnoreBackgroundTool extends DisplayStyleTool {
|
|
|
117
129
|
static toolId: string;
|
|
118
130
|
static get minArgs(): number;
|
|
119
131
|
static get maxArgs(): number;
|
|
120
|
-
parse(args: string[]): boolean
|
|
121
|
-
execute(vp: Viewport): boolean
|
|
132
|
+
parse(args: string[]): Promise<boolean>;
|
|
133
|
+
execute(vp: Viewport): Promise<boolean>;
|
|
122
134
|
}
|
|
123
135
|
//# sourceMappingURL=DisplayStyleTools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DisplayStyleTools.d.ts","sourceRoot":"","sources":["../../../src/tools/DisplayStyleTools.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DisplayStyleTools.d.ts","sourceRoot":"","sources":["../../../src/tools/DisplayStyleTools.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,10 +4,11 @@
|
|
|
4
4
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
5
5
|
*--------------------------------------------------------------------------------------------*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.WoWIgnoreBackgroundTool = exports.OverrideSubCategoryTool = exports.ApplyRenderingStyleTool = exports.SaveRenderingStyleTool = exports.SkyCubeTool = exports.SkySphereTool = exports.ToggleSkyboxTool = exports.ChangeViewFlagsTool = exports.DisplayStyleTool = void 0;
|
|
7
|
+
exports.WoWIgnoreBackgroundTool = exports.QueryScheduleScriptTool = exports.OverrideSubCategoryTool = exports.ApplyRenderingStyleTool = exports.SaveRenderingStyleTool = exports.SkyCubeTool = exports.SkySphereTool = exports.ToggleSkyboxTool = exports.ChangeViewFlagsTool = exports.DisplayStyleTool = void 0;
|
|
8
8
|
/** @packageDocumentation
|
|
9
9
|
* @module Tools
|
|
10
10
|
*/
|
|
11
|
+
const core_bentley_1 = require("@itwin/core-bentley");
|
|
11
12
|
const core_common_1 = require("@itwin/core-common");
|
|
12
13
|
const core_frontend_1 = require("@itwin/core-frontend");
|
|
13
14
|
const ClipboardUtilities_1 = require("../ClipboardUtilities");
|
|
@@ -26,13 +27,13 @@ class DisplayStyleTool extends core_frontend_1.Tool {
|
|
|
26
27
|
get require3d() { return false; }
|
|
27
28
|
async run() {
|
|
28
29
|
const vp = core_frontend_1.IModelApp.viewManager.selectedView;
|
|
29
|
-
if (undefined !== vp && (!this.require3d || vp.view.is3d()) && this.execute(vp))
|
|
30
|
+
if (undefined !== vp && (!this.require3d || vp.view.is3d()) && await this.execute(vp))
|
|
30
31
|
vp.displayStyle = vp.view.displayStyle;
|
|
31
32
|
return true;
|
|
32
33
|
}
|
|
33
34
|
async parseAndRun(...args) {
|
|
34
35
|
const vp = core_frontend_1.IModelApp.viewManager.selectedView;
|
|
35
|
-
if (undefined !== vp && (!this.require3d || vp.view.is3d()) && this.parse(args))
|
|
36
|
+
if (undefined !== vp && (!this.require3d || vp.view.is3d()) && await this.parse(args, vp))
|
|
36
37
|
return this.run();
|
|
37
38
|
else
|
|
38
39
|
return false;
|
|
@@ -99,8 +100,8 @@ ChangeViewFlagsTool.toolId = "ChangeViewFlags";
|
|
|
99
100
|
*/
|
|
100
101
|
class ToggleSkyboxTool extends DisplayStyleTool {
|
|
101
102
|
get require3d() { return true; }
|
|
102
|
-
parse(_args) { return true; } // no arguments
|
|
103
|
-
execute(vp) {
|
|
103
|
+
async parse(_args) { return true; } // no arguments
|
|
104
|
+
async execute(vp) {
|
|
104
105
|
const style = vp.view.displayStyle;
|
|
105
106
|
style.environment = style.environment.withDisplay({ sky: !style.environment.displaySky });
|
|
106
107
|
return true;
|
|
@@ -115,11 +116,11 @@ class SkySphereTool extends DisplayStyleTool {
|
|
|
115
116
|
static get minArgs() { return 1; }
|
|
116
117
|
static get maxArgs() { return 1; }
|
|
117
118
|
get require3d() { return true; }
|
|
118
|
-
parse(args) {
|
|
119
|
+
async parse(args) {
|
|
119
120
|
this._image = args[0];
|
|
120
121
|
return true;
|
|
121
122
|
}
|
|
122
|
-
execute(vp) {
|
|
123
|
+
async execute(vp) {
|
|
123
124
|
if (this._image && vp.view.is3d()) {
|
|
124
125
|
vp.view.displayStyle.environment = vp.view.displayStyle.environment.clone({
|
|
125
126
|
displaySky: true,
|
|
@@ -142,11 +143,11 @@ class SkyCubeTool extends DisplayStyleTool {
|
|
|
142
143
|
static get minArgs() { return 1; }
|
|
143
144
|
static get maxArgs() { return 6; }
|
|
144
145
|
get require3d() { return true; }
|
|
145
|
-
parse(args) {
|
|
146
|
+
async parse(args) {
|
|
146
147
|
this._images = [...args];
|
|
147
148
|
return true;
|
|
148
149
|
}
|
|
149
|
-
execute(vp) {
|
|
150
|
+
async execute(vp) {
|
|
150
151
|
const imgs = this._images;
|
|
151
152
|
if (imgs.length === 0 || !vp.view.is3d())
|
|
152
153
|
return true;
|
|
@@ -218,7 +219,7 @@ class SaveRenderingStyleTool extends DisplayStyleTool {
|
|
|
218
219
|
}
|
|
219
220
|
static get minArgs() { return 0; }
|
|
220
221
|
static get maxArgs() { return 7; }
|
|
221
|
-
parse(inputArgs) {
|
|
222
|
+
async parse(inputArgs) {
|
|
222
223
|
const args = (0, parseArgs_1.parseArgs)(inputArgs);
|
|
223
224
|
function getArg(name) {
|
|
224
225
|
return args.getBoolean(name) ? true : undefined;
|
|
@@ -232,7 +233,7 @@ class SaveRenderingStyleTool extends DisplayStyleTool {
|
|
|
232
233
|
this._quote = true === getArg("q");
|
|
233
234
|
return true;
|
|
234
235
|
}
|
|
235
|
-
execute(vp) {
|
|
236
|
+
async execute(vp) {
|
|
236
237
|
let json = JSON.stringify(vp.displayStyle.settings.toOverrides(this._options));
|
|
237
238
|
if (this._quote)
|
|
238
239
|
json = `"${json.replace(/"/g, '""')}"`;
|
|
@@ -251,7 +252,7 @@ SaveRenderingStyleTool.toolId = "SaveRenderingStyle";
|
|
|
251
252
|
class ApplyRenderingStyleTool extends DisplayStyleTool {
|
|
252
253
|
static get minArgs() { return 1; }
|
|
253
254
|
static get maxArgs() { return 1; }
|
|
254
|
-
parse(args) {
|
|
255
|
+
async parse(args) {
|
|
255
256
|
try {
|
|
256
257
|
this._overrides = JSON.parse(args[0]);
|
|
257
258
|
return true;
|
|
@@ -261,7 +262,7 @@ class ApplyRenderingStyleTool extends DisplayStyleTool {
|
|
|
261
262
|
return false;
|
|
262
263
|
}
|
|
263
264
|
}
|
|
264
|
-
execute(vp) {
|
|
265
|
+
async execute(vp) {
|
|
265
266
|
if (this._overrides)
|
|
266
267
|
vp.overrideDisplayStyle(this._overrides);
|
|
267
268
|
return false;
|
|
@@ -280,7 +281,7 @@ class OverrideSubCategoryTool extends DisplayStyleTool {
|
|
|
280
281
|
}
|
|
281
282
|
static get minArgs() { return 1; }
|
|
282
283
|
static get maxArgs() { return 7; }
|
|
283
|
-
parse(inArgs) {
|
|
284
|
+
async parse(inArgs) {
|
|
284
285
|
const args = (0, parseArgs_1.parseArgs)(inArgs);
|
|
285
286
|
const ids = args.get("i");
|
|
286
287
|
if (ids)
|
|
@@ -295,7 +296,7 @@ class OverrideSubCategoryTool extends DisplayStyleTool {
|
|
|
295
296
|
props.invisible = typeof visible === "boolean" ? !visible : undefined;
|
|
296
297
|
return true;
|
|
297
298
|
}
|
|
298
|
-
execute(vp) {
|
|
299
|
+
async execute(vp) {
|
|
299
300
|
const ovr = core_common_1.SubCategoryOverride.fromJSON(this._overrideProps);
|
|
300
301
|
for (const id of this._subcategoryIds)
|
|
301
302
|
vp.displayStyle.overrideSubCategory(id, ovr);
|
|
@@ -304,20 +305,94 @@ class OverrideSubCategoryTool extends DisplayStyleTool {
|
|
|
304
305
|
}
|
|
305
306
|
exports.OverrideSubCategoryTool = OverrideSubCategoryTool;
|
|
306
307
|
OverrideSubCategoryTool.toolId = "OverrideSubCategory";
|
|
308
|
+
/** Query the schedule script JSON from an element.
|
|
309
|
+
* @beta
|
|
310
|
+
*/
|
|
311
|
+
class QueryScheduleScriptTool extends DisplayStyleTool {
|
|
312
|
+
constructor() {
|
|
313
|
+
super(...arguments);
|
|
314
|
+
this._action = "copy";
|
|
315
|
+
this._includeElementIds = false;
|
|
316
|
+
this._countElementIds = false;
|
|
317
|
+
this._expandElementIds = false;
|
|
318
|
+
}
|
|
319
|
+
static get minArgs() { return 0; }
|
|
320
|
+
static get maxArgs() { return 3; }
|
|
321
|
+
async parse(input, vp) {
|
|
322
|
+
var _a, _b, _c;
|
|
323
|
+
const args = (0, parseArgs_1.parseArgs)(input);
|
|
324
|
+
this._sourceId = (_a = args.get("i")) !== null && _a !== void 0 ? _a : (_b = vp.displayStyle.scheduleScriptReference) === null || _b === void 0 ? void 0 : _b.sourceId;
|
|
325
|
+
if (!this._sourceId)
|
|
326
|
+
return false;
|
|
327
|
+
const action = (_c = args.get("a")) !== null && _c !== void 0 ? _c : "";
|
|
328
|
+
this._action = action.length > 0 && "b" === action[0].toLowerCase() ? "break" : "copy";
|
|
329
|
+
this._includeElementIds = this._countElementIds = this._expandElementIds = false;
|
|
330
|
+
const ids = args.get("e");
|
|
331
|
+
if (ids && ids.length > 0) {
|
|
332
|
+
switch (ids[0].toLowerCase()) {
|
|
333
|
+
case "i":
|
|
334
|
+
this._includeElementIds = true;
|
|
335
|
+
break;
|
|
336
|
+
case "c":
|
|
337
|
+
this._includeElementIds = this._countElementIds = true;
|
|
338
|
+
break;
|
|
339
|
+
case "e":
|
|
340
|
+
this._includeElementIds = this._expandElementIds = true;
|
|
341
|
+
break;
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
return true;
|
|
345
|
+
}
|
|
346
|
+
async execute(vp) {
|
|
347
|
+
var _a, _b;
|
|
348
|
+
if (!this._sourceId || !this._action)
|
|
349
|
+
return false;
|
|
350
|
+
const opts = {
|
|
351
|
+
displayStyle: { omitScheduleScriptElementIds: !this._includeElementIds },
|
|
352
|
+
renderTimeline: { omitScriptElementIds: !this._includeElementIds },
|
|
353
|
+
};
|
|
354
|
+
let script;
|
|
355
|
+
const props = await vp.iModel.elements.loadProps(this._sourceId, opts);
|
|
356
|
+
if (props.script)
|
|
357
|
+
script = JSON.parse(props.script.script);
|
|
358
|
+
else if ((_b = (_a = props.jsonProperties) === null || _a === void 0 ? void 0 : _a.styles) === null || _b === void 0 ? void 0 : _b.scheduleScript)
|
|
359
|
+
script = props.jsonProperties.styles.scheduleScript;
|
|
360
|
+
if (!script)
|
|
361
|
+
return false;
|
|
362
|
+
if (this._countElementIds || this._expandElementIds) {
|
|
363
|
+
for (const model of script) {
|
|
364
|
+
for (const elem of model.elementTimelines) {
|
|
365
|
+
const elemIds = typeof elem.elementIds === "string" ? core_bentley_1.CompressedId64Set.decompressArray(elem.elementIds) : elem.elementIds;
|
|
366
|
+
if (this._countElementIds)
|
|
367
|
+
elem.elementIds = elemIds.length;
|
|
368
|
+
else
|
|
369
|
+
elem.elementIds = elemIds;
|
|
370
|
+
}
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
if (this._action === "break")
|
|
374
|
+
debugger; // eslint-disable-line no-debugger
|
|
375
|
+
else
|
|
376
|
+
(0, ClipboardUtilities_1.copyStringToClipboard)(JSON.stringify(script, null, 2));
|
|
377
|
+
return true;
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
exports.QueryScheduleScriptTool = QueryScheduleScriptTool;
|
|
381
|
+
QueryScheduleScriptTool.toolId = "QueryScheduleScript";
|
|
307
382
|
/** Set whether background color is ignored when applying white-on-white reversal.
|
|
308
383
|
* @beta
|
|
309
384
|
*/
|
|
310
385
|
class WoWIgnoreBackgroundTool extends DisplayStyleTool {
|
|
311
386
|
static get minArgs() { return 0; }
|
|
312
387
|
static get maxArgs() { return 1; }
|
|
313
|
-
parse(args) {
|
|
388
|
+
async parse(args) {
|
|
314
389
|
const ignore = (0, parseToggle_1.parseToggle)(args[0]);
|
|
315
390
|
if (typeof ignore === "string")
|
|
316
391
|
return false;
|
|
317
392
|
this._ignore = ignore;
|
|
318
393
|
return true;
|
|
319
394
|
}
|
|
320
|
-
execute(vp) {
|
|
395
|
+
async execute(vp) {
|
|
321
396
|
var _a;
|
|
322
397
|
const ignoreBackgroundColor = (_a = this._ignore) !== null && _a !== void 0 ? _a : !vp.displayStyle.settings.whiteOnWhiteReversal.ignoreBackgroundColor;
|
|
323
398
|
vp.displayStyle.settings.whiteOnWhiteReversal = core_common_1.WhiteOnWhiteReversalSettings.fromJSON({ ignoreBackgroundColor });
|