@itwin/editor-frontend 3.3.0-dev.3 → 3.3.0-dev.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -1
- package/lib/cjs/CreateElementTool.d.ts +25 -1
- package/lib/cjs/CreateElementTool.d.ts.map +1 -1
- package/lib/cjs/CreateElementTool.js +89 -2
- package/lib/cjs/CreateElementTool.js.map +1 -1
- package/lib/cjs/EditTool.d.ts +1 -0
- package/lib/cjs/EditTool.d.ts.map +1 -1
- package/lib/cjs/EditTool.js +9 -0
- package/lib/cjs/EditTool.js.map +1 -1
- package/lib/cjs/SketchTools.d.ts +14 -23
- package/lib/cjs/SketchTools.d.ts.map +1 -1
- package/lib/cjs/SketchTools.js +59 -104
- package/lib/cjs/SketchTools.js.map +1 -1
- package/lib/cjs/SolidPrimitiveTools.d.ts +155 -0
- package/lib/cjs/SolidPrimitiveTools.d.ts.map +1 -0
- package/lib/cjs/SolidPrimitiveTools.js +605 -0
- package/lib/cjs/SolidPrimitiveTools.js.map +1 -0
- package/lib/cjs/editor-frontend.d.ts +1 -0
- package/lib/cjs/editor-frontend.d.ts.map +1 -1
- package/lib/cjs/editor-frontend.js +1 -0
- package/lib/cjs/editor-frontend.js.map +1 -1
- package/lib/esm/CreateElementTool.d.ts +25 -1
- package/lib/esm/CreateElementTool.d.ts.map +1 -1
- package/lib/esm/CreateElementTool.js +88 -2
- package/lib/esm/CreateElementTool.js.map +1 -1
- package/lib/esm/EditTool.d.ts +1 -0
- package/lib/esm/EditTool.d.ts.map +1 -1
- package/lib/esm/EditTool.js +9 -0
- package/lib/esm/EditTool.js.map +1 -1
- package/lib/esm/SketchTools.d.ts +14 -23
- package/lib/esm/SketchTools.d.ts.map +1 -1
- package/lib/esm/SketchTools.js +60 -105
- package/lib/esm/SketchTools.js.map +1 -1
- package/lib/esm/SolidPrimitiveTools.d.ts +155 -0
- package/lib/esm/SolidPrimitiveTools.d.ts.map +1 -0
- package/lib/esm/SolidPrimitiveTools.js +598 -0
- package/lib/esm/SolidPrimitiveTools.js.map +1 -0
- package/lib/esm/editor-frontend.d.ts +1 -0
- package/lib/esm/editor-frontend.d.ts.map +1 -1
- package/lib/esm/editor-frontend.js +1 -0
- package/lib/esm/editor-frontend.js.map +1 -1
- package/lib/public/locales/en/Editor.json +44 -0
- package/package.json +12 -12
package/lib/esm/SketchTools.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Id64String } from "@itwin/core-bentley";
|
|
2
2
|
import { CurvePrimitive, GeometryQuery, Matrix3d, Path, Point3d, Transform, Vector3d } from "@itwin/core-geometry";
|
|
3
|
-
import { ElementGeometryInfo, FlatBufferGeometryStream, GeometricElementProps, GeometryParams, GeometryStreamProps, JsonGeometryStream, PlacementProps } from "@itwin/core-common";
|
|
3
|
+
import { ElementGeometryBuilderParams, ElementGeometryInfo, FlatBufferGeometryStream, GeometricElementProps, GeometryParams, GeometryStreamProps, JsonGeometryStream, PlacementProps } from "@itwin/core-common";
|
|
4
4
|
import { BeButtonEvent, BeModifierKeys, DecorateContext, DynamicsContext, EventHandled, HitDetail, SnapDetail, ToolAssistanceInstruction } from "@itwin/core-frontend";
|
|
5
5
|
import { BasicManipulationCommandIpc } from "@itwin/editor-common";
|
|
6
|
-
import {
|
|
6
|
+
import { CreateElementWithDynamicsTool } from "./CreateElementTool";
|
|
7
7
|
import { DialogItem, DialogProperty, DialogPropertySyncItem } from "@itwin/appui-abstract";
|
|
8
8
|
/** @alpha Values for [[CreateOrContinueTool.createCurvePhase] to support join and closure. */
|
|
9
9
|
export declare enum CreateCurvePhase {
|
|
@@ -21,7 +21,8 @@ export declare enum CreateCurvePhase {
|
|
|
21
21
|
DefineOther = 2
|
|
22
22
|
}
|
|
23
23
|
/** @alpha Base class for creating open and closed paths. */
|
|
24
|
-
export declare abstract class CreateOrContinuePathTool extends
|
|
24
|
+
export declare abstract class CreateOrContinuePathTool extends CreateElementWithDynamicsTool {
|
|
25
|
+
protected _createCurvePhase: CreateCurvePhase;
|
|
25
26
|
protected readonly accepted: Point3d[];
|
|
26
27
|
protected current?: CurvePrimitive;
|
|
27
28
|
protected continuationData?: {
|
|
@@ -31,13 +32,10 @@ export declare abstract class CreateOrContinuePathTool extends CreateElementTool
|
|
|
31
32
|
};
|
|
32
33
|
protected isClosed: boolean;
|
|
33
34
|
protected isConstruction: boolean;
|
|
34
|
-
protected _graphicsProvider?: DynamicGraphicsProvider;
|
|
35
35
|
protected _snapGeomId?: Id64String;
|
|
36
36
|
protected _startedCmd?: string;
|
|
37
37
|
protected startCommand(): Promise<string>;
|
|
38
38
|
static callCommand<T extends keyof BasicManipulationCommandIpc>(method: T, ...args: Parameters<BasicManipulationCommandIpc[T]>): ReturnType<BasicManipulationCommandIpc[T]>;
|
|
39
|
-
protected get wantAccuSnap(): boolean;
|
|
40
|
-
protected get wantDynamics(): boolean;
|
|
41
39
|
protected get allowJoin(): boolean;
|
|
42
40
|
protected get allowClosure(): boolean;
|
|
43
41
|
protected get allowSimplify(): boolean;
|
|
@@ -49,8 +47,9 @@ export declare abstract class CreateOrContinuePathTool extends CreateElementTool
|
|
|
49
47
|
protected get showCurveConstructions(): boolean;
|
|
50
48
|
protected get showJoin(): boolean;
|
|
51
49
|
protected get showClosure(): boolean;
|
|
52
|
-
/** Sub-classes should override unless first point changes startPoint and last point changes endPoint. */
|
|
53
50
|
protected get createCurvePhase(): CreateCurvePhase;
|
|
51
|
+
/** Sub-classes should override unless they don't support join or closure. */
|
|
52
|
+
protected updateCurvePhase(): void;
|
|
54
53
|
/** Implemented by sub-classes to create the new curve or construction curve for placement dynamics.
|
|
55
54
|
* @param ev The current button event from a click or motion event.
|
|
56
55
|
* @param isDynamics true when called for dynamics and the point from ev should be included in the result curve.
|
|
@@ -59,7 +58,9 @@ export declare abstract class CreateOrContinuePathTool extends CreateElementTool
|
|
|
59
58
|
protected abstract createNewCurvePrimitive(ev: BeButtonEvent, isDynamics: boolean): CurvePrimitive | undefined;
|
|
60
59
|
protected getCurrentRotation(ev: BeButtonEvent): Matrix3d;
|
|
61
60
|
protected getUpVector(ev: BeButtonEvent): Vector3d;
|
|
62
|
-
protected updateCurveAndContinuationData(ev: BeButtonEvent, isDynamics: boolean
|
|
61
|
+
protected updateCurveAndContinuationData(ev: BeButtonEvent, isDynamics: boolean): Promise<void>;
|
|
62
|
+
protected updateElementData(ev: BeButtonEvent, isDynamics: boolean): Promise<void>;
|
|
63
|
+
protected updateDynamicData(ev: BeButtonEvent): Promise<boolean>;
|
|
63
64
|
protected get isContinueExistingPath(): boolean;
|
|
64
65
|
protected isValidForContinue(snap: SnapDetail): Promise<{
|
|
65
66
|
props: GeometricElementProps;
|
|
@@ -74,12 +75,9 @@ export declare abstract class CreateOrContinuePathTool extends CreateElementTool
|
|
|
74
75
|
} | undefined;
|
|
75
76
|
static isPathEndPoint(curve: CurvePrimitive, path: Path): boolean;
|
|
76
77
|
static isPathClosurePoint(curve: CurvePrimitive, path?: Path): boolean;
|
|
77
|
-
protected clearGraphics(): void;
|
|
78
|
-
protected createGraphics(ev: BeButtonEvent): Promise<void>;
|
|
79
78
|
protected addConstructionGraphics(curve: CurvePrimitive, showCurve: boolean, context: DynamicsContext): void;
|
|
80
79
|
protected showConstructionGraphics(_ev: BeButtonEvent, context: DynamicsContext): boolean;
|
|
81
80
|
onDynamicFrame(ev: BeButtonEvent, context: DynamicsContext): void;
|
|
82
|
-
onMouseMotion(ev: BeButtonEvent): Promise<void>;
|
|
83
81
|
protected showJoinIndicator(context: DecorateContext, pt: Point3d): void;
|
|
84
82
|
protected showClosureIndicator(context: DecorateContext, pt: Point3d): void;
|
|
85
83
|
testDecorationHit(id: Id64String): boolean;
|
|
@@ -94,15 +92,10 @@ export declare abstract class CreateOrContinuePathTool extends CreateElementTool
|
|
|
94
92
|
protected continueExistingPath(placement: PlacementProps): JsonGeometryStream | FlatBufferGeometryStream | undefined;
|
|
95
93
|
protected getGeometryProps(placement: PlacementProps): JsonGeometryStream | FlatBufferGeometryStream | undefined;
|
|
96
94
|
protected getElementProps(placement: PlacementProps): GeometricElementProps | undefined;
|
|
97
|
-
protected
|
|
95
|
+
protected doCreateElement(props: GeometricElementProps, data?: ElementGeometryBuilderParams): Promise<void>;
|
|
98
96
|
protected setupAccuDraw(): void;
|
|
99
|
-
protected setupAndPromptForNextAction(): void;
|
|
100
|
-
protected acceptPoint(ev: BeButtonEvent): Promise<boolean>;
|
|
101
|
-
protected cancelPoint(_ev: BeButtonEvent): Promise<boolean>;
|
|
102
|
-
onDataButtonDown(ev: BeButtonEvent): Promise<EventHandled>;
|
|
103
|
-
onResetButtonUp(ev: BeButtonEvent): Promise<EventHandled>;
|
|
104
97
|
onUndoPreviousStep(): Promise<boolean>;
|
|
105
|
-
|
|
98
|
+
onPostInstall(): Promise<void>;
|
|
106
99
|
}
|
|
107
100
|
/** @alpha Creates a line string or shape. Uses model and category from [[BriefcaseConnection.editorToolSettings]]. */
|
|
108
101
|
export declare class CreateLineStringTool extends CreateOrContinuePathTool {
|
|
@@ -111,6 +104,7 @@ export declare class CreateLineStringTool extends CreateOrContinuePathTool {
|
|
|
111
104
|
protected get wantPickableDynamics(): boolean;
|
|
112
105
|
protected provideToolAssistance(_mainInstrText?: string, _additionalInstr?: ToolAssistanceInstruction[]): void;
|
|
113
106
|
protected get wantClosure(): boolean;
|
|
107
|
+
protected updateCurvePhase(): void;
|
|
114
108
|
protected isComplete(ev: BeButtonEvent): boolean;
|
|
115
109
|
protected createNewCurvePrimitive(ev: BeButtonEvent, isDynamics: boolean): CurvePrimitive | undefined;
|
|
116
110
|
protected cancelPoint(ev: BeButtonEvent): Promise<boolean>;
|
|
@@ -155,7 +149,7 @@ export declare class CreateArcTool extends CreateOrContinuePathTool {
|
|
|
155
149
|
get sweep(): number;
|
|
156
150
|
set sweep(value: number);
|
|
157
151
|
protected isComplete(_ev: BeButtonEvent): boolean;
|
|
158
|
-
protected
|
|
152
|
+
protected updateCurvePhase(): void;
|
|
159
153
|
protected createConstructionCurve(ev: BeButtonEvent, isDynamics: boolean): CurvePrimitive | undefined;
|
|
160
154
|
protected createNewCurvePrimitive(ev: BeButtonEvent, isDynamics: boolean): CurvePrimitive | undefined;
|
|
161
155
|
private syncToolSettingsRadiusAndSweep;
|
|
@@ -183,7 +177,6 @@ export declare class CreateCircleTool extends CreateOrContinuePathTool {
|
|
|
183
177
|
static get minArgs(): number;
|
|
184
178
|
static get maxArgs(): number;
|
|
185
179
|
protected get showCurveConstructions(): boolean;
|
|
186
|
-
protected get createCurvePhase(): CreateCurvePhase;
|
|
187
180
|
protected provideToolAssistance(mainInstrText?: string, additionalInstr?: ToolAssistanceInstruction[]): void;
|
|
188
181
|
protected setupAccuDraw(): void;
|
|
189
182
|
private static methodMessage;
|
|
@@ -203,7 +196,6 @@ export declare class CreateCircleTool extends CreateOrContinuePathTool {
|
|
|
203
196
|
protected isComplete(_ev: BeButtonEvent): boolean;
|
|
204
197
|
protected createNewCurvePrimitive(ev: BeButtonEvent, isDynamics: boolean): CurvePrimitive | undefined;
|
|
205
198
|
protected cancelPoint(_ev: BeButtonEvent): Promise<boolean>;
|
|
206
|
-
private syncToolSettingsRadius;
|
|
207
199
|
protected getToolSettingPropertyLocked(property: DialogProperty<any>): DialogProperty<any> | undefined;
|
|
208
200
|
applyToolSettingPropertyChange(updatedValue: DialogPropertySyncItem): Promise<boolean>;
|
|
209
201
|
supplyToolSettingsProperties(): DialogItem[] | undefined;
|
|
@@ -222,7 +214,6 @@ export declare class CreateEllipseTool extends CreateOrContinuePathTool {
|
|
|
222
214
|
static toolId: string;
|
|
223
215
|
static iconSpec: string;
|
|
224
216
|
protected isComplete(_ev: BeButtonEvent): boolean;
|
|
225
|
-
protected get createCurvePhase(): CreateCurvePhase;
|
|
226
217
|
protected provideToolAssistance(mainInstrText?: string, additionalInstr?: ToolAssistanceInstruction[]): void;
|
|
227
218
|
protected setupAccuDraw(): void;
|
|
228
219
|
protected createNewCurvePrimitive(ev: BeButtonEvent, isDynamics: boolean): CurvePrimitive | undefined;
|
|
@@ -248,7 +239,6 @@ export declare class CreateRectangleTool extends CreateOrContinuePathTool {
|
|
|
248
239
|
get radius(): number;
|
|
249
240
|
set radius(value: number);
|
|
250
241
|
protected isComplete(_ev: BeButtonEvent): boolean;
|
|
251
|
-
protected get createCurvePhase(): CreateCurvePhase;
|
|
252
242
|
protected createNewCurvePrimitive(ev: BeButtonEvent, isDynamics: boolean): CurvePrimitive | undefined;
|
|
253
243
|
protected createNewPath(placement: PlacementProps): JsonGeometryStream | FlatBufferGeometryStream | undefined;
|
|
254
244
|
protected getToolSettingPropertyLocked(property: DialogProperty<any>): DialogProperty<any> | undefined;
|
|
@@ -296,6 +286,7 @@ export declare class CreateBCurveTool extends CreateOrContinuePathTool {
|
|
|
296
286
|
protected get wantClosure(): boolean;
|
|
297
287
|
protected get requiredPointCount(): number;
|
|
298
288
|
protected get createCurvePhase(): CreateCurvePhase;
|
|
289
|
+
protected updateCurvePhase(): void;
|
|
299
290
|
protected isComplete(ev: BeButtonEvent): boolean;
|
|
300
291
|
protected showConstructionGraphics(ev: BeButtonEvent, context: DynamicsContext): boolean;
|
|
301
292
|
protected createNewCurvePrimitive(ev: BeButtonEvent, isDynamics: boolean): CurvePrimitive | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SketchTools.d.ts","sourceRoot":"","sources":["../../src/SketchTools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SketchTools.d.ts","sourceRoot":"","sources":["../../src/SketchTools.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/SketchTools.js
CHANGED
|
@@ -7,7 +7,7 @@ import { Angle, AngleSweep, Arc3d, BSplineCurve3d, CurveFactory, FrameBuilder, G
|
|
|
7
7
|
import { Code, ColorDef, ElementGeometry, isPlacement3dProps, LinePixels } from "@itwin/core-common";
|
|
8
8
|
import { AccuDrawHintBuilder, AngleDescription, BeButton, BeModifierKeys, CoreTools, EventHandled, GraphicType, IModelApp, LengthDescription, NotifyMessageDetails, OutputMessagePriority, TentativeOrAccuSnap, ToolAssistance, ToolAssistanceImage, ToolAssistanceInputMethod } from "@itwin/core-frontend";
|
|
9
9
|
import { editorBuiltInCmdIds } from "@itwin/editor-common";
|
|
10
|
-
import {
|
|
10
|
+
import { CreateElementWithDynamicsTool } from "./CreateElementTool";
|
|
11
11
|
import { EditTools } from "./EditTool";
|
|
12
12
|
import { DialogProperty, PropertyDescriptionHelper, PropertyEditorParamTypes } from "@itwin/appui-abstract";
|
|
13
13
|
/** @alpha Values for [[CreateOrContinueTool.createCurvePhase] to support join and closure. */
|
|
@@ -27,9 +27,10 @@ export var CreateCurvePhase;
|
|
|
27
27
|
CreateCurvePhase[CreateCurvePhase["DefineOther"] = 2] = "DefineOther";
|
|
28
28
|
})(CreateCurvePhase || (CreateCurvePhase = {}));
|
|
29
29
|
/** @alpha Base class for creating open and closed paths. */
|
|
30
|
-
export class CreateOrContinuePathTool extends
|
|
30
|
+
export class CreateOrContinuePathTool extends CreateElementWithDynamicsTool {
|
|
31
31
|
constructor() {
|
|
32
32
|
super(...arguments);
|
|
33
|
+
this._createCurvePhase = CreateCurvePhase.DefineOther;
|
|
33
34
|
this.accepted = [];
|
|
34
35
|
this.isClosed = false;
|
|
35
36
|
this.isConstruction = false; // Sub-classes can set in createNewCurvePrimitive to bypass creating element graphics...
|
|
@@ -42,8 +43,6 @@ export class CreateOrContinuePathTool extends CreateElementTool {
|
|
|
42
43
|
static callCommand(method, ...args) {
|
|
43
44
|
return EditTools.callCommand(method, ...args);
|
|
44
45
|
}
|
|
45
|
-
get wantAccuSnap() { return true; }
|
|
46
|
-
get wantDynamics() { return true; }
|
|
47
46
|
get allowJoin() { return this.isControlDown; }
|
|
48
47
|
get allowClosure() { return this.isControlDown; }
|
|
49
48
|
get allowSimplify() { return true; }
|
|
@@ -55,10 +54,9 @@ export class CreateOrContinuePathTool extends CreateElementTool {
|
|
|
55
54
|
get showCurveConstructions() { return false; }
|
|
56
55
|
get showJoin() { return this.isContinueExistingPath && CreateCurvePhase.DefineStart === this.createCurvePhase; }
|
|
57
56
|
get showClosure() { return this.isClosed && CreateCurvePhase.DefineEnd === this.createCurvePhase; }
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
}
|
|
57
|
+
get createCurvePhase() { return this._createCurvePhase; }
|
|
58
|
+
/** Sub-classes should override unless they don't support join or closure. */
|
|
59
|
+
updateCurvePhase() { }
|
|
62
60
|
getCurrentRotation(ev) {
|
|
63
61
|
const matrix = (undefined !== ev.viewport ? AccuDrawHintBuilder.getCurrentRotation(ev.viewport, true, true) : undefined);
|
|
64
62
|
return (undefined !== matrix ? matrix : Matrix3d.createIdentity());
|
|
@@ -66,14 +64,27 @@ export class CreateOrContinuePathTool extends CreateElementTool {
|
|
|
66
64
|
getUpVector(ev) {
|
|
67
65
|
return this.getCurrentRotation(ev).getColumn(2);
|
|
68
66
|
}
|
|
69
|
-
async updateCurveAndContinuationData(ev, isDynamics
|
|
67
|
+
async updateCurveAndContinuationData(ev, isDynamics) {
|
|
70
68
|
this.isConstruction = false;
|
|
71
69
|
this.current = this.createNewCurvePrimitive(ev, isDynamics);
|
|
72
|
-
if (CreateCurvePhase.DefineStart ===
|
|
70
|
+
if (CreateCurvePhase.DefineStart === this.createCurvePhase)
|
|
73
71
|
await this.isValidForJoin(); // Updates this.continuationData...
|
|
74
|
-
else if (CreateCurvePhase.DefineEnd ===
|
|
72
|
+
else if (CreateCurvePhase.DefineEnd === this.createCurvePhase)
|
|
75
73
|
await this.isValidForClosure(); // Updates this.isClosed...
|
|
76
74
|
}
|
|
75
|
+
async updateElementData(ev, isDynamics) {
|
|
76
|
+
if (!isDynamics)
|
|
77
|
+
this.accepted.push(ev.point.clone());
|
|
78
|
+
await this.updateCurveAndContinuationData(ev, isDynamics);
|
|
79
|
+
if (!isDynamics)
|
|
80
|
+
this.updateCurvePhase();
|
|
81
|
+
}
|
|
82
|
+
async updateDynamicData(ev) {
|
|
83
|
+
// Need to update continuation data for first data point before dynamics has started...
|
|
84
|
+
await this.updateCurveAndContinuationData(ev, true);
|
|
85
|
+
// Don't need to create graphic if dynamics aren't yet active or showing construction geometry...
|
|
86
|
+
return (IModelApp.viewManager.inDynamicsMode && !this.isConstruction);
|
|
87
|
+
}
|
|
77
88
|
get isContinueExistingPath() { return undefined !== this.continuationData; }
|
|
78
89
|
async isValidForContinue(snap) {
|
|
79
90
|
if (!snap.isElementHit)
|
|
@@ -205,29 +216,6 @@ export class CreateOrContinuePathTool extends CreateElementTool {
|
|
|
205
216
|
}
|
|
206
217
|
return true;
|
|
207
218
|
}
|
|
208
|
-
clearGraphics() {
|
|
209
|
-
if (undefined === this._graphicsProvider)
|
|
210
|
-
return;
|
|
211
|
-
this._graphicsProvider.cleanupGraphic();
|
|
212
|
-
this._graphicsProvider = undefined;
|
|
213
|
-
}
|
|
214
|
-
async createGraphics(ev) {
|
|
215
|
-
await this.updateCurveAndContinuationData(ev, true, this.createCurvePhase);
|
|
216
|
-
if (!IModelApp.viewManager.inDynamicsMode || this.isConstruction)
|
|
217
|
-
return; // Don't need to create graphic if dynamics aren't yet active...
|
|
218
|
-
const placement = this.getPlacementProps();
|
|
219
|
-
if (undefined === placement)
|
|
220
|
-
return;
|
|
221
|
-
const geometry = this.getGeometryProps(placement);
|
|
222
|
-
if (undefined === geometry)
|
|
223
|
-
return;
|
|
224
|
-
if (undefined === this._graphicsProvider)
|
|
225
|
-
this._graphicsProvider = new DynamicGraphicsProvider(this.iModel, this.toolId);
|
|
226
|
-
// Set chord tolerance for non-linear curve primitives...
|
|
227
|
-
if (ev.viewport)
|
|
228
|
-
this._graphicsProvider.chordTolerance = computeChordToleranceFromPoint(ev.viewport, ev.point);
|
|
229
|
-
await this._graphicsProvider.createGraphic(this.targetCategory, placement, geometry);
|
|
230
|
-
}
|
|
231
219
|
addConstructionGraphics(curve, showCurve, context) {
|
|
232
220
|
if (!showCurve) {
|
|
233
221
|
switch (curve.curvePrimitiveType) {
|
|
@@ -293,11 +281,7 @@ export class CreateOrContinuePathTool extends CreateElementTool {
|
|
|
293
281
|
onDynamicFrame(ev, context) {
|
|
294
282
|
if (this.showConstructionGraphics(ev, context))
|
|
295
283
|
return; // Don't display element graphics...
|
|
296
|
-
|
|
297
|
-
this._graphicsProvider.addGraphic(context);
|
|
298
|
-
}
|
|
299
|
-
async onMouseMotion(ev) {
|
|
300
|
-
return this.createGraphics(ev);
|
|
284
|
+
super.onDynamicFrame(ev, context);
|
|
301
285
|
}
|
|
302
286
|
showJoinIndicator(context, pt) {
|
|
303
287
|
const lengthX = Math.floor(context.viewport.pixelsFromInches(0.08)) + 0.5;
|
|
@@ -508,30 +492,13 @@ export class CreateOrContinuePathTool extends CreateElementTool {
|
|
|
508
492
|
return { classFullName: "Generic:PhysicalObject", model, category, code: Code.createEmpty(), placement };
|
|
509
493
|
return { classFullName: "BisCore:DrawingGraphic", model, category, code: Code.createEmpty(), placement };
|
|
510
494
|
}
|
|
511
|
-
async
|
|
512
|
-
const placement = this.getPlacementProps();
|
|
513
|
-
if (undefined === placement)
|
|
514
|
-
return;
|
|
515
|
-
const geometry = this.getGeometryProps(placement);
|
|
516
|
-
if (undefined === geometry)
|
|
517
|
-
return;
|
|
518
|
-
const elemProps = this.getElementProps(placement);
|
|
519
|
-
if (undefined === elemProps)
|
|
520
|
-
return;
|
|
521
|
-
let data;
|
|
522
|
-
if ("flatbuffer" === geometry.format) {
|
|
523
|
-
data = { entryArray: geometry.data };
|
|
524
|
-
delete elemProps.geom; // Leave unchanged until replaced by flatbuffer geometry...
|
|
525
|
-
}
|
|
526
|
-
else {
|
|
527
|
-
elemProps.geom = geometry.data;
|
|
528
|
-
}
|
|
495
|
+
async doCreateElement(props, data) {
|
|
529
496
|
try {
|
|
530
497
|
this._startedCmd = await this.startCommand();
|
|
531
|
-
if (undefined ===
|
|
532
|
-
await CreateOrContinuePathTool.callCommand("insertGeometricElement",
|
|
498
|
+
if (undefined === props.id)
|
|
499
|
+
await CreateOrContinuePathTool.callCommand("insertGeometricElement", props, data);
|
|
533
500
|
else
|
|
534
|
-
await CreateOrContinuePathTool.callCommand("updateGeometricElement",
|
|
501
|
+
await CreateOrContinuePathTool.callCommand("updateGeometricElement", props, data);
|
|
535
502
|
await this.saveChanges();
|
|
536
503
|
}
|
|
537
504
|
catch (err) {
|
|
@@ -551,40 +518,22 @@ export class CreateOrContinuePathTool extends CreateElementTool {
|
|
|
551
518
|
hints.setOrigin(this.accepted[nPts - 1]);
|
|
552
519
|
hints.sendHints();
|
|
553
520
|
}
|
|
554
|
-
setupAndPromptForNextAction() {
|
|
555
|
-
this.setupAccuDraw();
|
|
556
|
-
super.setupAndPromptForNextAction();
|
|
557
|
-
}
|
|
558
|
-
async acceptPoint(ev) {
|
|
559
|
-
const phase = this.createCurvePhase;
|
|
560
|
-
this.accepted.push(ev.point.clone());
|
|
561
|
-
await this.updateCurveAndContinuationData(ev, false, phase);
|
|
562
|
-
return true;
|
|
563
|
-
}
|
|
564
|
-
async cancelPoint(_ev) { return true; }
|
|
565
|
-
async onDataButtonDown(ev) {
|
|
566
|
-
if (!await this.acceptPoint(ev))
|
|
567
|
-
return EventHandled.Yes;
|
|
568
|
-
return super.onDataButtonDown(ev);
|
|
569
|
-
}
|
|
570
|
-
async onResetButtonUp(ev) {
|
|
571
|
-
if (!await this.cancelPoint(ev))
|
|
572
|
-
return EventHandled.Yes;
|
|
573
|
-
return super.onResetButtonUp(ev);
|
|
574
|
-
}
|
|
575
521
|
async onUndoPreviousStep() {
|
|
576
522
|
if (0 === this.accepted.length)
|
|
577
523
|
return false;
|
|
578
524
|
this.accepted.pop();
|
|
579
|
-
if (0 === this.accepted.length)
|
|
525
|
+
if (0 === this.accepted.length) {
|
|
580
526
|
await this.onReinitialize();
|
|
581
|
-
|
|
527
|
+
}
|
|
528
|
+
else {
|
|
529
|
+
this.updateCurvePhase();
|
|
582
530
|
this.setupAndPromptForNextAction();
|
|
531
|
+
}
|
|
583
532
|
return true;
|
|
584
533
|
}
|
|
585
|
-
async
|
|
586
|
-
|
|
587
|
-
|
|
534
|
+
async onPostInstall() {
|
|
535
|
+
await super.onPostInstall();
|
|
536
|
+
this.updateCurvePhase();
|
|
588
537
|
}
|
|
589
538
|
}
|
|
590
539
|
/** @alpha Creates a line string or shape. Uses model and category from [[BriefcaseConnection.editorToolSettings]]. */
|
|
@@ -613,6 +562,10 @@ export class CreateLineStringTool extends CreateOrContinuePathTool {
|
|
|
613
562
|
// A linestring can support physical closure when creating a new path...
|
|
614
563
|
return this.allowClosure;
|
|
615
564
|
}
|
|
565
|
+
updateCurvePhase() {
|
|
566
|
+
// The first point changes startPoint and last point changes endPoint.
|
|
567
|
+
this._createCurvePhase = (0 === this.accepted.length ? CreateCurvePhase.DefineStart : CreateCurvePhase.DefineEnd);
|
|
568
|
+
}
|
|
616
569
|
isComplete(ev) {
|
|
617
570
|
// Accept on reset with at least 2 points...
|
|
618
571
|
if (BeButton.Reset === ev.button)
|
|
@@ -633,7 +586,8 @@ export class CreateLineStringTool extends CreateOrContinuePathTool {
|
|
|
633
586
|
async cancelPoint(ev) {
|
|
634
587
|
// NOTE: Starting another tool will not create element...require reset or closure...
|
|
635
588
|
if (this.isComplete(ev)) {
|
|
636
|
-
|
|
589
|
+
this._createCurvePhase = CreateCurvePhase.DefineEnd;
|
|
590
|
+
await this.updateCurveAndContinuationData(ev, false);
|
|
637
591
|
await this.createElement();
|
|
638
592
|
}
|
|
639
593
|
return true;
|
|
@@ -758,19 +712,22 @@ export class CreateArcTool extends CreateOrContinuePathTool {
|
|
|
758
712
|
isComplete(_ev) {
|
|
759
713
|
return (3 === this.accepted.length);
|
|
760
714
|
}
|
|
761
|
-
|
|
715
|
+
updateCurvePhase() {
|
|
762
716
|
switch (this.accepted.length) {
|
|
763
717
|
case 0:
|
|
764
|
-
|
|
718
|
+
this._createCurvePhase = ArcMethod.CenterStart === this.method ? CreateCurvePhase.DefineOther : CreateCurvePhase.DefineStart;
|
|
719
|
+
break;
|
|
765
720
|
case 1:
|
|
766
721
|
if (ArcMethod.CenterStart === this.method)
|
|
767
|
-
|
|
722
|
+
this._createCurvePhase = CreateCurvePhase.DefineStart;
|
|
768
723
|
else if (ArcMethod.StartEndMid === this.method)
|
|
769
|
-
|
|
724
|
+
this._createCurvePhase = CreateCurvePhase.DefineEnd;
|
|
770
725
|
else
|
|
771
|
-
|
|
726
|
+
this._createCurvePhase = CreateCurvePhase.DefineOther;
|
|
727
|
+
break;
|
|
772
728
|
default:
|
|
773
|
-
|
|
729
|
+
this._createCurvePhase = ArcMethod.StartEndMid === this.method ? CreateCurvePhase.DefineOther : CreateCurvePhase.DefineEnd;
|
|
730
|
+
break;
|
|
774
731
|
}
|
|
775
732
|
}
|
|
776
733
|
createConstructionCurve(ev, isDynamics) {
|
|
@@ -1062,7 +1019,6 @@ export class CreateCircleTool extends CreateOrContinuePathTool {
|
|
|
1062
1019
|
static get minArgs() { return 0; }
|
|
1063
1020
|
static get maxArgs() { return 2; } // method, radius - zero value unlocks associated "use" toggle...
|
|
1064
1021
|
get showCurveConstructions() { return !(CircleMethod.Center === this.method && this.useRadius); }
|
|
1065
|
-
get createCurvePhase() { return CreateCurvePhase.DefineOther; } // No join or closure checks...
|
|
1066
1022
|
provideToolAssistance(mainInstrText, additionalInstr) {
|
|
1067
1023
|
const nPts = this.accepted.length;
|
|
1068
1024
|
switch (this.method) {
|
|
@@ -1140,7 +1096,7 @@ export class CreateCircleTool extends CreateOrContinuePathTool {
|
|
|
1140
1096
|
}
|
|
1141
1097
|
else {
|
|
1142
1098
|
this.radius = radius;
|
|
1143
|
-
this.
|
|
1099
|
+
this.syncToolSettingPropertyValue(this.radiusProperty);
|
|
1144
1100
|
}
|
|
1145
1101
|
vector0.scaleToLength(radius, vector0);
|
|
1146
1102
|
vector90.scaleToLength(radius, vector90);
|
|
@@ -1154,11 +1110,6 @@ export class CreateCircleTool extends CreateOrContinuePathTool {
|
|
|
1154
1110
|
}
|
|
1155
1111
|
return true;
|
|
1156
1112
|
}
|
|
1157
|
-
syncToolSettingsRadius() {
|
|
1158
|
-
if (this.useRadius)
|
|
1159
|
-
return;
|
|
1160
|
-
this.syncToolSettingsProperties([this.radiusProperty.syncItem]);
|
|
1161
|
-
}
|
|
1162
1113
|
getToolSettingPropertyLocked(property) {
|
|
1163
1114
|
return (property === this.useRadiusProperty ? this.radiusProperty : undefined);
|
|
1164
1115
|
}
|
|
@@ -1269,7 +1220,6 @@ export class CreateEllipseTool extends CreateOrContinuePathTool {
|
|
|
1269
1220
|
isComplete(_ev) {
|
|
1270
1221
|
return (3 === this.accepted.length);
|
|
1271
1222
|
}
|
|
1272
|
-
get createCurvePhase() { return CreateCurvePhase.DefineOther; } // No join or closure checks...
|
|
1273
1223
|
provideToolAssistance(mainInstrText, additionalInstr) {
|
|
1274
1224
|
const nPts = this.accepted.length;
|
|
1275
1225
|
switch (nPts) {
|
|
@@ -1370,7 +1320,6 @@ export class CreateRectangleTool extends CreateOrContinuePathTool {
|
|
|
1370
1320
|
isComplete(_ev) {
|
|
1371
1321
|
return (2 === this.accepted.length);
|
|
1372
1322
|
}
|
|
1373
|
-
get createCurvePhase() { return CreateCurvePhase.DefineOther; } // No join or closure checks...
|
|
1374
1323
|
createNewCurvePrimitive(ev, isDynamics) {
|
|
1375
1324
|
const numRequired = (isDynamics ? 1 : 2);
|
|
1376
1325
|
if (this.accepted.length < numRequired)
|
|
@@ -1537,6 +1486,10 @@ export class CreateBCurveTool extends CreateOrContinuePathTool {
|
|
|
1537
1486
|
return CreateCurvePhase.DefineOther;
|
|
1538
1487
|
return super.createCurvePhase;
|
|
1539
1488
|
}
|
|
1489
|
+
updateCurvePhase() {
|
|
1490
|
+
// The first point changes startPoint and last point changes endPoint.
|
|
1491
|
+
this._createCurvePhase = (0 === this.accepted.length ? CreateCurvePhase.DefineStart : CreateCurvePhase.DefineEnd);
|
|
1492
|
+
}
|
|
1540
1493
|
isComplete(ev) {
|
|
1541
1494
|
// Accept on reset with sufficient points...
|
|
1542
1495
|
if (BeButton.Reset === ev.button)
|
|
@@ -1625,7 +1578,7 @@ export class CreateBCurveTool extends CreateOrContinuePathTool {
|
|
|
1625
1578
|
this._isPhysicallyClosedOrComplete = true;
|
|
1626
1579
|
break;
|
|
1627
1580
|
}
|
|
1628
|
-
await this.updateCurveAndContinuationData(ev, false
|
|
1581
|
+
await this.updateCurveAndContinuationData(ev, false);
|
|
1629
1582
|
return true;
|
|
1630
1583
|
}
|
|
1631
1584
|
async cancelPoint(ev) {
|
|
@@ -1635,7 +1588,8 @@ export class CreateBCurveTool extends CreateOrContinuePathTool {
|
|
|
1635
1588
|
const fitCurve = this.current;
|
|
1636
1589
|
switch (this._tangentPhase) {
|
|
1637
1590
|
case CreateCurvePhase.DefineOther:
|
|
1638
|
-
|
|
1591
|
+
this._createCurvePhase = CreateCurvePhase.DefineEnd;
|
|
1592
|
+
await this.updateCurveAndContinuationData(ev, false);
|
|
1639
1593
|
this._tangentPhase = (undefined === fitCurve.options.startTangent ? CreateCurvePhase.DefineStart : CreateCurvePhase.DefineEnd);
|
|
1640
1594
|
IModelApp.toolAdmin.updateDynamics();
|
|
1641
1595
|
this.setupAndPromptForNextAction();
|
|
@@ -1652,7 +1606,8 @@ export class CreateBCurveTool extends CreateOrContinuePathTool {
|
|
|
1652
1606
|
return true;
|
|
1653
1607
|
}
|
|
1654
1608
|
}
|
|
1655
|
-
|
|
1609
|
+
this._createCurvePhase = CreateCurvePhase.DefineEnd;
|
|
1610
|
+
await this.updateCurveAndContinuationData(ev, false);
|
|
1656
1611
|
await this.createElement();
|
|
1657
1612
|
}
|
|
1658
1613
|
return true;
|