@itwin/core-frontend 4.9.0-dev.24 → 4.9.0-dev.26

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.
@@ -1 +1 @@
1
- {"version":3,"file":"AccuDrawTool.d.ts","sourceRoot":"","sources":["../../../src/tools/AccuDrawTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AccuDrawTool.d.ts","sourceRoot":"","sources":["../../../src/tools/AccuDrawTool.ts"],"names":[],"mappings":"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"}
@@ -6,10 +6,11 @@
6
6
  * @module Tools
7
7
  */
8
8
  import { BentleyStatus } from "@itwin/core-bentley";
9
- import { Geometry, Matrix3d, Point3d, Transform, Vector3d } from "@itwin/core-geometry";
10
- import { AccuDraw, AccuDrawFlags, CompassMode, ContextMode, ItemField, KeyinStatus, LockedStates, RotationMode, ThreeAxes } from "../AccuDraw";
9
+ import { AxisOrder, Geometry, Matrix3d, Point3d, Transform, Vector3d } from "@itwin/core-geometry";
10
+ import { AccuDraw, AccuDrawFlags, AccuDrawHintBuilder, CompassMode, ContextMode, ItemField, KeyinStatus, LockedStates, RotationMode, ThreeAxes } from "../AccuDraw";
11
11
  import { TentativeOrAccuSnap } from "../AccuSnap";
12
12
  import { ACSDisplayOptions } from "../AuxCoordSys";
13
+ import { SnapHeat } from "../HitDetail";
13
14
  import { IModelApp } from "../IModelApp";
14
15
  import { BeButtonEvent, CoordinateLockOverrides, CoreTools, EventHandled, InputCollector, Tool } from "./Tool";
15
16
  // cSpell:ignore dont unlockedz
@@ -750,6 +751,9 @@ export class AccuDrawShortcuts {
750
751
  static async rotateToElement() {
751
752
  return IModelApp.tools.run("AccuDraw.RotateElement");
752
753
  }
754
+ static async rotatePerpendicular() {
755
+ return IModelApp.tools.run("AccuDraw.RotatePerpendicular");
756
+ }
753
757
  static async defineACSByElement() {
754
758
  return IModelApp.tools.run("AccuDraw.DefineACSByElement");
755
759
  }
@@ -898,6 +902,8 @@ export class AccuDrawShortcuts {
898
902
  return AccuDrawShortcuts.rotateAxes(true);
899
903
  case "e":
900
904
  return AccuDrawShortcuts.rotateToElement();
905
+ case "p":
906
+ return AccuDrawShortcuts.rotatePerpendicular();
901
907
  case "r":
902
908
  return AccuDrawShortcuts.defineACSByPoints();
903
909
  }
@@ -1035,38 +1041,65 @@ AccuDrawRotateViewTool.toolId = "AccuDraw.RotateView";
1035
1041
  /** @internal */
1036
1042
  class AccuDrawShortcutsTool extends InputCollector {
1037
1043
  constructor() {
1038
- super();
1039
- this._cancel = true;
1044
+ super(...arguments);
1045
+ this._complete = false;
1046
+ }
1047
+ get allowShortcut() { return this.wantActivateOnStart ? IModelApp.accuDraw.isEnabled : true; }
1048
+ get wantActivateOnStart() { return false; } // Whether to automatically enable AccuDraw before the 1st data button...
1049
+ get wantClearSnapOnStart() { return false; } // Whether to preserve active Tentative/AccuSnap on install...
1050
+ get wantManipulationImmediate() { return false; } // Whether additional input is required to process on install...
1051
+ get wantExitOnDataButtonUp() { return false; } // Whether to exit on button up instead of down (see rotate perpendicular)...
1052
+ async onInstall() {
1053
+ if (!this.allowShortcut)
1054
+ return false;
1055
+ return super.onInstall();
1040
1056
  }
1041
1057
  async onPostInstall() {
1042
1058
  await super.onPostInstall();
1043
- this.initLocateElements(false, true, undefined, CoordinateLockOverrides.None);
1044
- this.doManipulationStart();
1045
- } // NOTE: InputCollector inherits suspended primitive's state, set everything...
1046
- async onCleanup() { this.doManipulationStop(this._cancel); }
1059
+ if (this.wantActivateOnStart)
1060
+ IModelApp.accuDraw.activate();
1061
+ this.onManipulationStart();
1062
+ if (this.wantManipulationImmediate && this.doManipulation(undefined, false)) {
1063
+ this._complete = true;
1064
+ return this.exitTool();
1065
+ }
1066
+ // NOTE: InputCollector inherits suspended primitive's state, set everything...
1067
+ if (this.wantClearSnapOnStart) {
1068
+ this.initLocateElements(false, true, undefined, CoordinateLockOverrides.None); // This clears the active Tentative/AccuSnap, some shortcuts have special behavior when invoked with an active snap...
1069
+ }
1070
+ else {
1071
+ IModelApp.locateManager.initLocateOptions();
1072
+ this.changeLocateState(false, true, undefined, CoordinateLockOverrides.None);
1073
+ }
1074
+ this.doManipulation(undefined, true);
1075
+ ;
1076
+ }
1077
+ async onCleanup() {
1078
+ if (this._complete)
1079
+ IModelApp.accuDraw.savedStateInputCollector.ignoreFlags = this.onManipulationComplete();
1080
+ }
1081
+ async exitTool() {
1082
+ await super.exitTool();
1083
+ AccuDrawShortcuts.requestInputFocus(); // re-grab focus when auto-focus tool setting set...
1084
+ }
1047
1085
  async onDataButtonDown(ev) {
1048
1086
  if (this.doManipulation(ev, false)) {
1049
- this._cancel = false;
1050
- await this.exitTool();
1087
+ this._complete = true;
1088
+ if (!this.wantExitOnDataButtonUp)
1089
+ await this.exitTool();
1051
1090
  }
1052
1091
  return EventHandled.No;
1053
1092
  }
1054
- async onMouseMotion(ev) { this.doManipulation(ev, true); }
1055
- async exitTool() {
1056
- await super.exitTool();
1057
- AccuDrawShortcuts.requestInputFocus();
1058
- } // re-grab focus when auto-focus tool setting set...
1059
- activateAccuDrawOnStart() { return true; }
1060
- doManipulationStart() {
1061
- if (this.activateAccuDrawOnStart())
1062
- IModelApp.accuDraw.activate();
1063
- this.doManipulation(undefined, true);
1093
+ async onDataButtonUp(_ev) {
1094
+ if (this._complete && this.wantExitOnDataButtonUp)
1095
+ await this.exitTool();
1096
+ return EventHandled.No;
1064
1097
  }
1065
- doManipulationStop(cancel) {
1066
- if (!cancel)
1067
- IModelApp.accuDraw.savedStateInputCollector.ignoreFlags = this.onManipulationComplete();
1098
+ async onMouseMotion(ev) {
1099
+ this.doManipulation(ev, true);
1068
1100
  }
1069
- onManipulationComplete() { return 0; }
1101
+ onManipulationStart() { }
1102
+ onManipulationComplete() { return AccuDrawFlags.SetRMatrix; }
1070
1103
  }
1071
1104
  /** @internal */
1072
1105
  export class AccuDrawRotateAxesTool extends AccuDrawShortcutsTool {
@@ -1074,45 +1107,33 @@ export class AccuDrawRotateAxesTool extends AccuDrawShortcutsTool {
1074
1107
  constructor(aboutCurrentZ = true) {
1075
1108
  super();
1076
1109
  this.aboutCurrentZ = aboutCurrentZ;
1077
- this._immediateMode = false;
1078
1110
  }
1079
- async onInstall() {
1111
+ get allowShortcut() { return IModelApp.accuDraw.isActive; } // Require compass to already be active for this shortcut...
1112
+ get wantActivateOnStart() { return true; } // State is demoted to inactive when a tool install, still need this...
1113
+ get wantManipulationImmediate() {
1114
+ if (TentativeOrAccuSnap.isHot)
1115
+ return true;
1080
1116
  const accudraw = IModelApp.accuDraw;
1081
- if (!accudraw.isActive)
1082
- return false; // Require compass to already be active for this shortcut...
1083
- if (this.aboutCurrentZ)
1084
- accudraw.changeBaseRotationMode(RotationMode.Context); // Establish current orientation as base; base Z is used when defining compass rotation by x axis...
1085
- if (accudraw.clearTentative() || IModelApp.accuSnap.isHot ||
1086
- (CompassMode.Polar === accudraw.compassMode && accudraw.getFieldLock(ItemField.ANGLE_Item)) ||
1087
- (CompassMode.Polar !== accudraw.compassMode && accudraw.getFieldLock(ItemField.X_Item) && accudraw.getFieldLock(ItemField.Y_Item))) {
1088
- if (AccuDrawShortcuts.rotateAxesByPoint(true, this.aboutCurrentZ)) {
1089
- AccuDrawShortcuts.itemFieldUnlockAll();
1090
- accudraw.refreshDecorationsAndDynamics();
1091
- this._immediateMode = true;
1092
- }
1093
- }
1094
- return true;
1117
+ if (CompassMode.Polar === accudraw.compassMode)
1118
+ return accudraw.getFieldLock(ItemField.ANGLE_Item);
1119
+ return accudraw.getFieldLock(ItemField.X_Item) && accudraw.getFieldLock(ItemField.Y_Item);
1095
1120
  }
1096
- async onPostInstall() {
1097
- if (this._immediateMode) {
1098
- await this.exitTool();
1099
- return;
1100
- }
1101
- return super.onPostInstall();
1102
- }
1103
- onManipulationComplete() { return AccuDrawFlags.SetRMatrix; }
1104
- doManipulationStart() {
1105
- super.doManipulationStart();
1121
+ onManipulationStart() {
1122
+ if (this.aboutCurrentZ)
1123
+ IModelApp.accuDraw.changeBaseRotationMode(RotationMode.Context); // Establish current orientation as base for when defining compass rotation by x axis...
1106
1124
  CoreTools.outputPromptByKey("AccuDraw.RotateAxes.Prompts.FirstPoint");
1107
1125
  }
1108
1126
  doManipulation(ev, isMotion) {
1109
1127
  const vp = ev ? ev.viewport : IModelApp.accuDraw.currentView;
1110
1128
  if (!vp)
1111
- return true;
1112
- AccuDrawShortcuts.rotateAxesByPoint(TentativeOrAccuSnap.isHot, this.aboutCurrentZ);
1129
+ return false;
1130
+ if (!AccuDrawShortcuts.rotateAxesByPoint(TentativeOrAccuSnap.isHot, this.aboutCurrentZ))
1131
+ return false;
1113
1132
  vp.invalidateDecorations();
1114
- if (!isMotion)
1133
+ if (!isMotion) {
1115
1134
  AccuDrawShortcuts.itemFieldUnlockAll();
1135
+ IModelApp.tentativePoint.clear(true);
1136
+ }
1116
1137
  return true;
1117
1138
  }
1118
1139
  async parseAndRun(...args) {
@@ -1128,56 +1149,101 @@ AccuDrawRotateAxesTool.toolId = "AccuDraw.RotateAxes";
1128
1149
  export class AccuDrawRotateElementTool extends AccuDrawShortcutsTool {
1129
1150
  constructor() {
1130
1151
  super(...arguments);
1131
- this.moveOrigin = !IModelApp.accuDraw.isActive; // By default use current origin if AccuDraw is already enabled...
1152
+ this._moveOrigin = !IModelApp.accuDraw.isActive || IModelApp.tentativePoint.isActive; // Preserve current origin if AccuDraw already active and not tentative snap...
1153
+ }
1154
+ get wantActivateOnStart() { return true; }
1155
+ get wantManipulationImmediate() { return IModelApp.tentativePoint.isSnapped; }
1156
+ onManipulationStart() {
1157
+ IModelApp.accuDraw.setContext(AccuDrawFlags.FixedOrigin); // Don't move compass when updateOrientation returns false...
1158
+ CoreTools.outputPromptByKey("AccuDraw.RotateElement.Prompts.FirstPoint");
1132
1159
  }
1133
- async onInstall() { return IModelApp.accuDraw.isEnabled; } // Require compass to be enabled for this session...
1134
1160
  onManipulationComplete() {
1135
1161
  let ignoreFlags = AccuDrawFlags.SetRMatrix | AccuDrawFlags.Disable; // If AccuDraw wasn't active when the shortcut started, let it remain active for suspended tool when shortcut completes...
1136
- if (this.moveOrigin)
1162
+ if (this._moveOrigin)
1137
1163
  ignoreFlags |= AccuDrawFlags.SetOrigin;
1138
1164
  return ignoreFlags;
1139
1165
  }
1140
- doManipulationStart() {
1141
- super.doManipulationStart();
1142
- CoreTools.outputPromptByKey("AccuDraw.RotateElement.Prompts.FirstPoint");
1143
- }
1144
- updateOrientation(snap, vp) {
1166
+ updateOrientation(snap, viewport, _isMotion) {
1145
1167
  const accudraw = IModelApp.accuDraw;
1146
- const rMatrix = AccuDraw.getSnapRotation(snap, vp);
1168
+ const rMatrix = AccuDraw.getSnapRotation(snap, viewport);
1147
1169
  if (undefined === rMatrix)
1148
1170
  return false;
1149
- const origin = this.moveOrigin ? snap.snapPoint : accudraw.origin;
1150
- accudraw.setContext(AccuDrawFlags.AlwaysSetOrigin | AccuDrawFlags.SetRMatrix, origin, rMatrix);
1171
+ const point = this._moveOrigin ? snap.snapPoint : accudraw.origin;
1172
+ accudraw.setContext(AccuDrawFlags.SetRMatrix | AccuDrawFlags.AlwaysSetOrigin, point, rMatrix);
1151
1173
  return true;
1152
1174
  }
1153
1175
  doManipulation(ev, isMotion) {
1154
- const vp = ev ? ev.viewport : IModelApp.accuDraw.currentView;
1155
- if (!vp)
1156
- return true;
1157
- const snapDetail = TentativeOrAccuSnap.getCurrentSnap(false);
1158
- if (undefined === snapDetail || !this.updateOrientation(snapDetail, vp))
1159
- return true;
1176
+ const viewport = ev ? ev.viewport : IModelApp.accuDraw.currentView;
1177
+ if (!viewport)
1178
+ return false;
1179
+ const snap = TentativeOrAccuSnap.getCurrentSnap(false);
1180
+ if (undefined === snap || !this.updateOrientation(snap, viewport, isMotion))
1181
+ return false;
1160
1182
  if (undefined === ev)
1161
- AccuDrawShortcuts.processPendingHints();
1183
+ AccuDrawShortcuts.processPendingHints(); // Would normally be processed after button down, necessary when called from post install...
1162
1184
  if (!isMotion)
1163
- IModelApp.accuDraw.changeBaseRotationMode(RotationMode.Context); // Hold temporary rotation for tool duration when not updating ACS...
1185
+ IModelApp.accuDraw.changeBaseRotationMode(RotationMode.Context); // Hold temporary rotation for tool duration...
1164
1186
  return true;
1165
1187
  }
1166
1188
  }
1167
1189
  AccuDrawRotateElementTool.toolId = "AccuDraw.RotateElement";
1168
1190
  /** @internal */
1191
+ export class AccuDrawRotatePerpendicularTool extends AccuDrawRotateElementTool {
1192
+ get wantExitOnDataButtonUp() { return true; } // Complete on button up since button down clears tentative...
1193
+ onManipulationComplete() {
1194
+ if (undefined !== this._location) {
1195
+ // Use tentative to hold adjusted snap location for suspended tool...
1196
+ IModelApp.tentativePoint.setPoint(this._location.point);
1197
+ IModelApp.tentativePoint.viewport = this._location.viewport;
1198
+ IModelApp.tentativePoint.showTentative();
1199
+ }
1200
+ return AccuDrawFlags.SetRMatrix | AccuDrawFlags.Disable;
1201
+ }
1202
+ updateOrientation(snap, viewport, isMotion) {
1203
+ const curve = snap.getCurvePrimitive();
1204
+ if (undefined === curve)
1205
+ return false;
1206
+ const accudraw = IModelApp.accuDraw;
1207
+ const rMatrix = AccuDraw.getSnapRotation(snap, viewport);
1208
+ if (undefined === rMatrix)
1209
+ return false;
1210
+ const zVec = rMatrix.getRow(2); // This is a row matrix...
1211
+ const spacePoint = AccuDrawHintBuilder.projectPointToPlaneInView(accudraw.origin, snap.getPoint(), zVec, viewport, true);
1212
+ if (undefined === spacePoint)
1213
+ return false;
1214
+ const detail = curve.closestPoint(spacePoint, true);
1215
+ if (undefined === detail?.curve)
1216
+ return false;
1217
+ const point = AccuDrawHintBuilder.projectPointToPlaneInView(detail.point, accudraw.origin, zVec, viewport, true);
1218
+ if (undefined === point)
1219
+ return false;
1220
+ const xVec = new Vector3d();
1221
+ if (normalizedDifference(point, accudraw.origin, xVec) < Geometry.smallAngleRadians)
1222
+ return false;
1223
+ ; // Closest point and compass origin coincide...
1224
+ const yVec = xVec.unitCrossProduct(zVec);
1225
+ if (undefined === yVec)
1226
+ return false;
1227
+ rMatrix.setColumns(xVec, yVec, zVec);
1228
+ Matrix3d.createRigidFromMatrix3d(rMatrix, AxisOrder.XZY, rMatrix);
1229
+ rMatrix.transposeInPlace();
1230
+ snap.setSnapPoint(point, SnapHeat.InRange); // Force hot snap so that adjust point uses it for alignments...
1231
+ accudraw.setContext(AccuDrawFlags.SetRMatrix | AccuDrawFlags.AlwaysSetOrigin, accudraw.origin, rMatrix);
1232
+ accudraw.adjustPoint(point, viewport, false); // Update internals for new snap location...
1233
+ if (!isMotion)
1234
+ this._location = { point, viewport };
1235
+ return true;
1236
+ }
1237
+ }
1238
+ AccuDrawRotatePerpendicularTool.toolId = "AccuDraw.RotatePerpendicular";
1239
+ /** @internal */
1169
1240
  export class DefineACSByElementTool extends AccuDrawShortcutsTool {
1170
1241
  constructor() {
1171
1242
  super(...arguments);
1172
1243
  this._origin = Point3d.create();
1173
1244
  this._rMatrix = Matrix3d.createIdentity();
1174
1245
  }
1175
- activateAccuDrawOnStart() { return false; }
1176
- onManipulationComplete() { return AccuDrawFlags.SetRMatrix; }
1177
- doManipulationStart() {
1178
- super.doManipulationStart();
1179
- CoreTools.outputPromptByKey("AccuDraw.DefineACSByElement.Prompts.FirstPoint");
1180
- }
1246
+ onManipulationStart() { CoreTools.outputPromptByKey("AccuDraw.DefineACSByElement.Prompts.FirstPoint"); }
1181
1247
  updateOrientation(snap, vp) {
1182
1248
  const rMatrix = AccuDraw.getSnapRotation(snap, vp);
1183
1249
  if (undefined === rMatrix)
@@ -1189,10 +1255,10 @@ export class DefineACSByElementTool extends AccuDrawShortcutsTool {
1189
1255
  doManipulation(ev, isMotion) {
1190
1256
  const vp = ev ? ev.viewport : undefined;
1191
1257
  if (!vp)
1192
- return true;
1258
+ return false;
1193
1259
  const snapDetail = TentativeOrAccuSnap.getCurrentSnap(false);
1194
1260
  if (undefined === snapDetail || !this.updateOrientation(snapDetail, vp))
1195
- return true;
1261
+ return false;
1196
1262
  IModelApp.viewManager.invalidateDecorationsAllViews();
1197
1263
  if (isMotion)
1198
1264
  return true;
@@ -1220,24 +1286,20 @@ export class DefineACSByPointsTool extends AccuDrawShortcutsTool {
1220
1286
  super(...arguments);
1221
1287
  this._points = [];
1222
1288
  }
1223
- activateAccuDrawOnStart() { return false; }
1224
- onManipulationComplete() { return AccuDrawFlags.SetRMatrix; }
1225
- doManipulationStart() {
1226
- super.doManipulationStart();
1227
- const tentativePoint = IModelApp.tentativePoint;
1228
- if (!tentativePoint.isActive) {
1289
+ onManipulationStart() {
1290
+ if (!IModelApp.tentativePoint.isActive) {
1229
1291
  CoreTools.outputPromptByKey("AccuDraw.DefineACSByPoints.Prompts.FirstPoint");
1230
1292
  return;
1231
1293
  }
1232
- const origin = tentativePoint.getPoint().clone();
1294
+ const origin = IModelApp.tentativePoint.getPoint().clone();
1233
1295
  CoreTools.outputPromptByKey("AccuDraw.DefineACSByPoints.Prompts.SecondPoint");
1234
1296
  IModelApp.accuDraw.setContext(AccuDrawFlags.SetOrigin | AccuDrawFlags.FixedOrigin, origin);
1235
1297
  this._points.push(origin);
1236
- tentativePoint.clear(true);
1298
+ IModelApp.tentativePoint.clear(true);
1237
1299
  }
1238
1300
  doManipulation(ev, isMotion) {
1239
1301
  if (!ev || !ev.viewport)
1240
- return true;
1302
+ return false;
1241
1303
  IModelApp.viewManager.invalidateDecorationsAllViews();
1242
1304
  if (isMotion)
1243
1305
  return false;