@shapediver/viewer.rendering-engine.intersection-restriction-engine 3.8.15 → 3.9.1

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 (107) hide show
  1. package/README.md +1 -1
  2. package/dist/api/implementation/AbstractRestrictionApi.d.ts +2 -2
  3. package/dist/api/implementation/AbstractRestrictionApi.d.ts.map +1 -1
  4. package/dist/api/implementation/AbstractRestrictionApi.js.map +1 -1
  5. package/dist/api/implementation/AbstractSnapRestrictionApi.d.ts +2 -2
  6. package/dist/api/implementation/AbstractSnapRestrictionApi.d.ts.map +1 -1
  7. package/dist/api/implementation/AbstractSnapRestrictionApi.js.map +1 -1
  8. package/dist/api/implementation/camera_plane/CameraPlaneRestrictionApi.d.ts +2 -2
  9. package/dist/api/implementation/camera_plane/CameraPlaneRestrictionApi.d.ts.map +1 -1
  10. package/dist/api/implementation/camera_plane/CameraPlaneRestrictionApi.js.map +1 -1
  11. package/dist/api/implementation/geometry/GeometryRestrictionApi.d.ts +3 -3
  12. package/dist/api/implementation/geometry/GeometryRestrictionApi.d.ts.map +1 -1
  13. package/dist/api/implementation/geometry/GeometryRestrictionApi.js.map +1 -1
  14. package/dist/api/implementation/line/LineRestrictionApi.d.ts +3 -3
  15. package/dist/api/implementation/line/LineRestrictionApi.d.ts.map +1 -1
  16. package/dist/api/implementation/line/LineRestrictionApi.js.map +1 -1
  17. package/dist/api/implementation/plane/PlaneRestrictionApi.d.ts +6 -6
  18. package/dist/api/implementation/plane/PlaneRestrictionApi.d.ts.map +1 -1
  19. package/dist/api/implementation/plane/PlaneRestrictionApi.js.map +1 -1
  20. package/dist/api/implementation/plane/snap/AngularRestrictionApi.d.ts +2 -2
  21. package/dist/api/implementation/plane/snap/AngularRestrictionApi.d.ts.map +1 -1
  22. package/dist/api/implementation/plane/snap/AngularRestrictionApi.js.map +1 -1
  23. package/dist/api/implementation/plane/snap/AxisRestrictionApi.d.ts +2 -2
  24. package/dist/api/implementation/plane/snap/AxisRestrictionApi.d.ts.map +1 -1
  25. package/dist/api/implementation/plane/snap/AxisRestrictionApi.js.map +1 -1
  26. package/dist/api/implementation/plane/snap/GridRestrictionApi.d.ts +2 -2
  27. package/dist/api/implementation/plane/snap/GridRestrictionApi.d.ts.map +1 -1
  28. package/dist/api/implementation/plane/snap/GridRestrictionApi.js.map +1 -1
  29. package/dist/api/implementation/point/PointRestrictionApi.d.ts +3 -3
  30. package/dist/api/implementation/point/PointRestrictionApi.d.ts.map +1 -1
  31. package/dist/api/implementation/point/PointRestrictionApi.js.map +1 -1
  32. package/dist/api/interfaces/IRestrictionApi.d.ts.map +1 -1
  33. package/dist/api/interfaces/ISnapRestrictionApi.d.ts +1 -1
  34. package/dist/api/interfaces/ISnapRestrictionApi.d.ts.map +1 -1
  35. package/dist/implementation/EventManager.d.ts +3 -3
  36. package/dist/implementation/EventManager.d.ts.map +1 -1
  37. package/dist/implementation/EventManager.js.map +1 -1
  38. package/dist/implementation/GeometryMathManager.d.ts +4 -4
  39. package/dist/implementation/GeometryMathManager.d.ts.map +1 -1
  40. package/dist/implementation/GeometryMathManager.js +25 -13
  41. package/dist/implementation/GeometryMathManager.js.map +1 -1
  42. package/dist/implementation/RestrictionManager.d.ts +7 -6
  43. package/dist/implementation/RestrictionManager.d.ts.map +1 -1
  44. package/dist/implementation/RestrictionManager.js +65 -29
  45. package/dist/implementation/RestrictionManager.js.map +1 -1
  46. package/dist/implementation/restrictions/AbstractRestriction.d.ts +7 -7
  47. package/dist/implementation/restrictions/AbstractRestriction.d.ts.map +1 -1
  48. package/dist/implementation/restrictions/AbstractRestriction.js +8 -5
  49. package/dist/implementation/restrictions/AbstractRestriction.js.map +1 -1
  50. package/dist/implementation/restrictions/AbstractSnapRestriction.d.ts +7 -7
  51. package/dist/implementation/restrictions/AbstractSnapRestriction.d.ts.map +1 -1
  52. package/dist/implementation/restrictions/AbstractSnapRestriction.js +4 -4
  53. package/dist/implementation/restrictions/AbstractSnapRestriction.js.map +1 -1
  54. package/dist/implementation/restrictions/RestrictionsHelper.d.ts +2 -2
  55. package/dist/implementation/restrictions/RestrictionsHelper.d.ts.map +1 -1
  56. package/dist/implementation/restrictions/RestrictionsHelper.js +7 -3
  57. package/dist/implementation/restrictions/RestrictionsHelper.js.map +1 -1
  58. package/dist/implementation/restrictions/camera_plane/CameraPlaneRestriction.d.ts +7 -7
  59. package/dist/implementation/restrictions/camera_plane/CameraPlaneRestriction.d.ts.map +1 -1
  60. package/dist/implementation/restrictions/camera_plane/CameraPlaneRestriction.js +2 -2
  61. package/dist/implementation/restrictions/camera_plane/CameraPlaneRestriction.js.map +1 -1
  62. package/dist/implementation/restrictions/geometry/GeometryRestriction.d.ts +8 -8
  63. package/dist/implementation/restrictions/geometry/GeometryRestriction.d.ts.map +1 -1
  64. package/dist/implementation/restrictions/geometry/GeometryRestriction.js +67 -30
  65. package/dist/implementation/restrictions/geometry/GeometryRestriction.js.map +1 -1
  66. package/dist/implementation/restrictions/line/LineRestriction.d.ts +20 -9
  67. package/dist/implementation/restrictions/line/LineRestriction.d.ts.map +1 -1
  68. package/dist/implementation/restrictions/line/LineRestriction.js +66 -9
  69. package/dist/implementation/restrictions/line/LineRestriction.js.map +1 -1
  70. package/dist/implementation/restrictions/plane/PlaneRestriction.d.ts +11 -11
  71. package/dist/implementation/restrictions/plane/PlaneRestriction.d.ts.map +1 -1
  72. package/dist/implementation/restrictions/plane/PlaneRestriction.js +34 -16
  73. package/dist/implementation/restrictions/plane/PlaneRestriction.js.map +1 -1
  74. package/dist/implementation/restrictions/plane/snap/AngularRestriction.d.ts +9 -9
  75. package/dist/implementation/restrictions/plane/snap/AngularRestriction.d.ts.map +1 -1
  76. package/dist/implementation/restrictions/plane/snap/AngularRestriction.js +86 -35
  77. package/dist/implementation/restrictions/plane/snap/AngularRestriction.js.map +1 -1
  78. package/dist/implementation/restrictions/plane/snap/AxisRestriction.d.ts +8 -8
  79. package/dist/implementation/restrictions/plane/snap/AxisRestriction.d.ts.map +1 -1
  80. package/dist/implementation/restrictions/plane/snap/AxisRestriction.js +79 -24
  81. package/dist/implementation/restrictions/plane/snap/AxisRestriction.js.map +1 -1
  82. package/dist/implementation/restrictions/plane/snap/GridRestriction.d.ts +8 -8
  83. package/dist/implementation/restrictions/plane/snap/GridRestriction.d.ts.map +1 -1
  84. package/dist/implementation/restrictions/plane/snap/GridRestriction.js +58 -19
  85. package/dist/implementation/restrictions/plane/snap/GridRestriction.js.map +1 -1
  86. package/dist/implementation/restrictions/point/PointRestriction.d.ts +8 -8
  87. package/dist/implementation/restrictions/point/PointRestriction.d.ts.map +1 -1
  88. package/dist/implementation/restrictions/point/PointRestriction.js +5 -4
  89. package/dist/implementation/restrictions/point/PointRestriction.js.map +1 -1
  90. package/dist/index.d.ts +29 -29
  91. package/dist/index.d.ts.map +1 -1
  92. package/dist/index.js +18 -18
  93. package/dist/index.js.map +1 -1
  94. package/dist/interfaces/IDragAnchor.d.ts +1 -1
  95. package/dist/interfaces/IDragAnchor.d.ts.map +1 -1
  96. package/dist/interfaces/IRestriction.d.ts +14 -13
  97. package/dist/interfaces/IRestriction.d.ts.map +1 -1
  98. package/dist/interfaces/IRestriction.js +2 -2
  99. package/dist/interfaces/IRestriction.js.map +1 -1
  100. package/dist/interfaces/IRestrictionManager.d.ts +2 -2
  101. package/dist/interfaces/IRestrictionManager.d.ts.map +1 -1
  102. package/dist/interfaces/ISnapRestriction.d.ts +3 -3
  103. package/dist/interfaces/ISnapRestriction.d.ts.map +1 -1
  104. package/dist/interfaces/ISnapRestriction.js.map +1 -1
  105. package/dist/interfaces/IVisualizationSettings.d.ts +1 -1
  106. package/dist/interfaces/IVisualizationSettings.d.ts.map +1 -1
  107. package/package.json +52 -52
@@ -13,14 +13,14 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
13
13
  var _PlaneRestriction_properties, _PlaneRestriction_viewport, _PlaneRestriction_angularRestriction, _PlaneRestriction_axisRestriction, _PlaneRestriction_cameraId, _PlaneRestriction_gridRestriction, _PlaneRestriction_normal, _PlaneRestriction_origin, _PlaneRestriction_plane, _PlaneRestriction_snapRestrictions, _PlaneRestriction_transformationFromXYPlaneMatrix, _PlaneRestriction_transformationToXYPlaneMatrix, _PlaneRestriction_vectorU, _PlaneRestriction_vectorV;
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.PlaneRestriction = void 0;
16
+ const viewer_1 = require("@shapediver/viewer");
17
+ const viewer_shared_math_1 = require("@shapediver/viewer.shared.math");
18
+ const gl_matrix_1 = require("gl-matrix");
19
+ const IRestriction_1 = require("../../../interfaces/IRestriction");
16
20
  const AbstractRestriction_1 = require("../AbstractRestriction");
17
21
  const AngularRestriction_1 = require("./snap/AngularRestriction");
18
22
  const AxisRestriction_1 = require("./snap/AxisRestriction");
19
- const viewer_1 = require("@shapediver/viewer");
20
23
  const GridRestriction_1 = require("./snap/GridRestriction");
21
- const viewer_shared_math_1 = require("@shapediver/viewer.shared.math");
22
- const IRestriction_1 = require("../../../interfaces/IRestriction");
23
- const gl_matrix_1 = require("gl-matrix");
24
24
  // #endregion Type aliases (1)
25
25
  // #region Classes (1)
26
26
  class PlaneRestriction extends AbstractRestriction_1.AbstractRestriction {
@@ -33,7 +33,7 @@ class PlaneRestriction extends AbstractRestriction_1.AbstractRestriction {
33
33
  _PlaneRestriction_viewport.set(this, void 0);
34
34
  _PlaneRestriction_angularRestriction.set(this, void 0);
35
35
  _PlaneRestriction_axisRestriction.set(this, void 0);
36
- _PlaneRestriction_cameraId.set(this, '');
36
+ _PlaneRestriction_cameraId.set(this, "");
37
37
  _PlaneRestriction_gridRestriction.set(this, void 0);
38
38
  _PlaneRestriction_normal.set(this, gl_matrix_1.vec3.create());
39
39
  _PlaneRestriction_origin.set(this, gl_matrix_1.vec3.create());
@@ -53,7 +53,7 @@ class PlaneRestriction extends AbstractRestriction_1.AbstractRestriction {
53
53
  __classPrivateFieldSet(this, _PlaneRestriction_snapRestrictions, {
54
54
  grid: __classPrivateFieldGet(this, _PlaneRestriction_gridRestriction, "f"),
55
55
  angular: __classPrivateFieldGet(this, _PlaneRestriction_angularRestriction, "f"),
56
- axis: __classPrivateFieldGet(this, _PlaneRestriction_axisRestriction, "f")
56
+ axis: __classPrivateFieldGet(this, _PlaneRestriction_axisRestriction, "f"),
57
57
  }, "f");
58
58
  }
59
59
  // #endregion Constructors (1)
@@ -112,7 +112,9 @@ class PlaneRestriction extends AbstractRestriction_1.AbstractRestriction {
112
112
  if (metaData.startPoint)
113
113
  origin = gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), __classPrivateFieldGet(this, _PlaneRestriction_origin, "f"), gl_matrix_1.vec3.scale(gl_matrix_1.vec3.create(), __classPrivateFieldGet(this, _PlaneRestriction_normal, "f"), gl_matrix_1.vec3.dot(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), __classPrivateFieldGet(this, _PlaneRestriction_origin, "f"), metaData.startPoint), __classPrivateFieldGet(this, _PlaneRestriction_normal, "f"))));
114
114
  // find intersection of ray and plane
115
- const t = (gl_matrix_1.vec3.dot(origin, __classPrivateFieldGet(this, _PlaneRestriction_normal, "f")) - gl_matrix_1.vec3.dot(ray.origin, __classPrivateFieldGet(this, _PlaneRestriction_normal, "f"))) / gl_matrix_1.vec3.dot(ray.direction, __classPrivateFieldGet(this, _PlaneRestriction_normal, "f"));
115
+ const t = (gl_matrix_1.vec3.dot(origin, __classPrivateFieldGet(this, _PlaneRestriction_normal, "f")) -
116
+ gl_matrix_1.vec3.dot(ray.origin, __classPrivateFieldGet(this, _PlaneRestriction_normal, "f"))) /
117
+ gl_matrix_1.vec3.dot(ray.direction, __classPrivateFieldGet(this, _PlaneRestriction_normal, "f"));
116
118
  const intersection = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), ray.origin, gl_matrix_1.vec3.multiply(gl_matrix_1.vec3.create(), ray.direction, gl_matrix_1.vec3.fromValues(t, t, t)));
117
119
  return this.snap(ray, intersection, t, metaData);
118
120
  }
@@ -131,7 +133,9 @@ class PlaneRestriction extends AbstractRestriction_1.AbstractRestriction {
131
133
  // #region Private Methods (4)
132
134
  createDefaultPlane(camera) {
133
135
  if (camera.type === viewer_1.CAMERA_TYPE.PERSPECTIVE ||
134
- (camera.type === viewer_1.CAMERA_TYPE.ORTHOGRAPHIC && camera.direction === viewer_1.ORTHOGRAPHIC_CAMERA_DIRECTION.CUSTOM)) {
136
+ (camera.type === viewer_1.CAMERA_TYPE.ORTHOGRAPHIC &&
137
+ camera.direction ===
138
+ viewer_1.ORTHOGRAPHIC_CAMERA_DIRECTION.CUSTOM)) {
135
139
  __classPrivateFieldSet(this, _PlaneRestriction_vectorU, gl_matrix_1.vec3.fromValues(1, 0, 0), "f");
136
140
  __classPrivateFieldSet(this, _PlaneRestriction_vectorV, gl_matrix_1.vec3.fromValues(0, 1, 0), "f");
137
141
  __classPrivateFieldSet(this, _PlaneRestriction_normal, gl_matrix_1.vec3.fromValues(0, 0, 1), "f");
@@ -140,8 +144,12 @@ class PlaneRestriction extends AbstractRestriction_1.AbstractRestriction {
140
144
  else {
141
145
  const orthographicCamera = camera;
142
146
  const direction = gl_matrix_1.vec3.normalize(gl_matrix_1.vec3.create(), gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), orthographicCamera.target, orthographicCamera.position));
143
- const up = orthographicCamera.direction === viewer_1.ORTHOGRAPHIC_CAMERA_DIRECTION.TOP || orthographicCamera.direction === viewer_1.ORTHOGRAPHIC_CAMERA_DIRECTION.BOTTOM ?
144
- gl_matrix_1.vec3.fromValues(0, 1, 0) : gl_matrix_1.vec3.fromValues(0, 0, 1);
147
+ const up = orthographicCamera.direction ===
148
+ viewer_1.ORTHOGRAPHIC_CAMERA_DIRECTION.TOP ||
149
+ orthographicCamera.direction ===
150
+ viewer_1.ORTHOGRAPHIC_CAMERA_DIRECTION.BOTTOM
151
+ ? gl_matrix_1.vec3.fromValues(0, 1, 0)
152
+ : gl_matrix_1.vec3.fromValues(0, 0, 1);
145
153
  __classPrivateFieldSet(this, _PlaneRestriction_origin, gl_matrix_1.vec3.fromValues(0, 0, 0), "f");
146
154
  __classPrivateFieldSet(this, _PlaneRestriction_normal, gl_matrix_1.vec3.negate(gl_matrix_1.vec3.create(), direction), "f");
147
155
  __classPrivateFieldSet(this, _PlaneRestriction_vectorU, gl_matrix_1.vec3.clone(up), "f");
@@ -180,14 +188,18 @@ class PlaneRestriction extends AbstractRestriction_1.AbstractRestriction {
180
188
  for (const snapRestriction of snapRestrictions) {
181
189
  results.push(snapRestriction.snap(ray, point, distance, metaData));
182
190
  }
183
- const indexedResults = results.map((value, index) => ({ index, value }));
191
+ const indexedResults = results.map((value, index) => ({
192
+ index,
193
+ value,
194
+ }));
184
195
  // find the result that is closest to the point and set the snap restriction to active
185
196
  indexedResults.sort((a, b) => {
186
197
  if (!a.value)
187
198
  return 1;
188
199
  if (!b.value)
189
200
  return -1;
190
- return gl_matrix_1.vec3.squaredDistance(point, a.value.targetPoint) - gl_matrix_1.vec3.squaredDistance(point, b.value.targetPoint);
201
+ return (gl_matrix_1.vec3.squaredDistance(point, a.value.targetPoint) -
202
+ gl_matrix_1.vec3.squaredDistance(point, b.value.targetPoint));
191
203
  });
192
204
  for (const snapRestriction of snapRestrictions) {
193
205
  snapRestriction.active = false;
@@ -203,15 +215,21 @@ class PlaneRestriction extends AbstractRestriction_1.AbstractRestriction {
203
215
  distanceOriginToClosestIntersectionPointSquared: gl_matrix_1.vec3.sqrDist(ray.origin, point),
204
216
  targetPoint: point,
205
217
  distanceClosestPointToTargetPointSquared: 0,
206
- restriction: this
218
+ restriction: this,
207
219
  };
208
220
  }
209
221
  updatePlaneDefinition() {
210
222
  const camera = __classPrivateFieldGet(this, _PlaneRestriction_viewport, "f").camera;
211
223
  __classPrivateFieldSet(this, _PlaneRestriction_cameraId, camera.id, "f");
212
- const origin = __classPrivateFieldGet(this, _PlaneRestriction_properties, "f").origin ? gl_matrix_1.vec3.clone(__classPrivateFieldGet(this, _PlaneRestriction_properties, "f").origin) : gl_matrix_1.vec3.fromValues(0, 0, 0);
213
- const vectorU = __classPrivateFieldGet(this, _PlaneRestriction_properties, "f").vector_u ? gl_matrix_1.vec3.clone(__classPrivateFieldGet(this, _PlaneRestriction_properties, "f").vector_u) : undefined;
214
- const vectorV = __classPrivateFieldGet(this, _PlaneRestriction_properties, "f").vector_v ? gl_matrix_1.vec3.clone(__classPrivateFieldGet(this, _PlaneRestriction_properties, "f").vector_v) : undefined;
224
+ const origin = __classPrivateFieldGet(this, _PlaneRestriction_properties, "f").origin
225
+ ? gl_matrix_1.vec3.clone(__classPrivateFieldGet(this, _PlaneRestriction_properties, "f").origin)
226
+ : gl_matrix_1.vec3.fromValues(0, 0, 0);
227
+ const vectorU = __classPrivateFieldGet(this, _PlaneRestriction_properties, "f").vector_u
228
+ ? gl_matrix_1.vec3.clone(__classPrivateFieldGet(this, _PlaneRestriction_properties, "f").vector_u)
229
+ : undefined;
230
+ const vectorV = __classPrivateFieldGet(this, _PlaneRestriction_properties, "f").vector_v
231
+ ? gl_matrix_1.vec3.clone(__classPrivateFieldGet(this, _PlaneRestriction_properties, "f").vector_v)
232
+ : undefined;
215
233
  const planeDefined = origin && vectorU && vectorV;
216
234
  let normal = gl_matrix_1.vec3.fromValues(0, 0, 1);
217
235
  if (planeDefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"PlaneRestriction.js","sourceRoot":"","sources":["../../../../src/implementation/restrictions/plane/PlaneRestriction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlaneRestriction.js","sourceRoot":"","sources":["../../../../src/implementation/restrictions/plane/PlaneRestriction.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { AbstractSnapRestriction } from '../../AbstractSnapRestriction';
2
- import { GeometryMathManager } from '../../../GeometryMathManager';
3
- import { IRay } from '@shapediver/viewer.shared.types';
4
- import { RestrictionMetaData, RestrictionResult } from '../../../../interfaces/IRestriction';
5
- import { ISnapRestriction, SnapRestrictionProperties } from '../../../../interfaces/ISnapRestriction';
6
- import { ITreeNode, IViewportApi } from '@shapediver/viewer';
7
- import { IVisualizationSettings } from '../../../../interfaces/IVisualizationSettings';
8
- import { PlaneRestriction } from '../PlaneRestriction';
9
- import { vec3 } from 'gl-matrix';
1
+ import { ITreeNode, IViewportApi } from "@shapediver/viewer";
2
+ import { IRay } from "@shapediver/viewer.shared.types";
3
+ import { vec3 } from "gl-matrix";
4
+ import { RestrictionMetaData, RestrictionResult } from "../../../../interfaces/IRestriction";
5
+ import { ISnapRestriction, SnapRestrictionProperties } from "../../../../interfaces/ISnapRestriction";
6
+ import { IVisualizationSettings } from "../../../../interfaces/IVisualizationSettings";
7
+ import { GeometryMathManager } from "../../../GeometryMathManager";
8
+ import { AbstractSnapRestriction } from "../../AbstractSnapRestriction";
9
+ import { PlaneRestriction } from "../PlaneRestriction";
10
10
  export declare type AngularRestrictionProperties = {
11
11
  /**
12
12
  * Step size for the angles
@@ -1 +1 @@
1
- {"version":3,"file":"AngularRestriction.d.ts","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/AngularRestriction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAExE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAwB,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACnH,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACtG,OAAO,EAAE,SAAS,EAAE,YAAY,EAAa,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AAEvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,oBAAY,4BAA4B,GAAG;IACvC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B,GAAG,yBAAyB,CAAC;AAM9B,qBAAa,kBAAmB,SAAQ,uBAAwB,YAAW,gBAAgB;;gBAwB3E,QAAQ,EAAE,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,sBAAsB,EAAE,UAAU,CAAC,EAAE,4BAA4B;IAuBpN,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED,IAAW,MAAM,CAAC,KAAK,EAAE,OAAO,EAU/B;IAED,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,SAAS,CAAC,KAAK,EAAE,MAAM,EAKjC;IAED,IAAW,iBAAiB,IAAI,OAAO,CAEtC;IAED,IAAW,eAAe,IAAI,OAAO,CAEpC;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,QAAQ,CAAC,KAAK,EAAE,MAAM,EAEhC;IAMM,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,SAAS;IAkI7G,qBAAqB,IAAI,IAAI;IAMpC,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAWnD,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,UAAU;IAiElB,OAAO,CAAC,oBAAoB;IAsC5B,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,gBAAgB;CAK3B"}
1
+ {"version":3,"file":"AngularRestriction.d.ts","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/AngularRestriction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,YAAY,EAAY,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAC,IAAI,EAAC,MAAM,iCAAiC,CAAC;AACrD,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAC/B,OAAO,EAEN,mBAAmB,EACnB,iBAAiB,EACjB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACN,gBAAgB,EAChB,yBAAyB,EACzB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAC,sBAAsB,EAAC,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAC,mBAAmB,EAAC,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAC,uBAAuB,EAAC,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAIrD,oBAAY,4BAA4B,GAAG;IAC1C;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC5B,GAAG,yBAAyB,CAAC;AAM9B,qBAAa,kBACZ,SAAQ,uBACR,YAAW,gBAAgB;;gBA0B1B,QAAQ,EAAE,YAAY,EACtB,mBAAmB,EAAE,mBAAmB,EACxC,UAAU,EAAE,SAAS,EACrB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,sBAAsB,EAChC,UAAU,CAAC,EAAE,4BAA4B;IAwB1C,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED,IAAW,MAAM,CAAC,KAAK,EAAE,OAAO,EAY/B;IAED,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,SAAS,CAAC,KAAK,EAAE,MAAM,EAKjC;IAED,IAAW,iBAAiB,IAAI,OAAO,CAEtC;IAED,IAAW,eAAe,IAAI,OAAO,CAEpC;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,QAAQ,CAAC,KAAK,EAAE,MAAM,EAEhC;IAMM,IAAI,CACV,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,mBAAmB,GAC5B,iBAAiB,GAAG,SAAS;IAyYzB,qBAAqB,IAAI,IAAI;IAMpC,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAWnD,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,UAAU;IAmElB,OAAO,CAAC,oBAAoB;IAwD5B,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,gBAAgB;CAQxB"}
@@ -13,12 +13,12 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
13
13
  var _AngularRestriction_activationKey, _AngularRestriction_geometryMathManager, _AngularRestriction_planeRestriction, _AngularRestriction_active, _AngularRestriction_activePolarGrids, _AngularRestriction_angleStep, _AngularRestriction_angleStepEditable, _AngularRestriction_angles, _AngularRestriction_labelNext, _AngularRestriction_labelPrevious, _AngularRestriction_priority, _AngularRestriction_settings;
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.AngularRestriction = void 0;
16
- const AbstractSnapRestriction_1 = require("../../AbstractSnapRestriction");
17
- const viewer_rendering_engine_rendering_engine_threejs_1 = require("@shapediver/viewer.rendering-engine.rendering-engine-threejs");
18
- const IRestriction_1 = require("../../../../interfaces/IRestriction");
19
16
  const viewer_1 = require("@shapediver/viewer");
17
+ const viewer_rendering_engine_rendering_engine_threejs_1 = require("@shapediver/viewer.rendering-engine.rendering-engine-threejs");
20
18
  const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
21
19
  const gl_matrix_1 = require("gl-matrix");
20
+ const IRestriction_1 = require("../../../../interfaces/IRestriction");
21
+ const AbstractSnapRestriction_1 = require("../../AbstractSnapRestriction");
22
22
  // #endregion Type aliases (1)
23
23
  // #region Classes (1)
24
24
  class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestriction {
@@ -26,7 +26,7 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
26
26
  // #region Constructors (1)
27
27
  constructor(viewport, geometryMathManager, parentNode, planeRestriction, settings, properties) {
28
28
  var _a, _b, _c;
29
- super(viewport, parentNode, 'angular');
29
+ super(viewport, parentNode, "angular");
30
30
  // #region Properties (12)
31
31
  _AngularRestriction_activationKey.set(this, void 0);
32
32
  _AngularRestriction_geometryMathManager.set(this, void 0);
@@ -34,7 +34,7 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
34
34
  _AngularRestriction_active.set(this, false);
35
35
  _AngularRestriction_activePolarGrids.set(this, {
36
36
  next: false,
37
- previous: false
37
+ previous: false,
38
38
  });
39
39
  _AngularRestriction_angleStep.set(this, void 0);
40
40
  _AngularRestriction_angleStepEditable.set(this, true);
@@ -46,7 +46,7 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
46
46
  __classPrivateFieldSet(this, _AngularRestriction_geometryMathManager, geometryMathManager, "f");
47
47
  __classPrivateFieldSet(this, _AngularRestriction_settings, settings, "f");
48
48
  __classPrivateFieldSet(this, _AngularRestriction_planeRestriction, planeRestriction, "f");
49
- __classPrivateFieldSet(this, _AngularRestriction_activationKey, (properties === null || properties === void 0 ? void 0 : properties.activationKey) || 'a', "f");
49
+ __classPrivateFieldSet(this, _AngularRestriction_activationKey, (properties === null || properties === void 0 ? void 0 : properties.activationKey) || "a", "f");
50
50
  this.enabled = (_a = properties === null || properties === void 0 ? void 0 : properties.enabled) !== null && _a !== void 0 ? _a : false;
51
51
  this._enabledEditable = (_b = properties === null || properties === void 0 ? void 0 : properties.enabledEditable) !== null && _b !== void 0 ? _b : true;
52
52
  __classPrivateFieldSet(this, _AngularRestriction_angleStep, (properties === null || properties === void 0 ? void 0 : properties.angleStep) || Math.PI / 12, "f");
@@ -103,7 +103,9 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
103
103
  if (!(0, IRestriction_1.isDrawingRestriction)(metaData))
104
104
  return;
105
105
  // if the restriction is not enabled OR the activation key is set and the key is not pressed, return
106
- if (this.enabled === false && !(((_a = metaData === null || metaData === void 0 ? void 0 : metaData.pressedKeys) === null || _a === void 0 ? void 0 : _a.length) === 1 && (metaData === null || metaData === void 0 ? void 0 : metaData.pressedKeys[0]) === __classPrivateFieldGet(this, _AngularRestriction_activationKey, "f")))
106
+ if (this.enabled === false &&
107
+ !(((_a = metaData === null || metaData === void 0 ? void 0 : metaData.toggledKeys) === null || _a === void 0 ? void 0 : _a.length) === 1 &&
108
+ (metaData === null || metaData === void 0 ? void 0 : metaData.toggledKeys[0]) === __classPrivateFieldGet(this, _AngularRestriction_activationKey, "f")))
107
109
  return;
108
110
  if (__classPrivateFieldGet(this, _AngularRestriction_labelNext, "f"))
109
111
  __classPrivateFieldGet(this, _AngularRestriction_labelNext, "f").visible = false;
@@ -111,7 +113,7 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
111
113
  __classPrivateFieldGet(this, _AngularRestriction_labelPrevious, "f").visible = false;
112
114
  __classPrivateFieldSet(this, _AngularRestriction_activePolarGrids, {
113
115
  next: false,
114
- previous: false
116
+ previous: false,
115
117
  }, "f");
116
118
  const positionArray = metaData === null || metaData === void 0 ? void 0 : metaData.positionArray;
117
119
  if (!positionArray)
@@ -143,10 +145,10 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
143
145
  * 6. Reverse the projection to the original coordinate system
144
146
  */
145
147
  // get the next and previous point from the position array
146
- const nextPointFromData = gl_matrix_1.vec3.fromValues(positionArray.at((nextIndex * 3)), positionArray.at((nextIndex * 3) + 1), positionArray.at((nextIndex * 3) + 2));
147
- const nextNextPointFromData = gl_matrix_1.vec3.fromValues(positionArray.at((nextNextIndex * 3)), positionArray.at((nextNextIndex * 3) + 1), positionArray.at((nextNextIndex * 3) + 2));
148
- const previousPointFromData = gl_matrix_1.vec3.fromValues(positionArray.at((previousIndex * 3)), positionArray.at((previousIndex * 3) + 1), positionArray.at((previousIndex * 3) + 2));
149
- const previousPreviousPointFromData = gl_matrix_1.vec3.fromValues(positionArray.at((previousPreviousIndex * 3)), positionArray.at((previousPreviousIndex * 3) + 1), positionArray.at((previousPreviousIndex * 3) + 2));
148
+ const nextPointFromData = gl_matrix_1.vec3.fromValues(positionArray.at(nextIndex * 3), positionArray.at(nextIndex * 3 + 1), positionArray.at(nextIndex * 3 + 2));
149
+ const nextNextPointFromData = gl_matrix_1.vec3.fromValues(positionArray.at(nextNextIndex * 3), positionArray.at(nextNextIndex * 3 + 1), positionArray.at(nextNextIndex * 3 + 2));
150
+ const previousPointFromData = gl_matrix_1.vec3.fromValues(positionArray.at(previousIndex * 3), positionArray.at(previousIndex * 3 + 1), positionArray.at(previousIndex * 3 + 2));
151
+ const previousPreviousPointFromData = gl_matrix_1.vec3.fromValues(positionArray.at(previousPreviousIndex * 3), positionArray.at(previousPreviousIndex * 3 + 1), positionArray.at(previousPreviousIndex * 3 + 2));
150
152
  // project them onto the same plane as the point
151
153
  const nextPointProjected = gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), nextPointFromData, gl_matrix_1.vec3.scale(gl_matrix_1.vec3.create(), __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f").normal, gl_matrix_1.vec3.dot(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), nextPointFromData, point), __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f").normal)));
152
154
  const nextNextPointProjected = gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), nextNextPointFromData, gl_matrix_1.vec3.scale(gl_matrix_1.vec3.create(), __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f").normal, gl_matrix_1.vec3.dot(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), nextNextPointFromData, point), __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f").normal)));
@@ -159,24 +161,43 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
159
161
  gl_matrix_1.vec3.transformMat4(previousPointProjected, previousPointProjected, __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f").transformationToXYPlaneMatrix);
160
162
  gl_matrix_1.vec3.transformMat4(previousPreviousPointProjected, previousPreviousPointProjected, __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f").transformationToXYPlaneMatrix);
161
163
  // calculate the angle between the next and previous point and the point to restrict on the axis
162
- const { angularDifference: angularDifferenceNext, crossProduct: crossProductNext, closestAngle: closestAngleNext } = this.getAngularDifference({ start: nextPointProjected, end: nextNextPointProjected }, { start: nextPointProjected, end: pointProjected });
163
- const { angularDifference: angularDifferencePrevious, crossProduct: crossProductPrevious, closestAngle: closestAnglePrevious } = this.getAngularDifference({ start: previousPointProjected, end: previousPreviousPointProjected }, { start: previousPointProjected, end: pointProjected });
164
+ const { angularDifference: angularDifferenceNext, crossProduct: crossProductNext, closestAngle: closestAngleNext, } = this.getAngularDifference({ start: nextPointProjected, end: nextNextPointProjected }, { start: nextPointProjected, end: pointProjected });
165
+ const { angularDifference: angularDifferencePrevious, crossProduct: crossProductPrevious, closestAngle: closestAnglePrevious, } = this.getAngularDifference({
166
+ start: previousPointProjected,
167
+ end: previousPreviousPointProjected,
168
+ }, { start: previousPointProjected, end: pointProjected });
164
169
  // calculate the distances in screen space so we can check how close it is
165
- const resultPointNextAngle = gl_matrix_1.vec3.rotateZ(gl_matrix_1.vec3.create(), pointProjected, nextPointProjected, crossProductNext[2] < 0 ? -angularDifferenceNext : angularDifferenceNext);
166
- const screenSpaceDistanceCheckNextAngle = __classPrivateFieldGet(this, _AngularRestriction_geometryMathManager, "f").screenSpaceDistanceCheck(resultPointNextAngle, pointProjected, __classPrivateFieldGet(this, _AngularRestriction_settings, "f").points.size_0 * __classPrivateFieldGet(this, _AngularRestriction_settings, "f").distanceMultiplicationFactor);
167
- const resultPointPreviousAngle = gl_matrix_1.vec3.rotateZ(gl_matrix_1.vec3.create(), pointProjected, previousPointProjected, crossProductPrevious[2] < 0 ? -angularDifferencePrevious : angularDifferencePrevious);
168
- const screenSpaceDistanceCheckPreviousAngle = __classPrivateFieldGet(this, _AngularRestriction_geometryMathManager, "f").screenSpaceDistanceCheck(resultPointPreviousAngle, pointProjected, __classPrivateFieldGet(this, _AngularRestriction_settings, "f").points.size_0 * __classPrivateFieldGet(this, _AngularRestriction_settings, "f").distanceMultiplicationFactor);
169
- if (screenSpaceDistanceCheckNextAngle.check === false && screenSpaceDistanceCheckPreviousAngle.check === false)
170
+ const resultPointNextAngle = gl_matrix_1.vec3.rotateZ(gl_matrix_1.vec3.create(), pointProjected, nextPointProjected, crossProductNext[2] < 0
171
+ ? -angularDifferenceNext
172
+ : angularDifferenceNext);
173
+ const screenSpaceDistanceCheckNextAngle = __classPrivateFieldGet(this, _AngularRestriction_geometryMathManager, "f").screenSpaceDistanceCheck(resultPointNextAngle, pointProjected, __classPrivateFieldGet(this, _AngularRestriction_settings, "f").points.size_0 *
174
+ __classPrivateFieldGet(this, _AngularRestriction_settings, "f").distanceMultiplicationFactor);
175
+ const resultPointPreviousAngle = gl_matrix_1.vec3.rotateZ(gl_matrix_1.vec3.create(), pointProjected, previousPointProjected, crossProductPrevious[2] < 0
176
+ ? -angularDifferencePrevious
177
+ : angularDifferencePrevious);
178
+ const screenSpaceDistanceCheckPreviousAngle = __classPrivateFieldGet(this, _AngularRestriction_geometryMathManager, "f").screenSpaceDistanceCheck(resultPointPreviousAngle, pointProjected, __classPrivateFieldGet(this, _AngularRestriction_settings, "f").points.size_0 *
179
+ __classPrivateFieldGet(this, _AngularRestriction_settings, "f").distanceMultiplicationFactor);
180
+ if (screenSpaceDistanceCheckNextAngle.check === false &&
181
+ screenSpaceDistanceCheckPreviousAngle.check === false)
170
182
  return;
171
183
  // snap to clear defined point if both distances are smaller than threshold
172
- if (positionArray.length > 6 && screenSpaceDistanceCheckNextAngle.check === true && screenSpaceDistanceCheckPreviousAngle.check === true) {
184
+ if (positionArray.length > 6 &&
185
+ screenSpaceDistanceCheckNextAngle.check === true &&
186
+ screenSpaceDistanceCheckPreviousAngle.check === true) {
173
187
  const rayDirectionNext = gl_matrix_1.vec3.normalize(gl_matrix_1.vec3.create(), gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), resultPointNextAngle, nextPointProjected));
174
188
  const rayDirectionPrevious = gl_matrix_1.vec3.normalize(gl_matrix_1.vec3.create(), gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), resultPointPreviousAngle, previousPointProjected));
175
189
  const crossProduct = gl_matrix_1.vec3.cross(gl_matrix_1.vec3.create(), rayDirectionNext, rayDirectionPrevious);
176
190
  const crossProductLength = gl_matrix_1.vec3.length(crossProduct);
177
191
  if (crossProductLength < 0.001) {
178
192
  gl_matrix_1.vec3.transformMat4(resultPointNextAngle, resultPointNextAngle, __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f").transformationFromXYPlaneMatrix);
179
- return { targetPoint: resultPointNextAngle, distanceClosestPointToTargetPointSquared: gl_matrix_1.vec3.sqrDist(resultPointNextAngle, point), closestIntersectionPoint: point, distanceOriginToClosestIntersectionPointSquared: distance, restriction: __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f"), snapRestriction: this };
193
+ return {
194
+ targetPoint: resultPointNextAngle,
195
+ distanceClosestPointToTargetPointSquared: gl_matrix_1.vec3.sqrDist(resultPointNextAngle, point),
196
+ closestIntersectionPoint: point,
197
+ distanceOriginToClosestIntersectionPointSquared: distance,
198
+ restriction: __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f"),
199
+ snapRestriction: this,
200
+ };
180
201
  }
181
202
  const t = gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), previousPointProjected, nextPointProjected);
182
203
  const u = gl_matrix_1.vec3.cross(gl_matrix_1.vec3.create(), t, rayDirectionPrevious);
@@ -185,7 +206,14 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
185
206
  const uValue = gl_matrix_1.vec3.dot(v, crossProduct) / Math.pow(crossProductLength, 2);
186
207
  if (tValue < 0 || uValue < 0) {
187
208
  gl_matrix_1.vec3.transformMat4(resultPointNextAngle, resultPointNextAngle, __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f").transformationFromXYPlaneMatrix);
188
- return { targetPoint: resultPointNextAngle, distanceClosestPointToTargetPointSquared: gl_matrix_1.vec3.sqrDist(resultPointNextAngle, point), closestIntersectionPoint: point, distanceOriginToClosestIntersectionPointSquared: distance, restriction: __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f"), snapRestriction: this };
209
+ return {
210
+ targetPoint: resultPointNextAngle,
211
+ distanceClosestPointToTargetPointSquared: gl_matrix_1.vec3.sqrDist(resultPointNextAngle, point),
212
+ closestIntersectionPoint: point,
213
+ distanceOriginToClosestIntersectionPointSquared: distance,
214
+ restriction: __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f"),
215
+ snapRestriction: this,
216
+ };
189
217
  }
190
218
  const intersection = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), nextPointProjected, gl_matrix_1.vec3.scale(gl_matrix_1.vec3.create(), rayDirectionNext, tValue));
191
219
  __classPrivateFieldSet(this, _AngularRestriction_labelNext, this.createGrid(__classPrivateFieldGet(this, _AngularRestriction_labelNext, "f"), nextPointFromData, closestAngleNext), "f");
@@ -194,22 +222,44 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
194
222
  __classPrivateFieldGet(this, _AngularRestriction_activePolarGrids, "f").previous = true;
195
223
  // reverse the projection to the original coordinate system
196
224
  gl_matrix_1.vec3.transformMat4(intersection, intersection, __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f").transformationFromXYPlaneMatrix);
197
- return { targetPoint: intersection, distanceClosestPointToTargetPointSquared: gl_matrix_1.vec3.sqrDist(intersection, point), closestIntersectionPoint: point, distanceOriginToClosestIntersectionPointSquared: distance, restriction: __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f"), snapRestriction: this };
225
+ return {
226
+ targetPoint: intersection,
227
+ distanceClosestPointToTargetPointSquared: gl_matrix_1.vec3.sqrDist(intersection, point),
228
+ closestIntersectionPoint: point,
229
+ distanceOriginToClosestIntersectionPointSquared: distance,
230
+ restriction: __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f"),
231
+ snapRestriction: this,
232
+ };
198
233
  }
199
234
  // check which distance to the projection is smaller
200
- if (screenSpaceDistanceCheckNextAngle.distanceSquared < screenSpaceDistanceCheckPreviousAngle.distanceSquared) {
235
+ if (screenSpaceDistanceCheckNextAngle.distanceSquared <
236
+ screenSpaceDistanceCheckPreviousAngle.distanceSquared) {
201
237
  __classPrivateFieldSet(this, _AngularRestriction_labelNext, this.createGrid(__classPrivateFieldGet(this, _AngularRestriction_labelNext, "f"), nextPointFromData, closestAngleNext), "f");
202
238
  __classPrivateFieldGet(this, _AngularRestriction_activePolarGrids, "f").next = true;
203
239
  // reverse the projection to the original coordinate system
204
240
  gl_matrix_1.vec3.transformMat4(resultPointNextAngle, resultPointNextAngle, __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f").transformationFromXYPlaneMatrix);
205
- return { targetPoint: resultPointNextAngle, distanceClosestPointToTargetPointSquared: gl_matrix_1.vec3.sqrDist(resultPointNextAngle, point), closestIntersectionPoint: point, distanceOriginToClosestIntersectionPointSquared: distance, restriction: __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f"), snapRestriction: this };
241
+ return {
242
+ targetPoint: resultPointNextAngle,
243
+ distanceClosestPointToTargetPointSquared: gl_matrix_1.vec3.sqrDist(resultPointNextAngle, point),
244
+ closestIntersectionPoint: point,
245
+ distanceOriginToClosestIntersectionPointSquared: distance,
246
+ restriction: __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f"),
247
+ snapRestriction: this,
248
+ };
206
249
  }
207
250
  else {
208
251
  __classPrivateFieldSet(this, _AngularRestriction_labelPrevious, this.createGrid(__classPrivateFieldGet(this, _AngularRestriction_labelPrevious, "f"), previousPointFromData, closestAnglePrevious), "f");
209
252
  __classPrivateFieldGet(this, _AngularRestriction_activePolarGrids, "f").previous = true;
210
253
  // reverse the projection to the original coordinate system
211
254
  gl_matrix_1.vec3.transformMat4(resultPointPreviousAngle, resultPointPreviousAngle, __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f").transformationFromXYPlaneMatrix);
212
- return { targetPoint: resultPointPreviousAngle, distanceClosestPointToTargetPointSquared: gl_matrix_1.vec3.sqrDist(resultPointPreviousAngle, point), closestIntersectionPoint: point, distanceOriginToClosestIntersectionPointSquared: distance, restriction: __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f"), snapRestriction: this };
255
+ return {
256
+ targetPoint: resultPointPreviousAngle,
257
+ distanceClosestPointToTargetPointSquared: gl_matrix_1.vec3.sqrDist(resultPointPreviousAngle, point),
258
+ closestIntersectionPoint: point,
259
+ distanceOriginToClosestIntersectionPointSquared: distance,
260
+ restriction: __classPrivateFieldGet(this, _AngularRestriction_planeRestriction, "f"),
261
+ snapRestriction: this,
262
+ };
213
263
  }
214
264
  }
215
265
  updatePlaneDefinition() { }
@@ -237,20 +287,20 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
237
287
  let radius = viewer_1.sceneTree.root.boundingBox.boundingSphere.radius / 100;
238
288
  if (radius === Infinity)
239
289
  radius = 1;
240
- const text = document.createElement('div');
241
- text.className = 'label';
290
+ const text = document.createElement("div");
291
+ text.className = "label";
242
292
  label = new viewer_rendering_engine_rendering_engine_threejs_1.CSS2DObject(text);
243
- // remove the old style, if there is one
244
- document.head.querySelectorAll('style').forEach(style => {
293
+ // remove the old style, if there is one
294
+ document.head.querySelectorAll("style").forEach((style) => {
245
295
  var _a;
246
296
  if ((_a = style.textContent) === null || _a === void 0 ? void 0 : _a.includes(label.uuid))
247
297
  document.head.removeChild(style);
248
298
  });
249
- const parent = document.createElement('div');
299
+ const parent = document.createElement("div");
250
300
  parent.className = `angular-label-parent-${label.uuid}`;
251
- const child = document.createElement('div');
301
+ const child = document.createElement("div");
252
302
  child.className = `angular-label-${label.uuid}`;
253
- const style = document.createElement('style');
303
+ const style = document.createElement("style");
254
304
  style.textContent = `
255
305
  .angular-label-${label.uuid} {
256
306
  display: flex;
@@ -297,7 +347,8 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
297
347
  let closestAngle = __classPrivateFieldGet(this, _AngularRestriction_angles, "f")[0];
298
348
  for (let i = 0; i < __classPrivateFieldGet(this, _AngularRestriction_angles, "f").length; i++) {
299
349
  const angle = __classPrivateFieldGet(this, _AngularRestriction_angles, "f")[i];
300
- if (Math.abs(angleReference - angle) < Math.abs(angleReference - closestAngle))
350
+ if (Math.abs(angleReference - angle) <
351
+ Math.abs(angleReference - closestAngle))
301
352
  closestAngle = angle;
302
353
  }
303
354
  // move the point to the closest angle
@@ -305,7 +356,7 @@ class AngularRestriction extends AbstractSnapRestriction_1.AbstractSnapRestricti
305
356
  return {
306
357
  angularDifference,
307
358
  crossProduct,
308
- closestAngle
359
+ closestAngle,
309
360
  };
310
361
  }
311
362
  getNextIndex(index, positionArray) {
@@ -1 +1 @@
1
- {"version":3,"file":"AngularRestriction.js","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/AngularRestriction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AngularRestriction.js","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/AngularRestriction.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { AbstractSnapRestriction } from '../../AbstractSnapRestriction';
2
- import { ITreeNode, IViewportApi } from '@shapediver/viewer';
3
- import { GeometryMathManager } from '../../../GeometryMathManager';
4
- import { IRay } from '@shapediver/viewer.shared.types';
5
- import { ISnapRestriction, SnapRestrictionProperties } from '../../../../interfaces/ISnapRestriction';
6
- import { PlaneRestriction } from '../PlaneRestriction';
7
- import { RestrictionMetaData, RestrictionResult } from '../../../../interfaces/IRestriction';
8
- import { vec3 } from 'gl-matrix';
1
+ import { ITreeNode, IViewportApi } from "@shapediver/viewer";
2
+ import { IRay } from "@shapediver/viewer.shared.types";
3
+ import { vec3 } from "gl-matrix";
4
+ import { RestrictionMetaData, RestrictionResult } from "../../../../interfaces/IRestriction";
5
+ import { ISnapRestriction, SnapRestrictionProperties } from "../../../../interfaces/ISnapRestriction";
6
+ import { GeometryMathManager } from "../../../GeometryMathManager";
7
+ import { AbstractSnapRestriction } from "../../AbstractSnapRestriction";
8
+ import { PlaneRestriction } from "../PlaneRestriction";
9
9
  export declare type AxisRestrictionProperties = {
10
10
  activationKeyX?: string;
11
11
  activationKeyY?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"AxisRestriction.d.ts","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/AxisRestriction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAEH,SAAS,EACT,YAAY,EAEf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACtG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,oBAAY,yBAAyB,GAAG;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B,GAAG,yBAAyB,CAAC;AAM9B,qBAAa,eAAgB,SAAQ,uBAAwB,YAAW,gBAAgB;;gBAkBxE,QAAQ,EAAE,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,CAAC,EAAE,yBAAyB;IAoB/K,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED,IAAW,MAAM,CAAC,KAAK,EAAE,OAAO,EAI/B;IAED,IAAW,eAAe,IAAI,OAAO,CAEpC;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,QAAQ,CAAC,KAAK,EAAE,MAAM,EAEhC;IAMM,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,SAAS;IAkC7G,qBAAqB,IAAI,IAAI;IAQpC,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAYnD,OAAO,CAAC,uBAAuB;CAqClC"}
1
+ {"version":3,"file":"AxisRestriction.d.ts","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/AxisRestriction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,SAAS,EAAE,YAAY,EAAY,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAC,IAAI,EAAC,MAAM,iCAAiC,CAAC;AACrD,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAE/B,OAAO,EACN,mBAAmB,EACnB,iBAAiB,EACjB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACN,gBAAgB,EAChB,yBAAyB,EACzB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAC,mBAAmB,EAAC,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAC,uBAAuB,EAAC,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAIrD,oBAAY,yBAAyB,GAAG;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG,yBAAyB,CAAC;AAM9B,qBAAa,eACZ,SAAQ,uBACR,YAAW,gBAAgB;;gBAoB1B,QAAQ,EAAE,YAAY,EACtB,mBAAmB,EAAE,mBAAmB,EACxC,UAAU,EAAE,SAAS,EACrB,gBAAgB,EAAE,gBAAgB,EAClC,UAAU,CAAC,EAAE,yBAAyB;IAqBvC,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED,IAAW,MAAM,CAAC,KAAK,EAAE,OAAO,EAI/B;IAED,IAAW,eAAe,IAAI,OAAO,CAEpC;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,QAAQ,CAAC,KAAK,EAAE,MAAM,EAEhC;IAMM,IAAI,CACV,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,mBAAmB,GAC5B,iBAAiB,GAAG,SAAS;IAsIzB,qBAAqB,IAAI,IAAI;IAQpC,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAYnD,OAAO,CAAC,uBAAuB;CA+D/B"}