@itwin/editor-frontend 3.4.0-dev.50 → 3.4.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.
Files changed (88) hide show
  1. package/lib/cjs/CreateElementTool.d.ts +100 -100
  2. package/lib/cjs/CreateElementTool.js +327 -327
  3. package/lib/cjs/CreateElementTool.js.map +1 -1
  4. package/lib/cjs/DeleteElementsTool.d.ts +15 -15
  5. package/lib/cjs/DeleteElementsTool.js +40 -40
  6. package/lib/cjs/DeleteElementsTool.js.map +1 -1
  7. package/lib/cjs/EditTool.d.ts +37 -37
  8. package/lib/cjs/EditTool.js +135 -135
  9. package/lib/cjs/EditTool.js.map +1 -1
  10. package/lib/cjs/ElementGeometryTool.d.ts +148 -148
  11. package/lib/cjs/ElementGeometryTool.d.ts.map +1 -1
  12. package/lib/cjs/ElementGeometryTool.js +711 -708
  13. package/lib/cjs/ElementGeometryTool.js.map +1 -1
  14. package/lib/cjs/ModifyCurveTools.d.ts +118 -118
  15. package/lib/cjs/ModifyCurveTools.js +668 -668
  16. package/lib/cjs/ModifyCurveTools.js.map +1 -1
  17. package/lib/cjs/ProjectLocation/ProjectExtentsDecoration.d.ts +137 -137
  18. package/lib/cjs/ProjectLocation/ProjectExtentsDecoration.d.ts.map +1 -1
  19. package/lib/cjs/ProjectLocation/ProjectExtentsDecoration.js +824 -821
  20. package/lib/cjs/ProjectLocation/ProjectExtentsDecoration.js.map +1 -1
  21. package/lib/cjs/ProjectLocation/ProjectGeolocation.d.ts +135 -135
  22. package/lib/cjs/ProjectLocation/ProjectGeolocation.d.ts.map +1 -1
  23. package/lib/cjs/ProjectLocation/ProjectGeolocation.js +532 -507
  24. package/lib/cjs/ProjectLocation/ProjectGeolocation.js.map +1 -1
  25. package/lib/cjs/SketchTools.d.ts +306 -306
  26. package/lib/cjs/SketchTools.js +1707 -1707
  27. package/lib/cjs/SketchTools.js.map +1 -1
  28. package/lib/cjs/SolidModelingTools.d.ts +380 -380
  29. package/lib/cjs/SolidModelingTools.d.ts.map +1 -1
  30. package/lib/cjs/SolidModelingTools.js +1461 -1459
  31. package/lib/cjs/SolidModelingTools.js.map +1 -1
  32. package/lib/cjs/SolidPrimitiveTools.d.ts +254 -254
  33. package/lib/cjs/SolidPrimitiveTools.js +1095 -1095
  34. package/lib/cjs/SolidPrimitiveTools.js.map +1 -1
  35. package/lib/cjs/TransformElementsTool.d.ts +166 -166
  36. package/lib/cjs/TransformElementsTool.js +654 -654
  37. package/lib/cjs/TransformElementsTool.js.map +1 -1
  38. package/lib/cjs/UndoRedoTool.d.ts +16 -16
  39. package/lib/cjs/UndoRedoTool.js +42 -42
  40. package/lib/cjs/UndoRedoTool.js.map +1 -1
  41. package/lib/cjs/editor-frontend.d.ts +15 -15
  42. package/lib/cjs/editor-frontend.js +31 -31
  43. package/lib/cjs/editor-frontend.js.map +1 -1
  44. package/lib/esm/CreateElementTool.d.ts +100 -100
  45. package/lib/esm/CreateElementTool.js +319 -319
  46. package/lib/esm/CreateElementTool.js.map +1 -1
  47. package/lib/esm/DeleteElementsTool.d.ts +15 -15
  48. package/lib/esm/DeleteElementsTool.js +36 -36
  49. package/lib/esm/DeleteElementsTool.js.map +1 -1
  50. package/lib/esm/EditTool.d.ts +37 -37
  51. package/lib/esm/EditTool.js +131 -131
  52. package/lib/esm/EditTool.js.map +1 -1
  53. package/lib/esm/ElementGeometryTool.d.ts +148 -148
  54. package/lib/esm/ElementGeometryTool.d.ts.map +1 -1
  55. package/lib/esm/ElementGeometryTool.js +703 -700
  56. package/lib/esm/ElementGeometryTool.js.map +1 -1
  57. package/lib/esm/ModifyCurveTools.d.ts +118 -118
  58. package/lib/esm/ModifyCurveTools.js +660 -660
  59. package/lib/esm/ModifyCurveTools.js.map +1 -1
  60. package/lib/esm/ProjectLocation/ProjectExtentsDecoration.d.ts +137 -137
  61. package/lib/esm/ProjectLocation/ProjectExtentsDecoration.d.ts.map +1 -1
  62. package/lib/esm/ProjectLocation/ProjectExtentsDecoration.js +816 -813
  63. package/lib/esm/ProjectLocation/ProjectExtentsDecoration.js.map +1 -1
  64. package/lib/esm/ProjectLocation/ProjectGeolocation.d.ts +135 -135
  65. package/lib/esm/ProjectLocation/ProjectGeolocation.d.ts.map +1 -1
  66. package/lib/esm/ProjectLocation/ProjectGeolocation.js +526 -501
  67. package/lib/esm/ProjectLocation/ProjectGeolocation.js.map +1 -1
  68. package/lib/esm/SketchTools.d.ts +306 -306
  69. package/lib/esm/SketchTools.js +1697 -1697
  70. package/lib/esm/SketchTools.js.map +1 -1
  71. package/lib/esm/SolidModelingTools.d.ts +380 -380
  72. package/lib/esm/SolidModelingTools.d.ts.map +1 -1
  73. package/lib/esm/SolidModelingTools.js +1436 -1434
  74. package/lib/esm/SolidModelingTools.js.map +1 -1
  75. package/lib/esm/SolidPrimitiveTools.d.ts +254 -254
  76. package/lib/esm/SolidPrimitiveTools.js +1086 -1086
  77. package/lib/esm/SolidPrimitiveTools.js.map +1 -1
  78. package/lib/esm/TransformElementsTool.d.ts +166 -166
  79. package/lib/esm/TransformElementsTool.js +646 -646
  80. package/lib/esm/TransformElementsTool.js.map +1 -1
  81. package/lib/esm/UndoRedoTool.d.ts +16 -16
  82. package/lib/esm/UndoRedoTool.js +36 -36
  83. package/lib/esm/UndoRedoTool.js.map +1 -1
  84. package/lib/esm/editor-frontend.d.ts +15 -15
  85. package/lib/esm/editor-frontend.js +19 -19
  86. package/lib/esm/editor-frontend.js.map +1 -1
  87. package/lib/public/locales/en/Editor.json +448 -448
  88. package/package.json +15 -15
@@ -1 +1 @@
1
- {"version":3,"file":"EditTool.js","sourceRoot":"","sources":["../../src/EditTool.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 Editing\r\n */\r\n\r\nimport { editorChannel } from \"@itwin/editor-common\";\r\nimport { IModelApp, IpcApp } from \"@itwin/core-frontend\";\r\nimport { DeleteElementsTool } from \"./DeleteElementsTool\";\r\nimport { ChamferEdgesTool, CutSolidElementsTool, DeleteSubEntitiesTool, EmbossSolidElementsTool, HollowFacesTool, ImprintSolidElementsTool, IntersectSolidElementsTool, LoftProfilesTool, OffsetFacesTool, RoundEdgesTool, SewSheetElementsTool, SpinFacesTool, SubtractSolidElementsTool, SweepAlongPathTool, SweepFacesTool, ThickenSheetElementsTool, UniteSolidElementsTool } from \"./SolidModelingTools\";\r\nimport { ProjectLocationCancelTool, ProjectLocationHideTool, ProjectLocationSaveTool, ProjectLocationShowTool } from \"./ProjectLocation/ProjectExtentsDecoration\";\r\nimport { ProjectGeolocationMoveTool, ProjectGeolocationNorthTool, ProjectGeolocationPointTool } from \"./ProjectLocation/ProjectGeolocation\";\r\nimport { CreateArcTool, CreateBCurveTool, CreateCircleTool, CreateEllipseTool, CreateLineStringTool, CreateRectangleTool } from \"./SketchTools\";\r\nimport { CopyElementsTool, MoveElementsTool, RotateElementsTool } from \"./TransformElementsTool\";\r\nimport { BreakCurveTool, ExtendCurveTool, OffsetCurveTool } from \"./ModifyCurveTools\";\r\nimport { RedoTool, UndoAllTool, UndoTool } from \"./UndoRedoTool\";\r\nimport { CreateBoxTool, CreateConeTool, CreateCylinderTool, CreateSphereTool, CreateTorusTool } from \"./SolidPrimitiveTools\";\r\n\r\n/** @alpha Options for [[EditTools.initialize]]. */\r\nexport interface EditorOptions {\r\n /** If true, all tools will be registered. */\r\n registerAllTools?: true | undefined;\r\n /** If true, tools for undo/redo will be registered. */\r\n registerUndoRedoTools?: true | undefined;\r\n /** If true, tools for updating the project extents and geolocation will be registered. */\r\n registerProjectLocationTools?: true | undefined;\r\n /** If true, tools for basic manipulation will be registered. */\r\n registerBasicManipulationTools?: true | undefined;\r\n /** If true, tools for sketching will be registered. */\r\n registerSketchTools?: true | undefined;\r\n /** If true, tools for solid modeling will be registered. */\r\n registerSolidModelingTools?: true | undefined;\r\n}\r\n\r\n/** @alpha functions to support PrimitiveTool and InputCollector sub-classes with using EditCommand. */\r\nexport class EditTools {\r\n public static namespace = \"Editor\";\r\n public static tools = \"Editor:tools.\";\r\n private static _initialized = false;\r\n\r\n public static async startCommand<T>(commandId: string, iModelKey: string, ...args: any[]): Promise<T> {\r\n return IpcApp.callIpcChannel(editorChannel, \"startCommand\", commandId, iModelKey, ...args) as Promise<T>;\r\n }\r\n\r\n public static async callCommand(methodName: string, ...args: any[]): Promise<any> {\r\n return IpcApp.callIpcChannel(editorChannel, \"callMethod\", methodName, ...args);\r\n }\r\n\r\n /** @internal */\r\n public static translate(prompt: string) { return IModelApp.localization.getLocalizedString(this.tools + prompt); }\r\n\r\n /** Call this before using the package (e.g., before 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 EditorTools.initialize();\r\n * ```\r\n */\r\n public static async initialize(options?: EditorOptions): Promise<void> {\r\n if (this._initialized)\r\n return;\r\n\r\n // NOTE: We should clear the active command whenever a new PrimitiveTool is installed.\r\n // As tool run/install isn't currently async ToolAdmin.activeToolChanged can't be used at this time.\r\n // The active command will be cleared whenever another edit tool calls startCommand.\r\n this._initialized = true;\r\n\r\n // clean up if we're being shut down\r\n IModelApp.onBeforeShutdown.addListener(() => this.shutdown());\r\n\r\n const namespacePromise = IModelApp.localization.registerNamespace(this.namespace);\r\n const registerAllTools = options?.registerAllTools;\r\n\r\n // Register requested tools...\r\n if (registerAllTools || options?.registerUndoRedoTools) {\r\n const tools = [\r\n UndoAllTool,\r\n UndoTool,\r\n RedoTool,\r\n ];\r\n\r\n for (const tool of tools)\r\n tool.register(this.namespace);\r\n }\r\n\r\n if (registerAllTools || options?.registerProjectLocationTools) {\r\n const tools = [\r\n ProjectLocationShowTool,\r\n ProjectLocationHideTool,\r\n ProjectLocationCancelTool,\r\n ProjectLocationSaveTool,\r\n ProjectGeolocationMoveTool,\r\n ProjectGeolocationPointTool,\r\n ProjectGeolocationNorthTool,\r\n ];\r\n\r\n for (const tool of tools)\r\n tool.register(this.namespace);\r\n }\r\n\r\n if (registerAllTools || options?.registerBasicManipulationTools) {\r\n const tools = [\r\n DeleteElementsTool,\r\n MoveElementsTool,\r\n CopyElementsTool,\r\n RotateElementsTool,\r\n ];\r\n\r\n for (const tool of tools)\r\n tool.register(this.namespace);\r\n }\r\n\r\n if (registerAllTools || options?.registerSketchTools) {\r\n const tools = [\r\n CreateArcTool,\r\n CreateBCurveTool,\r\n CreateCircleTool,\r\n CreateEllipseTool,\r\n CreateLineStringTool,\r\n CreateRectangleTool,\r\n BreakCurveTool,\r\n ExtendCurveTool,\r\n OffsetCurveTool,\r\n ];\r\n\r\n for (const tool of tools)\r\n tool.register(this.namespace);\r\n }\r\n\r\n if (registerAllTools || options?.registerSolidModelingTools) {\r\n const tools = [\r\n CreateSphereTool,\r\n CreateCylinderTool,\r\n CreateConeTool,\r\n CreateBoxTool,\r\n CreateTorusTool,\r\n UniteSolidElementsTool,\r\n SubtractSolidElementsTool,\r\n IntersectSolidElementsTool,\r\n SewSheetElementsTool,\r\n ThickenSheetElementsTool,\r\n CutSolidElementsTool,\r\n EmbossSolidElementsTool,\r\n ImprintSolidElementsTool,\r\n SweepAlongPathTool,\r\n LoftProfilesTool,\r\n OffsetFacesTool,\r\n HollowFacesTool,\r\n SweepFacesTool,\r\n SpinFacesTool,\r\n RoundEdgesTool,\r\n ChamferEdgesTool,\r\n DeleteSubEntitiesTool,\r\n ];\r\n\r\n for (const tool of tools)\r\n tool.register(this.namespace);\r\n }\r\n\r\n return namespacePromise;\r\n }\r\n\r\n private static shutdown() {\r\n this._initialized = false;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"EditTool.js","sourceRoot":"","sources":["../../src/EditTool.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 Editing\n */\n\nimport { editorChannel } from \"@itwin/editor-common\";\nimport { IModelApp, IpcApp } from \"@itwin/core-frontend\";\nimport { DeleteElementsTool } from \"./DeleteElementsTool\";\nimport { ChamferEdgesTool, CutSolidElementsTool, DeleteSubEntitiesTool, EmbossSolidElementsTool, HollowFacesTool, ImprintSolidElementsTool, IntersectSolidElementsTool, LoftProfilesTool, OffsetFacesTool, RoundEdgesTool, SewSheetElementsTool, SpinFacesTool, SubtractSolidElementsTool, SweepAlongPathTool, SweepFacesTool, ThickenSheetElementsTool, UniteSolidElementsTool } from \"./SolidModelingTools\";\nimport { ProjectLocationCancelTool, ProjectLocationHideTool, ProjectLocationSaveTool, ProjectLocationShowTool } from \"./ProjectLocation/ProjectExtentsDecoration\";\nimport { ProjectGeolocationMoveTool, ProjectGeolocationNorthTool, ProjectGeolocationPointTool } from \"./ProjectLocation/ProjectGeolocation\";\nimport { CreateArcTool, CreateBCurveTool, CreateCircleTool, CreateEllipseTool, CreateLineStringTool, CreateRectangleTool } from \"./SketchTools\";\nimport { CopyElementsTool, MoveElementsTool, RotateElementsTool } from \"./TransformElementsTool\";\nimport { BreakCurveTool, ExtendCurveTool, OffsetCurveTool } from \"./ModifyCurveTools\";\nimport { RedoTool, UndoAllTool, UndoTool } from \"./UndoRedoTool\";\nimport { CreateBoxTool, CreateConeTool, CreateCylinderTool, CreateSphereTool, CreateTorusTool } from \"./SolidPrimitiveTools\";\n\n/** @alpha Options for [[EditTools.initialize]]. */\nexport interface EditorOptions {\n /** If true, all tools will be registered. */\n registerAllTools?: true | undefined;\n /** If true, tools for undo/redo will be registered. */\n registerUndoRedoTools?: true | undefined;\n /** If true, tools for updating the project extents and geolocation will be registered. */\n registerProjectLocationTools?: true | undefined;\n /** If true, tools for basic manipulation will be registered. */\n registerBasicManipulationTools?: true | undefined;\n /** If true, tools for sketching will be registered. */\n registerSketchTools?: true | undefined;\n /** If true, tools for solid modeling will be registered. */\n registerSolidModelingTools?: true | undefined;\n}\n\n/** @alpha functions to support PrimitiveTool and InputCollector sub-classes with using EditCommand. */\nexport class EditTools {\n public static namespace = \"Editor\";\n public static tools = \"Editor:tools.\";\n private static _initialized = false;\n\n public static async startCommand<T>(commandId: string, iModelKey: string, ...args: any[]): Promise<T> {\n return IpcApp.callIpcChannel(editorChannel, \"startCommand\", commandId, iModelKey, ...args) as Promise<T>;\n }\n\n public static async callCommand(methodName: string, ...args: any[]): Promise<any> {\n return IpcApp.callIpcChannel(editorChannel, \"callMethod\", methodName, ...args);\n }\n\n /** @internal */\n public static translate(prompt: string) { return IModelApp.localization.getLocalizedString(this.tools + prompt); }\n\n /** Call this before using the package (e.g., before attempting to use any of its tools.)\n * To initialize when starting up your app:\n * ```ts\n * IModelApp.startup();\n * await EditorTools.initialize();\n * ```\n */\n public static async initialize(options?: EditorOptions): Promise<void> {\n if (this._initialized)\n return;\n\n // NOTE: We should clear the active command whenever a new PrimitiveTool is installed.\n // As tool run/install isn't currently async ToolAdmin.activeToolChanged can't be used at this time.\n // The active command will be cleared whenever another edit tool calls startCommand.\n this._initialized = true;\n\n // clean up if we're being shut down\n IModelApp.onBeforeShutdown.addListener(() => this.shutdown());\n\n const namespacePromise = IModelApp.localization.registerNamespace(this.namespace);\n const registerAllTools = options?.registerAllTools;\n\n // Register requested tools...\n if (registerAllTools || options?.registerUndoRedoTools) {\n const tools = [\n UndoAllTool,\n UndoTool,\n RedoTool,\n ];\n\n for (const tool of tools)\n tool.register(this.namespace);\n }\n\n if (registerAllTools || options?.registerProjectLocationTools) {\n const tools = [\n ProjectLocationShowTool,\n ProjectLocationHideTool,\n ProjectLocationCancelTool,\n ProjectLocationSaveTool,\n ProjectGeolocationMoveTool,\n ProjectGeolocationPointTool,\n ProjectGeolocationNorthTool,\n ];\n\n for (const tool of tools)\n tool.register(this.namespace);\n }\n\n if (registerAllTools || options?.registerBasicManipulationTools) {\n const tools = [\n DeleteElementsTool,\n MoveElementsTool,\n CopyElementsTool,\n RotateElementsTool,\n ];\n\n for (const tool of tools)\n tool.register(this.namespace);\n }\n\n if (registerAllTools || options?.registerSketchTools) {\n const tools = [\n CreateArcTool,\n CreateBCurveTool,\n CreateCircleTool,\n CreateEllipseTool,\n CreateLineStringTool,\n CreateRectangleTool,\n BreakCurveTool,\n ExtendCurveTool,\n OffsetCurveTool,\n ];\n\n for (const tool of tools)\n tool.register(this.namespace);\n }\n\n if (registerAllTools || options?.registerSolidModelingTools) {\n const tools = [\n CreateSphereTool,\n CreateCylinderTool,\n CreateConeTool,\n CreateBoxTool,\n CreateTorusTool,\n UniteSolidElementsTool,\n SubtractSolidElementsTool,\n IntersectSolidElementsTool,\n SewSheetElementsTool,\n ThickenSheetElementsTool,\n CutSolidElementsTool,\n EmbossSolidElementsTool,\n ImprintSolidElementsTool,\n SweepAlongPathTool,\n LoftProfilesTool,\n OffsetFacesTool,\n HollowFacesTool,\n SweepFacesTool,\n SpinFacesTool,\n RoundEdgesTool,\n ChamferEdgesTool,\n DeleteSubEntitiesTool,\n ];\n\n for (const tool of tools)\n tool.register(this.namespace);\n }\n\n return namespacePromise;\n }\n\n private static shutdown() {\n this._initialized = false;\n }\n}\n"]}
@@ -1,149 +1,149 @@
1
- /** @packageDocumentation
2
- * @module Editing
3
- */
4
- import { Id64Arg, Id64String } from "@itwin/core-bentley";
5
- import { BRepEntityType, ElementGeometryCacheFilter, ElementGeometryResultProps, SolidModelingCommandIpc, SubEntityFilter, SubEntityGeometryProps, SubEntityLocationProps, SubEntityProps, SubEntityType } from "@itwin/editor-common";
6
- import { FeatureAppearance } from "@itwin/core-common";
7
- import { Point3d, Ray3d, Transform } from "@itwin/core-geometry";
8
- import { BeButtonEvent, BeModifierKeys, CoordinateLockOverrides, DecorateContext, DynamicsContext, ElementSetTool, EventHandled, FeatureOverrideProvider, FeatureSymbology, GraphicBranchOptions, GraphicType, HitDetail, IModelConnection, LocateResponse, RenderGraphicOwner, SelectionMethod, SelectionSet, ToolAssistanceInstruction, Viewport } from "@itwin/core-frontend";
9
- /** @alpha */
10
- export declare class ElementGeometryGraphicsProvider {
11
- readonly iModel: IModelConnection;
12
- graphic?: RenderGraphicOwner;
13
- constructor(iModel: IModelConnection);
14
- /** Call to request a RenderGraphic for the supplied graphic data.
15
- * @see [[cleanupGraphic]] Must be called when the tool exits.
16
- */
17
- createGraphic(graphicData: Uint8Array): Promise<boolean>;
18
- /** Call to dispose of [[RenderGraphic]] held by [[RenderGraphicOwner]].
19
- * @note Must be called when the tool exits to avoid leaks of graphics memory or other webgl resources.
20
- */
21
- cleanupGraphic(): void;
22
- addGraphic(context: DynamicsContext, transform?: Transform, opts?: GraphicBranchOptions): void;
23
- addDecoration(context: DecorateContext, type: GraphicType, transform?: Transform, opts?: GraphicBranchOptions): void;
24
- }
25
- /** @alpha */
26
- export declare function isSameSubEntity(a: SubEntityProps, b: SubEntityProps): boolean;
27
- /** @alpha */
28
- export declare class SubEntityData {
29
- toolData?: any;
30
- chordTolerance?: number;
31
- private _props;
32
- private _geometry?;
33
- private _graphicsProvider?;
34
- constructor(props: SubEntityProps);
35
- get props(): SubEntityProps;
36
- set props(value: SubEntityProps);
37
- get geometry(): SubEntityGeometryProps | undefined;
38
- set geometry(value: SubEntityGeometryProps | undefined);
39
- isSame(other: SubEntityProps): boolean;
40
- getAppearance(vp: Viewport, accepted: boolean): FeatureAppearance;
41
- createGraphic(iModel: IModelConnection): Promise<boolean>;
42
- cleanupGraphic(): void;
43
- get hasGraphic(): boolean;
44
- display(context: DecorateContext, accepted: boolean): void;
45
- }
46
- /** @alpha Base class for tools that want to use the backend geometry cache. */
47
- export declare abstract class ElementGeometryCacheTool extends ElementSetTool implements FeatureOverrideProvider {
48
- protected _startedCmd?: string;
49
- protected readonly _checkedIds: Map<string, boolean>;
50
- protected _graphicsProvider?: ElementGeometryGraphicsProvider;
51
- protected _graphicsPending?: true;
52
- protected _firstResult: boolean;
53
- protected _agendaAppearanceDefault?: FeatureAppearance;
54
- protected _agendaAppearanceDynamic?: FeatureAppearance;
55
- protected allowView(vp: Viewport): boolean;
56
- isCompatibleViewport(vp: Viewport | undefined, isSelectedViewChange: boolean): boolean;
57
- protected startCommand(): Promise<string>;
58
- static callCommand<T extends keyof SolidModelingCommandIpc>(method: T, ...args: Parameters<SolidModelingCommandIpc[T]>): ReturnType<SolidModelingCommandIpc[T]>;
59
- protected agendaAppearance(isDynamics: boolean): FeatureAppearance;
60
- protected get wantAgendaAppearanceOverride(): boolean;
61
- addFeatureOverrides(overrides: FeatureSymbology.Overrides, _vp: Viewport): void;
62
- protected updateAgendaAppearanceProvider(drop?: true): void;
63
- protected get geometryCacheFilter(): ElementGeometryCacheFilter | undefined;
64
- protected onGeometryCacheFilterChanged(): void;
65
- protected createElementGeometryCache(id: Id64String): Promise<boolean>;
66
- protected acceptElementForOperation(id: Id64String): Promise<boolean>;
67
- protected isElementValidForOperation(hit: HitDetail, out?: LocateResponse): Promise<boolean>;
68
- protected postFilterIds(arg: Id64Arg): Promise<Id64Arg>;
69
- protected getGroupIds(id: Id64String): Promise<Id64Arg>;
70
- protected getSelectionSetCandidates(ss: SelectionSet): Promise<Id64Arg>;
71
- protected getDragSelectCandidates(vp: Viewport, origin: Point3d, corner: Point3d, method: SelectionMethod, overlap: boolean): Promise<Id64Arg>;
72
- onDynamicFrame(_ev: BeButtonEvent, context: DynamicsContext): void;
73
- onMouseMotion(ev: BeButtonEvent): Promise<void>;
74
- protected getGraphicData(_ev: BeButtonEvent): Promise<Uint8Array | undefined>;
75
- protected updateGraphic(ev: BeButtonEvent, isDynamics: boolean): Promise<void>;
76
- protected createGraphic(graphicData: Uint8Array): Promise<void>;
77
- protected clearGraphic(): void;
78
- protected clearElementGeometryCache(): Promise<void>;
79
- onUnsuspend(): Promise<void>;
80
- onSuspend(): Promise<void>;
81
- onPostInstall(): Promise<void>;
82
- onCleanup(): Promise<void>;
83
- }
84
- /** @alpha Base class for tools that need to locate faces, edges, and vertices. */
85
- export declare abstract class LocateSubEntityTool extends ElementGeometryCacheTool {
86
- protected _currentSubEntity?: SubEntityData;
87
- protected _acceptedSubEntities: SubEntityData[];
88
- protected _locatedSubEntities?: SubEntityLocationProps[];
89
- protected _subEntityGraphicPending?: true;
90
- protected readonly _summaryIds: Map<string, BRepEntityType[]>;
91
- protected provideToolAssistance(mainInstrText?: string, additionalInstr?: ToolAssistanceInstruction[]): void;
92
- protected get wantAgendaAppearanceOverride(): boolean;
93
- protected get wantGeometrySummary(): boolean;
94
- protected get wantSubEntitySnap(): boolean;
95
- protected wantSubEntityType(type: SubEntityType): boolean;
96
- protected getMaximumSubEntityHits(type: SubEntityType): number;
97
- protected get requiredSubEntityCount(): number;
98
- protected get haveAcceptedSubEntities(): boolean;
99
- protected get inhibitSubEntityDisplay(): boolean;
100
- protected get allowSubEntityControlSelect(): boolean;
101
- protected get allowSubEntityControlDeselect(): boolean;
102
- protected get allowSubEntitySelectNext(): boolean;
103
- protected getBRepEntityTypeForSubEntity(id: Id64String, subEntity: SubEntityProps): BRepEntityType;
104
- protected createElementGeometrySummary(id: Id64String): Promise<boolean>;
105
- protected createElementGeometryCache(id: Id64String): Promise<boolean>;
106
- protected getAcceptedSubEntityData(index?: number): SubEntityData | undefined;
107
- protected getAcceptedSubEntities(): SubEntityProps[];
108
- protected drawSubEntity(context: DecorateContext, subEntity: SubEntityData, accepted: boolean): void;
109
- protected drawAcceptedSubEntities(context: DecorateContext): void;
110
- decorate(context: DecorateContext): void;
111
- decorateSuspended(context: DecorateContext): void;
112
- protected getLocateAperture(ev: BeButtonEvent): number;
113
- protected getMaxRayDistance(ev: BeButtonEvent, aperture: number): number;
114
- protected getRayOrigin(ev: BeButtonEvent): Point3d;
115
- protected wantHiddenEdges(vp: Viewport): boolean;
116
- protected getSubEntityFilter(): SubEntityFilter | undefined;
117
- protected pickSubEntities(id: Id64String, boresite: Ray3d, maxFace: number, maxEdge: number, maxVertex: number, maxDistance: number, hiddenEdgesVisible: boolean, filter?: SubEntityFilter): Promise<SubEntityLocationProps[] | undefined>;
118
- protected doPickSubEntities(id: Id64String, ev: BeButtonEvent): Promise<SubEntityLocationProps[] | undefined>;
119
- protected createSubEntityData(id: Id64String, hit: SubEntityLocationProps): Promise<SubEntityData>;
120
- /** Append specified sub-entity to accepted array. */
121
- protected addSubEntity(id: Id64String, props: SubEntityLocationProps): Promise<void>;
122
- /** Remove specified sub-entity from accepted array, or pop last sub-entity if undefined. */
123
- protected removeSubEntity(_id: Id64String, props?: SubEntityLocationProps): Promise<void>;
124
- /** Locate sub-entities for the most recently added (last) agenda entry. Tool sub-classes that wish to identity
125
- * sub-entities from multiple elements are responsible for maintaining the sub-entities per-element.
126
- */
127
- protected doLocateSubEntity(ev: BeButtonEvent, newSearch: boolean): Promise<boolean>;
128
- protected chooseNextHit(ev: BeButtonEvent): Promise<EventHandled>;
129
- protected get wantAdditionalSubEntities(): boolean;
130
- protected gatherInput(ev: BeButtonEvent): Promise<EventHandled | undefined>;
131
- protected getCurrentElement(): Id64String | undefined;
132
- protected clearCurrentSubEntity(): void;
133
- protected setCurrentSubEntity(id: Id64String, hit: SubEntityLocationProps, chordTolerance?: number): Promise<boolean>;
134
- protected changeCurrentSubEntity(id?: Id64String, current?: SubEntityLocationProps, chordTolerance?: number): Promise<boolean>;
135
- protected updateCurrentSubEntity(ev: BeButtonEvent): Promise<boolean>;
136
- protected createSubEntityGraphic(id: Id64String, data: SubEntityData, chordTolerance?: number): Promise<boolean>;
137
- protected updateGraphic(ev: BeButtonEvent, isDynamics: boolean): Promise<void>;
138
- protected getGraphicData(ev: BeButtonEvent): Promise<Uint8Array | undefined>;
139
- protected applyAgendaOperation(_ev: BeButtonEvent, _isAccept: boolean): Promise<ElementGeometryResultProps | undefined>;
140
- processAgenda(ev: BeButtonEvent): Promise<void>;
141
- onModifierKeyTransition(wentDown: boolean, modifier: BeModifierKeys, event: KeyboardEvent): Promise<EventHandled>;
142
- changeLocateState(enableLocate: boolean, enableSnap?: boolean, cursor?: string, coordLockOvr?: CoordinateLockOverrides): void;
143
- protected get shouldEnableSnap(): boolean;
144
- protected setupAccuDraw(): void;
145
- protected setupAndPromptForNextAction(): void;
146
- protected clearSubEntityGraphics(): void;
147
- onCleanup(): Promise<void>;
148
- }
1
+ /** @packageDocumentation
2
+ * @module Editing
3
+ */
4
+ import { Id64Arg, Id64String } from "@itwin/core-bentley";
5
+ import { BRepEntityType, ElementGeometryCacheFilter, ElementGeometryResultProps, SolidModelingCommandIpc, SubEntityFilter, SubEntityGeometryProps, SubEntityLocationProps, SubEntityProps, SubEntityType } from "@itwin/editor-common";
6
+ import { FeatureAppearance } from "@itwin/core-common";
7
+ import { Point3d, Ray3d, Transform } from "@itwin/core-geometry";
8
+ import { BeButtonEvent, BeModifierKeys, CoordinateLockOverrides, DecorateContext, DynamicsContext, ElementSetTool, EventHandled, FeatureOverrideProvider, FeatureSymbology, GraphicBranchOptions, GraphicType, HitDetail, IModelConnection, LocateResponse, RenderGraphicOwner, SelectionMethod, SelectionSet, ToolAssistanceInstruction, Viewport } from "@itwin/core-frontend";
9
+ /** @alpha */
10
+ export declare class ElementGeometryGraphicsProvider {
11
+ readonly iModel: IModelConnection;
12
+ graphic?: RenderGraphicOwner;
13
+ constructor(iModel: IModelConnection);
14
+ /** Call to request a RenderGraphic for the supplied graphic data.
15
+ * @see [[cleanupGraphic]] Must be called when the tool exits.
16
+ */
17
+ createGraphic(graphicData: Uint8Array): Promise<boolean>;
18
+ /** Call to dispose of [[RenderGraphic]] held by [[RenderGraphicOwner]].
19
+ * @note Must be called when the tool exits to avoid leaks of graphics memory or other webgl resources.
20
+ */
21
+ cleanupGraphic(): void;
22
+ addGraphic(context: DynamicsContext, transform?: Transform, opts?: GraphicBranchOptions): void;
23
+ addDecoration(context: DecorateContext, type: GraphicType, transform?: Transform, opts?: GraphicBranchOptions): void;
24
+ }
25
+ /** @alpha */
26
+ export declare function isSameSubEntity(a: SubEntityProps, b: SubEntityProps): boolean;
27
+ /** @alpha */
28
+ export declare class SubEntityData {
29
+ toolData?: any;
30
+ chordTolerance?: number;
31
+ private _props;
32
+ private _geometry?;
33
+ private _graphicsProvider?;
34
+ constructor(props: SubEntityProps);
35
+ get props(): SubEntityProps;
36
+ set props(value: SubEntityProps);
37
+ get geometry(): SubEntityGeometryProps | undefined;
38
+ set geometry(value: SubEntityGeometryProps | undefined);
39
+ isSame(other: SubEntityProps): boolean;
40
+ getAppearance(vp: Viewport, accepted: boolean): FeatureAppearance;
41
+ createGraphic(iModel: IModelConnection): Promise<boolean>;
42
+ cleanupGraphic(): void;
43
+ get hasGraphic(): boolean;
44
+ display(context: DecorateContext, accepted: boolean): void;
45
+ }
46
+ /** @alpha Base class for tools that want to use the backend geometry cache. */
47
+ export declare abstract class ElementGeometryCacheTool extends ElementSetTool implements FeatureOverrideProvider {
48
+ protected _startedCmd?: string;
49
+ protected readonly _checkedIds: Map<string, boolean>;
50
+ protected _graphicsProvider?: ElementGeometryGraphicsProvider;
51
+ protected _graphicsPending?: true;
52
+ protected _firstResult: boolean;
53
+ protected _agendaAppearanceDefault?: FeatureAppearance;
54
+ protected _agendaAppearanceDynamic?: FeatureAppearance;
55
+ protected allowView(vp: Viewport): boolean;
56
+ isCompatibleViewport(vp: Viewport | undefined, isSelectedViewChange: boolean): boolean;
57
+ protected startCommand(): Promise<string>;
58
+ static callCommand<T extends keyof SolidModelingCommandIpc>(method: T, ...args: Parameters<SolidModelingCommandIpc[T]>): ReturnType<SolidModelingCommandIpc[T]>;
59
+ protected agendaAppearance(isDynamics: boolean): FeatureAppearance;
60
+ protected get wantAgendaAppearanceOverride(): boolean;
61
+ addFeatureOverrides(overrides: FeatureSymbology.Overrides, _vp: Viewport): void;
62
+ protected updateAgendaAppearanceProvider(drop?: true): void;
63
+ protected get geometryCacheFilter(): ElementGeometryCacheFilter | undefined;
64
+ protected onGeometryCacheFilterChanged(): void;
65
+ protected createElementGeometryCache(id: Id64String): Promise<boolean>;
66
+ protected acceptElementForOperation(id: Id64String): Promise<boolean>;
67
+ protected isElementValidForOperation(hit: HitDetail, out?: LocateResponse): Promise<boolean>;
68
+ protected postFilterIds(arg: Id64Arg): Promise<Id64Arg>;
69
+ protected getGroupIds(id: Id64String): Promise<Id64Arg>;
70
+ protected getSelectionSetCandidates(ss: SelectionSet): Promise<Id64Arg>;
71
+ protected getDragSelectCandidates(vp: Viewport, origin: Point3d, corner: Point3d, method: SelectionMethod, overlap: boolean): Promise<Id64Arg>;
72
+ onDynamicFrame(_ev: BeButtonEvent, context: DynamicsContext): void;
73
+ onMouseMotion(ev: BeButtonEvent): Promise<void>;
74
+ protected getGraphicData(_ev: BeButtonEvent): Promise<Uint8Array | undefined>;
75
+ protected updateGraphic(ev: BeButtonEvent, isDynamics: boolean): Promise<void>;
76
+ protected createGraphic(graphicData: Uint8Array): Promise<void>;
77
+ protected clearGraphic(): void;
78
+ protected clearElementGeometryCache(): Promise<void>;
79
+ onUnsuspend(): Promise<void>;
80
+ onSuspend(): Promise<void>;
81
+ onPostInstall(): Promise<void>;
82
+ onCleanup(): Promise<void>;
83
+ }
84
+ /** @alpha Base class for tools that need to locate faces, edges, and vertices. */
85
+ export declare abstract class LocateSubEntityTool extends ElementGeometryCacheTool {
86
+ protected _currentSubEntity?: SubEntityData;
87
+ protected _acceptedSubEntities: SubEntityData[];
88
+ protected _locatedSubEntities?: SubEntityLocationProps[];
89
+ protected _subEntityGraphicPending?: true;
90
+ protected readonly _summaryIds: Map<string, BRepEntityType[]>;
91
+ protected provideToolAssistance(mainInstrText?: string, additionalInstr?: ToolAssistanceInstruction[]): void;
92
+ protected get wantAgendaAppearanceOverride(): boolean;
93
+ protected get wantGeometrySummary(): boolean;
94
+ protected get wantSubEntitySnap(): boolean;
95
+ protected wantSubEntityType(type: SubEntityType): boolean;
96
+ protected getMaximumSubEntityHits(type: SubEntityType): number;
97
+ protected get requiredSubEntityCount(): number;
98
+ protected get haveAcceptedSubEntities(): boolean;
99
+ protected get inhibitSubEntityDisplay(): boolean;
100
+ protected get allowSubEntityControlSelect(): boolean;
101
+ protected get allowSubEntityControlDeselect(): boolean;
102
+ protected get allowSubEntitySelectNext(): boolean;
103
+ protected getBRepEntityTypeForSubEntity(id: Id64String, subEntity: SubEntityProps): BRepEntityType;
104
+ protected createElementGeometrySummary(id: Id64String): Promise<boolean>;
105
+ protected createElementGeometryCache(id: Id64String): Promise<boolean>;
106
+ protected getAcceptedSubEntityData(index?: number): SubEntityData | undefined;
107
+ protected getAcceptedSubEntities(): SubEntityProps[];
108
+ protected drawSubEntity(context: DecorateContext, subEntity: SubEntityData, accepted: boolean): void;
109
+ protected drawAcceptedSubEntities(context: DecorateContext): void;
110
+ decorate(context: DecorateContext): void;
111
+ decorateSuspended(context: DecorateContext): void;
112
+ protected getLocateAperture(ev: BeButtonEvent): number;
113
+ protected getMaxRayDistance(ev: BeButtonEvent, aperture: number): number;
114
+ protected getRayOrigin(ev: BeButtonEvent): Point3d;
115
+ protected wantHiddenEdges(vp: Viewport): boolean;
116
+ protected getSubEntityFilter(): SubEntityFilter | undefined;
117
+ protected pickSubEntities(id: Id64String, boresite: Ray3d, maxFace: number, maxEdge: number, maxVertex: number, maxDistance: number, hiddenEdgesVisible: boolean, filter?: SubEntityFilter): Promise<SubEntityLocationProps[] | undefined>;
118
+ protected doPickSubEntities(id: Id64String, ev: BeButtonEvent): Promise<SubEntityLocationProps[] | undefined>;
119
+ protected createSubEntityData(id: Id64String, hit: SubEntityLocationProps): Promise<SubEntityData>;
120
+ /** Append specified sub-entity to accepted array. */
121
+ protected addSubEntity(id: Id64String, props: SubEntityLocationProps): Promise<void>;
122
+ /** Remove specified sub-entity from accepted array, or pop last sub-entity if undefined. */
123
+ protected removeSubEntity(_id: Id64String, props?: SubEntityLocationProps): Promise<void>;
124
+ /** Locate sub-entities for the most recently added (last) agenda entry. Tool sub-classes that wish to identity
125
+ * sub-entities from multiple elements are responsible for maintaining the sub-entities per-element.
126
+ */
127
+ protected doLocateSubEntity(ev: BeButtonEvent, newSearch: boolean): Promise<boolean>;
128
+ protected chooseNextHit(ev: BeButtonEvent): Promise<EventHandled>;
129
+ protected get wantAdditionalSubEntities(): boolean;
130
+ protected gatherInput(ev: BeButtonEvent): Promise<EventHandled | undefined>;
131
+ protected getCurrentElement(): Id64String | undefined;
132
+ protected clearCurrentSubEntity(): void;
133
+ protected setCurrentSubEntity(id: Id64String, hit: SubEntityLocationProps, chordTolerance?: number): Promise<boolean>;
134
+ protected changeCurrentSubEntity(id?: Id64String, current?: SubEntityLocationProps, chordTolerance?: number): Promise<boolean>;
135
+ protected updateCurrentSubEntity(ev: BeButtonEvent): Promise<boolean>;
136
+ protected createSubEntityGraphic(id: Id64String, data: SubEntityData, chordTolerance?: number): Promise<boolean>;
137
+ protected updateGraphic(ev: BeButtonEvent, isDynamics: boolean): Promise<void>;
138
+ protected getGraphicData(ev: BeButtonEvent): Promise<Uint8Array | undefined>;
139
+ protected applyAgendaOperation(_ev: BeButtonEvent, _isAccept: boolean): Promise<ElementGeometryResultProps | undefined>;
140
+ processAgenda(ev: BeButtonEvent): Promise<void>;
141
+ onModifierKeyTransition(wentDown: boolean, modifier: BeModifierKeys, event: KeyboardEvent): Promise<EventHandled>;
142
+ changeLocateState(enableLocate: boolean, enableSnap?: boolean, cursor?: string, coordLockOvr?: CoordinateLockOverrides): void;
143
+ protected get shouldEnableSnap(): boolean;
144
+ protected setupAccuDraw(): void;
145
+ protected setupAndPromptForNextAction(): void;
146
+ protected clearSubEntityGraphics(): void;
147
+ onCleanup(): Promise<void>;
148
+ }
149
149
  //# sourceMappingURL=ElementGeometryTool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElementGeometryTool.d.ts","sourceRoot":"","sources":["../../src/ElementGeometryTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ElementGeometryTool.d.ts","sourceRoot":"","sources":["../../src/ElementGeometryTool.ts"],"names":[],"mappings":"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"}