@shapediver/viewer.rendering-engine.intersection-restriction-engine 3.7.4 → 3.8.0

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 (52) hide show
  1. package/dist/implementation/RestrictionManager.d.ts.map +1 -1
  2. package/dist/implementation/RestrictionManager.js +55 -26
  3. package/dist/implementation/RestrictionManager.js.map +1 -1
  4. package/dist/implementation/restrictions/AbstractRestriction.d.ts +0 -1
  5. package/dist/implementation/restrictions/AbstractRestriction.d.ts.map +1 -1
  6. package/dist/implementation/restrictions/AbstractRestriction.js +6 -5
  7. package/dist/implementation/restrictions/AbstractRestriction.js.map +1 -1
  8. package/dist/implementation/restrictions/AbstractSnapRestriction.d.ts +1 -1
  9. package/dist/implementation/restrictions/AbstractSnapRestriction.d.ts.map +1 -1
  10. package/dist/implementation/restrictions/camera_plane/CameraPlaneRestriction.d.ts +2 -2
  11. package/dist/implementation/restrictions/camera_plane/CameraPlaneRestriction.d.ts.map +1 -1
  12. package/dist/implementation/restrictions/camera_plane/CameraPlaneRestriction.js +4 -5
  13. package/dist/implementation/restrictions/camera_plane/CameraPlaneRestriction.js.map +1 -1
  14. package/dist/implementation/restrictions/geometry/GeometryRestriction.d.ts +34 -3
  15. package/dist/implementation/restrictions/geometry/GeometryRestriction.d.ts.map +1 -1
  16. package/dist/implementation/restrictions/geometry/GeometryRestriction.js +54 -21
  17. package/dist/implementation/restrictions/geometry/GeometryRestriction.js.map +1 -1
  18. package/dist/implementation/restrictions/line/LineRestriction.d.ts +12 -3
  19. package/dist/implementation/restrictions/line/LineRestriction.d.ts.map +1 -1
  20. package/dist/implementation/restrictions/line/LineRestriction.js +50 -8
  21. package/dist/implementation/restrictions/line/LineRestriction.js.map +1 -1
  22. package/dist/implementation/restrictions/plane/PlaneRestriction.d.ts +2 -3
  23. package/dist/implementation/restrictions/plane/PlaneRestriction.d.ts.map +1 -1
  24. package/dist/implementation/restrictions/plane/PlaneRestriction.js +9 -10
  25. package/dist/implementation/restrictions/plane/PlaneRestriction.js.map +1 -1
  26. package/dist/implementation/restrictions/plane/snap/AngularRestriction.d.ts +1 -1
  27. package/dist/implementation/restrictions/plane/snap/AngularRestriction.d.ts.map +1 -1
  28. package/dist/implementation/restrictions/plane/snap/AngularRestriction.js +6 -6
  29. package/dist/implementation/restrictions/plane/snap/AngularRestriction.js.map +1 -1
  30. package/dist/implementation/restrictions/plane/snap/AxisRestriction.d.ts +1 -1
  31. package/dist/implementation/restrictions/plane/snap/AxisRestriction.d.ts.map +1 -1
  32. package/dist/implementation/restrictions/plane/snap/AxisRestriction.js +6 -5
  33. package/dist/implementation/restrictions/plane/snap/AxisRestriction.js.map +1 -1
  34. package/dist/implementation/restrictions/plane/snap/GridRestriction.d.ts +1 -1
  35. package/dist/implementation/restrictions/plane/snap/GridRestriction.d.ts.map +1 -1
  36. package/dist/implementation/restrictions/plane/snap/GridRestriction.js +2 -2
  37. package/dist/implementation/restrictions/plane/snap/GridRestriction.js.map +1 -1
  38. package/dist/implementation/restrictions/point/PointRestriction.d.ts +9 -3
  39. package/dist/implementation/restrictions/point/PointRestriction.d.ts.map +1 -1
  40. package/dist/implementation/restrictions/point/PointRestriction.js +29 -17
  41. package/dist/implementation/restrictions/point/PointRestriction.js.map +1 -1
  42. package/dist/index.d.ts +2 -2
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js.map +1 -1
  45. package/dist/interfaces/IRestriction.d.ts +51 -38
  46. package/dist/interfaces/IRestriction.d.ts.map +1 -1
  47. package/dist/interfaces/IRestriction.js +5 -10
  48. package/dist/interfaces/IRestriction.js.map +1 -1
  49. package/dist/interfaces/ISnapRestriction.d.ts +2 -1
  50. package/dist/interfaces/ISnapRestriction.d.ts.map +1 -1
  51. package/dist/interfaces/ISnapRestriction.js.map +1 -1
  52. package/package.json +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"AxisRestriction.js","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/AxisRestriction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AxisRestriction.js","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/AxisRestriction.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ export declare class GridRestriction extends AbstractSnapRestriction implements
31
31
  get gridUnitEditable(): boolean;
32
32
  get priority(): number;
33
33
  set priority(value: number);
34
- snap(ray: IRay, point: vec3, metaData: RestrictionMetaData): RestrictionResult | undefined;
34
+ snap(ray: IRay, point: vec3, distance: number, metaData: RestrictionMetaData): RestrictionResult | undefined;
35
35
  updatePlaneDefinition(): void;
36
36
  protected visibilityChanged(visible: boolean): void;
37
37
  private createGridVisualization;
@@ -1 +1 @@
1
- {"version":3,"file":"GridRestriction.d.ts","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/GridRestriction.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,yDAAyD,CAAC;AAC/E,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACpB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACtG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC;;GAEG;AACH,oBAAY,yBAAyB,GAAG;IACpC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B,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;IAuB/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,EAMhC;IAED,IAAW,gBAAgB,IAAI,OAAO,CAErC;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,QAAQ,CAAC,KAAK,EAAE,MAAM,EAEhC;IAOM,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,SAAS;IA+C1F,qBAAqB,IAAI,IAAI;IASpC,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAYnD,OAAO,CAAC,uBAAuB;IAiD/B,OAAO,CAAC,oBAAoB;CAQ/B"}
1
+ {"version":3,"file":"GridRestriction.d.ts","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/GridRestriction.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,yDAAyD,CAAC;AAC/E,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACpB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACtG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC;;GAEG;AACH,oBAAY,yBAAyB,GAAG;IACpC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B,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;IAuB/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,EAMhC;IAED,IAAW,gBAAgB,IAAI,OAAO,CAErC;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,QAAQ,CAAC,KAAK,EAAE,MAAM,EAEhC;IAOM,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,SAAS;IA+C5G,qBAAqB,IAAI,IAAI;IASpC,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAYnD,OAAO,CAAC,uBAAuB;IAiD/B,OAAO,CAAC,oBAAoB;CAQ/B"}
@@ -105,7 +105,7 @@ class GridRestriction extends AbstractSnapRestriction_1.AbstractSnapRestriction
105
105
  // #endregion Public Getters And Setters (8)
106
106
  // #region Public Methods (2)
107
107
  // public get
108
- snap(ray, point, metaData) {
108
+ snap(ray, point, distance, metaData) {
109
109
  var _a;
110
110
  // if the restriction is not enabled OR the activation key is set and the key is not pressed, return
111
111
  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, _GridRestriction_activationKey, "f")))
@@ -141,7 +141,7 @@ class GridRestriction extends AbstractSnapRestriction_1.AbstractSnapRestriction
141
141
  snappedOffset[2] = rotatedPoint[2];
142
142
  // Move the snapped point back to the original coordinate system
143
143
  const snappedPoint = gl_matrix_1.vec3.transformMat4(gl_matrix_1.vec3.create(), snappedOffset, __classPrivateFieldGet(this, _GridRestriction_planeRestriction, "f").transformationFromXYPlaneMatrix);
144
- return { point: snappedPoint, restriction: __classPrivateFieldGet(this, _GridRestriction_planeRestriction, "f"), snapRestriction: this };
144
+ return { targetPoint: snappedPoint, closestIntersectionPoint: point, distanceOriginToClosestIntersectionPointSquared: distance, distanceClosestPointToTargetPointSquared: gl_matrix_1.vec3.sqrDist(snappedPoint, point), restriction: __classPrivateFieldGet(this, _GridRestriction_planeRestriction, "f"), snapRestriction: this };
145
145
  }
146
146
  updatePlaneDefinition() {
147
147
  this.createOffsetFromUnit();
@@ -1 +1 @@
1
- {"version":3,"file":"GridRestriction.js","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/GridRestriction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GridRestriction.js","sourceRoot":"","sources":["../../../../../src/implementation/restrictions/plane/snap/GridRestriction.ts"],"names":[],"mappings":"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"}
@@ -6,19 +6,25 @@ import { ISnapRestriction } from '../../../interfaces/ISnapRestriction';
6
6
  import { ITreeNode, IViewportApi } from '@shapediver/viewer';
7
7
  import { IVisualizationSettings } from '../../../interfaces/IVisualizationSettings';
8
8
  import { vec3 } from 'gl-matrix';
9
- export declare type PointRestrictionProperties = {
9
+ export interface PointRestrictionProperties extends RestrictionPropertiesBase {
10
+ /**
11
+ * The location of the restriction.
12
+ */
10
13
  point: vec3;
14
+ /**
15
+ * The radius in which the restriction is active.
16
+ */
11
17
  radius?: number;
12
- } & RestrictionPropertiesBase;
18
+ }
13
19
  export declare class PointRestriction extends AbstractRestriction implements IRestriction {
14
20
  #private;
15
21
  constructor(viewport: IViewportApi, geometryMathManager: GeometryMathManager, parentNode: ITreeNode, id: string, settings: IVisualizationSettings, properties: PointRestrictionProperties);
16
22
  get point(): vec3;
17
- get priority(): number;
18
23
  get radius(): number;
19
24
  get snapRestrictions(): {
20
25
  [key: string]: ISnapRestriction;
21
26
  };
27
+ isWithinRadius(point: vec3): boolean;
22
28
  rayTrace(ray: IRay, metaData?: RestrictionMetaData): RestrictionResult | undefined;
23
29
  protected visibilityChanged(): void;
24
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PointRestriction.d.ts","sourceRoot":"","sources":["../../../../src/implementation/restrictions/point/PointRestriction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,yDAAyD,CAAC;AAC/E,OAAO,EACH,YAAY,EACZ,mBAAmB,EACnB,yBAAyB,EACzB,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,oBAAY,0BAA0B,GAAG;IACrC,KAAK,EAAE,IAAI,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,yBAAyB,CAAC;AAM9B,qBAAa,gBAAiB,SAAQ,mBAAoB,YAAW,YAAY;;gBAajE,QAAQ,EAAE,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,sBAAsB,EAAE,UAAU,EAAE,0BAA0B;IAYzL,IAAW,KAAK,IAAI,IAAI,CAEvB;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,gBAAgB,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAAC;KAAE,CAElE;IAMM,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,SAAS;IA2BzF,SAAS,CAAC,iBAAiB,IAAI,IAAI;CAGtC"}
1
+ {"version":3,"file":"PointRestriction.d.ts","sourceRoot":"","sources":["../../../../src/implementation/restrictions/point/PointRestriction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,yDAAyD,CAAC;AAC/E,OAAO,EACH,YAAY,EACZ,mBAAmB,EACnB,yBAAyB,EACzB,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,MAAM,WAAW,0BAA2B,SAAQ,yBAAyB;IACzE;;OAEG;IACH,KAAK,EAAE,IAAI,CAAC;IACZ;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD,qBAAa,gBAAiB,SAAQ,mBAAoB,YAAW,YAAY;;gBAajE,QAAQ,EAAE,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,sBAAsB,EAAE,UAAU,EAAE,0BAA0B;IAYzL,IAAW,KAAK,IAAI,IAAI,CAEvB;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,gBAAgB,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAAC;KAAE,CAElE;IAMM,cAAc,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO;IAIpC,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,SAAS;IA0CzF,SAAS,CAAC,iBAAiB,IAAI,IAAI;CAGtC"}
@@ -36,9 +36,6 @@ class PointRestriction extends AbstractRestriction_1.AbstractRestriction {
36
36
  get point() {
37
37
  return __classPrivateFieldGet(this, _PointRestriction_point, "f");
38
38
  }
39
- get priority() {
40
- return -1;
41
- }
42
39
  get radius() {
43
40
  return __classPrivateFieldGet(this, _PointRestriction_radius, "f");
44
41
  }
@@ -47,22 +44,37 @@ class PointRestriction extends AbstractRestriction_1.AbstractRestriction {
47
44
  }
48
45
  // #endregion Public Getters And Setters (4)
49
46
  // #region Public Methods (1)
47
+ isWithinRadius(point) {
48
+ return (gl_matrix_1.vec3.squaredDistance(point, __classPrivateFieldGet(this, _PointRestriction_point, "f")) <= (__classPrivateFieldGet(this, _PointRestriction_radius, "f") * __classPrivateFieldGet(this, _PointRestriction_radius, "f")));
49
+ }
50
50
  rayTrace(ray, metaData) {
51
- const closestPoint = gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), __classPrivateFieldGet(this, _PointRestriction_point, "f"), ray.origin);
52
- const directionDistance = gl_matrix_1.vec3.dot(closestPoint, ray.direction);
53
- if (directionDistance < 0) {
54
- gl_matrix_1.vec3.copy(closestPoint, ray.origin);
55
- }
56
- else {
57
- gl_matrix_1.vec3.multiply(closestPoint, gl_matrix_1.vec3.copy(closestPoint, ray.direction), gl_matrix_1.vec3.fromValues(directionDistance, directionDistance, directionDistance));
58
- gl_matrix_1.vec3.add(closestPoint, closestPoint, ray.origin);
59
- }
60
- const distance = gl_matrix_1.vec3.distance(closestPoint, __classPrivateFieldGet(this, _PointRestriction_point, "f"));
61
- if (distance < __classPrivateFieldGet(this, _PointRestriction_radius, "f")) {
51
+ const closestPointVector = gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), __classPrivateFieldGet(this, _PointRestriction_point, "f"), ray.origin);
52
+ const t = Math.max(0, gl_matrix_1.vec3.dot(closestPointVector, ray.direction));
53
+ const closestPoint = gl_matrix_1.vec3.create();
54
+ gl_matrix_1.vec3.scaleAndAdd(closestPoint, ray.origin, ray.direction, t);
55
+ const distance = gl_matrix_1.vec3.squaredDistance(closestPoint, __classPrivateFieldGet(this, _PointRestriction_point, "f"));
56
+ if (distance < __classPrivateFieldGet(this, _PointRestriction_radius, "f") * __classPrivateFieldGet(this, _PointRestriction_radius, "f")) {
57
+ // check if origin is inside the sphere
58
+ const distanceOrigin = gl_matrix_1.vec3.squaredDistance(ray.origin, __classPrivateFieldGet(this, _PointRestriction_point, "f"));
59
+ if (distanceOrigin < __classPrivateFieldGet(this, _PointRestriction_radius, "f") * __classPrivateFieldGet(this, _PointRestriction_radius, "f")) {
60
+ return {
61
+ closestIntersectionPoint: closestPoint,
62
+ distanceOriginToClosestIntersectionPointSquared: distanceOrigin,
63
+ targetPoint: __classPrivateFieldGet(this, _PointRestriction_point, "f"),
64
+ distanceClosestPointToTargetPointSquared: distance,
65
+ restriction: this
66
+ };
67
+ }
68
+ // now we calculate the closest point on the cylinder to the ray
69
+ const offset = Math.sqrt(__classPrivateFieldGet(this, _PointRestriction_radius, "f") * __classPrivateFieldGet(this, _PointRestriction_radius, "f") - distance);
70
+ // Compute the entry distance
71
+ const entry = t - offset;
72
+ const closestIntersectionPoint = gl_matrix_1.vec3.scaleAndAdd(gl_matrix_1.vec3.create(), ray.origin, ray.direction, entry);
62
73
  return {
63
- distance,
64
- point: __classPrivateFieldGet(this, _PointRestriction_point, "f"),
65
- closestPointOnRay: closestPoint,
74
+ closestIntersectionPoint: closestIntersectionPoint,
75
+ distanceOriginToClosestIntersectionPointSquared: entry * entry,
76
+ targetPoint: __classPrivateFieldGet(this, _PointRestriction_point, "f"),
77
+ distanceClosestPointToTargetPointSquared: distance,
66
78
  restriction: this,
67
79
  };
68
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PointRestriction.js","sourceRoot":"","sources":["../../../../src/implementation/restrictions/point/PointRestriction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gEAA6D;AAY7D,yCAAiC;AASjC,8BAA8B;AAE9B,sBAAsB;AAEtB,MAAa,gBAAiB,SAAQ,yCAAmB;IASrD,4BAA4B;IAE5B,2BAA2B;IAE3B,YAAY,QAAsB,EAAE,mBAAwC,EAAE,UAAqB,EAAE,EAAU,EAAE,QAAgC,EAAE,UAAsC;QACrL,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;QAbhD,yBAAyB;QAEzB,6CAAiC;QAEjC,0CAAa;QACb,2CAAgB;QAChB,6CAAyD,EAAE,EAAC;QASxD,uBAAA,IAAI,8BAAa,QAAQ,MAAA,CAAC;QAC1B,uBAAA,IAAI,2BAAU,UAAU,CAAC,KAAK,MAAA,CAAC;QAC/B,uBAAA,IAAI,4BAAW,UAAU,CAAC,MAAM,IAAI,CAAC,MAAA,CAAC;IAC1C,CAAC;IAED,8BAA8B;IAE9B,yCAAyC;IAEzC,IAAW,KAAK;QACZ,OAAO,uBAAA,IAAI,+BAAO,CAAC;IACvB,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IAED,IAAW,MAAM;QACb,OAAO,uBAAA,IAAI,gCAAQ,CAAC;IACxB,CAAC;IAED,IAAW,gBAAgB;QACvB,OAAO,uBAAA,IAAI,0CAAkB,CAAC;IAClC,CAAC;IAED,4CAA4C;IAE5C,6BAA6B;IAEtB,QAAQ,CAAC,GAAS,EAAE,QAA8B;QACrD,MAAM,YAAY,GAAG,gBAAI,CAAC,GAAG,CAAC,gBAAI,CAAC,MAAM,EAAE,EAAE,uBAAA,IAAI,+BAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACtE,MAAM,iBAAiB,GAAG,gBAAI,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;QAEhE,IAAI,iBAAiB,GAAG,CAAC,EAAE;YACvB,gBAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;SACvC;aAAM;YACH,gBAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,gBAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,SAAS,CAAC,EAAE,gBAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,CAAC;YAC9I,gBAAI,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;SACpD;QAED,MAAM,QAAQ,GAAG,gBAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,uBAAA,IAAI,+BAAO,CAAC,CAAC;QAC1D,IAAI,QAAQ,GAAG,uBAAA,IAAI,gCAAQ,EAAE;YACzB,OAAO;gBACH,QAAQ;gBACR,KAAK,EAAE,uBAAA,IAAI,+BAAO;gBAClB,iBAAiB,EAAE,YAAY;gBAC/B,WAAW,EAAE,IAAI;aACpB,CAAC;SACL;QACD,OAAO;IACX,CAAC;IAED,gCAAgC;IAEhC,gCAAgC;IAEtB,iBAAiB,KAAW,CAAC;CAG1C;AA3ED,4CA2EC;;AAED,yBAAyB"}
1
+ {"version":3,"file":"PointRestriction.js","sourceRoot":"","sources":["../../../../src/implementation/restrictions/point/PointRestriction.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -4,7 +4,7 @@ import { AxisRestrictionApi } from './api/implementation/plane/snap/AxisRestrict
4
4
  import { AxisRestrictionProperties } from './implementation/restrictions/plane/snap/AxisRestriction';
5
5
  import { CameraPlaneRestriction, CameraPlaneRestrictionProperties } from './implementation/restrictions/camera_plane/CameraPlaneRestriction';
6
6
  import { CameraPlaneRestrictionApi } from './api/implementation/camera_plane/CameraPlaneRestrictionApi';
7
- import { DraggingRestrictionMetaData, DrawingRestrictionMetaData, IRestriction, RayTraceResult, RESTRICTION_TYPE, RestrictionMetaData, RestrictionProperties } from './interfaces/IRestriction';
7
+ import { DraggingRestrictionMetaData, DrawingRestrictionMetaData, IRestriction, RayTraceResult, RESTRICTION_TYPE, RestrictionMetaData, RestrictionProperties, RestrictionPropertiesBase } from './interfaces/IRestriction';
8
8
  import { EventManager } from './implementation/EventManager';
9
9
  import { GeometryMathManager } from './implementation/GeometryMathManager';
10
10
  import { GeometryRestriction, GeometryRestrictionProperties } from './implementation/restrictions/geometry/GeometryRestriction';
@@ -25,6 +25,6 @@ import { PointRestriction, PointRestrictionProperties } from './implementation/r
25
25
  import { PointRestrictionApi } from './api/implementation/point/PointRestrictionApi';
26
26
  import { RestrictionManager } from './implementation/RestrictionManager';
27
27
  export { IRestrictionManager, RestrictionManager, EventManager, GeometryMathManager, IDragAnchor, IRestriction, ISnapRestriction, IVisualizationSettings };
28
- export { RESTRICTION_TYPE, RayTraceResult, RestrictionProperties, RestrictionMetaData, DrawingRestrictionMetaData, DraggingRestrictionMetaData, SnapRestrictionProperties, PlaneRestriction, PlaneRestrictionProperties, AngularRestrictionProperties, AxisRestrictionProperties, GridRestrictionProperties, GeometryRestriction, GeometryRestrictionProperties, PointRestriction, PointRestrictionProperties, LineRestriction, LineRestrictionProperties, CameraPlaneRestriction, CameraPlaneRestrictionProperties };
28
+ export { RESTRICTION_TYPE, RayTraceResult, RestrictionProperties, RestrictionMetaData, DrawingRestrictionMetaData, DraggingRestrictionMetaData, SnapRestrictionProperties, PlaneRestriction, PlaneRestrictionProperties, AngularRestrictionProperties, AxisRestrictionProperties, GridRestrictionProperties, GeometryRestriction, GeometryRestrictionProperties, PointRestriction, PointRestrictionProperties, LineRestriction, LineRestrictionProperties, CameraPlaneRestriction, CameraPlaneRestrictionProperties, RestrictionPropertiesBase };
29
29
  export { IRestrictionApi, ISnapRestrictionApi, PlaneRestrictionApi, AngularRestrictionApi, AxisRestrictionApi, GridRestrictionApi, GeometryRestrictionApi, CameraPlaneRestrictionApi, PointRestrictionApi, LineRestrictionApi };
30
30
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AAC9F,OAAO,EAAE,4BAA4B,EAAE,MAAM,6DAA6D,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,sBAAsB,EAAE,gCAAgC,EAAE,MAAM,mEAAmE,CAAC;AAC7I,OAAO,EAAE,yBAAyB,EAAE,MAAM,6DAA6D,CAAC;AACxG,OAAO,EACH,2BAA2B,EAC3B,0BAA0B,EAC1B,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACxB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,4DAA4D,CAAC;AAChI,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAChH,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AACpH,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AACpH,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAEzE,OAAO,EACH,mBAAmB,EAAE,kBAAkB,EAAE,YAAY,EAAE,mBAAmB,EAC1E,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,sBAAsB,EACtE,CAAC;AAEF,OAAO,EACH,gBAAgB,EAAE,cAAc,EAChC,qBAAqB,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,yBAAyB,EAC9H,gBAAgB,EAAE,0BAA0B,EAC5C,4BAA4B,EAAE,yBAAyB,EAAE,yBAAyB,EAClF,mBAAmB,EAAE,6BAA6B,EAClD,gBAAgB,EAAE,0BAA0B,EAC5C,eAAe,EAAE,yBAAyB,EAC1C,sBAAsB,EAAE,gCAAgC,EAC3D,CAAC;AAEF,OAAO,EACH,eAAe,EAAE,mBAAmB,EACpC,mBAAmB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,kBAAkB,EACjL,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AAC9F,OAAO,EAAE,4BAA4B,EAAE,MAAM,6DAA6D,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,sBAAsB,EAAE,gCAAgC,EAAE,MAAM,mEAAmE,CAAC;AAC7I,OAAO,EAAE,yBAAyB,EAAE,MAAM,6DAA6D,CAAC;AACxG,OAAO,EACH,2BAA2B,EAC3B,0BAA0B,EAC1B,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,yBAAyB,EAC5B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,4DAA4D,CAAC;AAChI,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAChH,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AACpH,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AACpH,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAEzE,OAAO,EACH,mBAAmB,EAAE,kBAAkB,EAAE,YAAY,EAAE,mBAAmB,EAC1E,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,sBAAsB,EACtE,CAAC;AAEF,OAAO,EACH,gBAAgB,EAAE,cAAc,EAChC,qBAAqB,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,yBAAyB,EAC9H,gBAAgB,EAAE,0BAA0B,EAC5C,4BAA4B,EAAE,yBAAyB,EAAE,yBAAyB,EAClF,mBAAmB,EAAE,6BAA6B,EAClD,gBAAgB,EAAE,0BAA0B,EAC5C,eAAe,EAAE,yBAAyB,EAC1C,sBAAsB,EAAE,gCAAgC,EACxD,yBAAyB,EAC5B,CAAC;AAEF,OAAO,EACH,eAAe,EAAE,mBAAmB,EACpC,mBAAmB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,kBAAkB,EACjL,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,iGAA8F;AAqDrE,sGArDhB,6CAAqB,OAqDgB;AAnD9C,2FAAwF;AAmDxC,mGAnDvC,uCAAkB,OAmDuC;AAjDlE,8GAA6I;AA4CzI,uGA5CK,+CAAsB,OA4CL;AA3C1B,2GAAwG;AAgDQ,0GAhDvG,qDAAyB,OAgDuG;AA/CzI,4DAQmC;AA2B/B,iGA9BA,+BAAgB,OA8BA;AA1BpB,gEAA6D;AAqBhB,6FArBpC,2BAAY,OAqBoC;AApBzD,8EAA2E;AAoBhB,oGApBlD,yCAAmB,OAoBkD;AAnB9E,oGAAgI;AA4B5H,oGA5BK,yCAAmB,OA4BL;AA3BvB,iGAA8F;AAmCN,uGAnC/E,+CAAsB,OAmC+E;AAlC9G,2FAAwF;AAkCpB,mGAlC3D,uCAAkB,OAkC2D;AA1BtF,wFAAgH;AAoB5G,gGApBK,iCAAe,OAoBL;AAnBnB,qFAAkF;AAyB8E,mGAzBvJ,uCAAkB,OAyBuJ;AAxBlL,2FAAoH;AAchH,iGAdK,mCAAgB,OAcL;AAbpB,wFAAqF;AAuBjF,oGAvBK,yCAAmB,OAuBL;AAtBvB,2FAAoH;AAehH,iGAfK,mCAAgB,OAeL;AAdpB,wFAAqF;AAqBsD,oGArBlI,yCAAmB,OAqBkI;AApB9J,4EAAyE;AAGhD,mGAHhB,uCAAkB,OAGgB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,iGAA8F;AAuDrE,sGAvDhB,6CAAqB,OAuDgB;AArD9C,2FAAwF;AAqDxC,mGArDvC,uCAAkB,OAqDuC;AAnDlE,8GAA6I;AA6CzI,uGA7CK,+CAAsB,OA6CL;AA5C1B,2GAAwG;AAkDQ,0GAlDvG,qDAAyB,OAkDuG;AAjDzI,4DASmC;AA2B/B,iGA/BA,+BAAgB,OA+BA;AA1BpB,gEAA6D;AAqBhB,6FArBpC,2BAAY,OAqBoC;AApBzD,8EAA2E;AAoBhB,oGApBlD,yCAAmB,OAoBkD;AAnB9E,oGAAgI;AA4B5H,oGA5BK,yCAAmB,OA4BL;AA3BvB,iGAA8F;AAoCN,uGApC/E,+CAAsB,OAoC+E;AAnC9G,2FAAwF;AAmCpB,mGAnC3D,uCAAkB,OAmC2D;AA3BtF,wFAAgH;AAoB5G,gGApBK,iCAAe,OAoBL;AAnBnB,qFAAkF;AA0B8E,mGA1BvJ,uCAAkB,OA0BuJ;AAzBlL,2FAAoH;AAchH,iGAdK,mCAAgB,OAcL;AAbpB,wFAAqF;AAwBjF,oGAxBK,yCAAmB,OAwBL;AAvBvB,2FAAoH;AAehH,iGAfK,mCAAgB,OAeL;AAdpB,wFAAqF;AAsBsD,oGAtBlI,yCAAmB,OAsBkI;AArB9J,4EAAyE;AAGhD,mGAHhB,uCAAkB,OAGgB"}
@@ -1,39 +1,20 @@
1
- import { IDragAnchor } from './IDragAnchor';
2
- import { IRay } from '@shapediver/viewer.rendering-engine.intersection-engine';
3
- import { ISnapRestriction } from './ISnapRestriction';
4
- import { ITreeNode } from '@shapediver/viewer.shared.node-tree';
5
1
  import { mat4, vec3 } from 'gl-matrix';
6
- import { PointRestrictionProperties } from '../implementation/restrictions/point/PointRestriction';
7
2
  import { CameraPlaneRestrictionProperties } from '../implementation/restrictions/camera_plane/CameraPlaneRestriction';
8
3
  import { GeometryRestrictionProperties } from '../implementation/restrictions/geometry/GeometryRestriction';
9
4
  import { LineRestrictionProperties } from '../implementation/restrictions/line/LineRestriction';
10
5
  import { PlaneRestrictionProperties } from '../implementation/restrictions/plane/PlaneRestriction';
11
- export declare type RayTraceResult = {
12
- distance?: number;
13
- transformation?: mat4;
14
- dragAnchor?: IDragAnchor;
15
- point: vec3;
16
- restriction: IRestriction | ISnapRestriction;
17
- };
18
- export declare type RestrictionProperties = PointRestrictionProperties | PlaneRestrictionProperties | LineRestrictionProperties | GeometryRestrictionProperties | CameraPlaneRestrictionProperties;
19
- export declare type RestrictionPropertiesBase = {
20
- id?: string;
21
- /**
22
- * Type of the restriction
23
- */
24
- type: RESTRICTION_TYPE;
25
- rotation?: {
26
- axis: vec3;
27
- angle: number;
28
- };
29
- };
30
- export declare type RestrictionResult = {
31
- point: vec3;
32
- closestPointOnRay?: vec3;
33
- distance?: number;
34
- restriction: IRestriction;
35
- snapRestriction?: ISnapRestriction;
36
- };
6
+ import { PointRestrictionProperties } from '../implementation/restrictions/point/PointRestriction';
7
+ import { IDragAnchor } from './IDragAnchor';
8
+ import { ISnapRestriction } from './ISnapRestriction';
9
+ import { IRay } from '@shapediver/viewer.rendering-engine.intersection-engine';
10
+ import { ITreeNode } from '@shapediver/viewer.shared.node-tree';
11
+ export declare enum RESTRICTION_TYPE {
12
+ PLANE = "plane",
13
+ GEOMETRY = "geometry",
14
+ POINT = "point",
15
+ LINE = "line",
16
+ CAMERA_PLANE = "camera_plane"
17
+ }
37
18
  export interface DraggingRestrictionMetaData extends RestrictionMetaData {
38
19
  dragAnchors?: IDragAnchor[];
39
20
  dragOrigin: vec3;
@@ -77,13 +58,45 @@ export interface RestrictionMetaData {
77
58
  startPoint?: vec3;
78
59
  type: 'drawing' | 'dragging';
79
60
  }
80
- export declare enum RESTRICTION_TYPE {
81
- PLANE = "plane",
82
- GEOMETRY = "geometry",
83
- POINT = "point",
84
- LINE = "line",
85
- CAMERA_PLANE = "camera_plane"
61
+ export interface RestrictionPropertiesBase {
62
+ /**
63
+ * The id of the restriction.
64
+ */
65
+ id?: string;
66
+ /**
67
+ * The priority of the restriction.
68
+ */
69
+ priority?: number;
70
+ /**
71
+ * The rotation of the object after the restriction is applied.
72
+ */
73
+ rotation?: {
74
+ axis: vec3;
75
+ angle: number;
76
+ };
77
+ /**
78
+ * Type of the restriction
79
+ */
80
+ type: RESTRICTION_TYPE;
86
81
  }
87
- export declare const isDrawingRestriction: (metaData?: RestrictionMetaData) => metaData is DrawingRestrictionMetaData;
82
+ export declare type RayTraceResult = {
83
+ distance?: number;
84
+ distanceSquared?: number;
85
+ dragAnchor?: IDragAnchor;
86
+ point: vec3;
87
+ closestPointOnRay?: vec3;
88
+ restriction: IRestriction;
89
+ transformation?: mat4;
90
+ };
91
+ export declare type RestrictionProperties = PointRestrictionProperties | PlaneRestrictionProperties | LineRestrictionProperties | GeometryRestrictionProperties | CameraPlaneRestrictionProperties;
92
+ export declare type RestrictionResult = {
93
+ closestIntersectionPoint: vec3;
94
+ distanceOriginToClosestIntersectionPointSquared: number;
95
+ targetPoint: vec3;
96
+ distanceClosestPointToTargetPointSquared: number;
97
+ restriction: IRestriction;
98
+ snapRestriction?: ISnapRestriction;
99
+ };
88
100
  export declare const isDraggingRestriction: (metaData?: RestrictionMetaData) => metaData is DraggingRestrictionMetaData;
101
+ export declare const isDrawingRestriction: (metaData?: RestrictionMetaData) => metaData is DrawingRestrictionMetaData;
89
102
  //# sourceMappingURL=IRestriction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IRestriction.d.ts","sourceRoot":"","sources":["../../src/interfaces/IRestriction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IRestriction.d.ts","sourceRoot":"","sources":["../../src/interfaces/IRestriction.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isDraggingRestriction = exports.isDrawingRestriction = exports.RESTRICTION_TYPE = void 0;
4
- // #endregion Interfaces (4)
5
- // #region Enums (1)
3
+ exports.isDrawingRestriction = exports.isDraggingRestriction = exports.RESTRICTION_TYPE = void 0;
6
4
  var RESTRICTION_TYPE;
7
5
  (function (RESTRICTION_TYPE) {
8
6
  RESTRICTION_TYPE["PLANE"] = "plane";
@@ -11,15 +9,12 @@ var RESTRICTION_TYPE;
11
9
  RESTRICTION_TYPE["LINE"] = "line";
12
10
  RESTRICTION_TYPE["CAMERA_PLANE"] = "camera_plane";
13
11
  })(RESTRICTION_TYPE = exports.RESTRICTION_TYPE || (exports.RESTRICTION_TYPE = {}));
14
- // #endregion Enums (1)
15
- // #region Variables (2)
16
- const isDrawingRestriction = (metaData) => {
17
- return (metaData === null || metaData === void 0 ? void 0 : metaData.type) === 'drawing';
18
- };
19
- exports.isDrawingRestriction = isDrawingRestriction;
20
12
  const isDraggingRestriction = (metaData) => {
21
13
  return (metaData === null || metaData === void 0 ? void 0 : metaData.type) === 'dragging';
22
14
  };
23
15
  exports.isDraggingRestriction = isDraggingRestriction;
24
- // #endregion Variables (2)
16
+ const isDrawingRestriction = (metaData) => {
17
+ return (metaData === null || metaData === void 0 ? void 0 : metaData.type) === 'drawing';
18
+ };
19
+ exports.isDrawingRestriction = isDrawingRestriction;
25
20
  //# sourceMappingURL=IRestriction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IRestriction.js","sourceRoot":"","sources":["../../src/interfaces/IRestriction.ts"],"names":[],"mappings":";;;AAqGA,4BAA4B;AAE5B,oBAAoB;AAEpB,IAAY,gBAMX;AAND,WAAY,gBAAgB;IACxB,mCAAe,CAAA;IACf,yCAAqB,CAAA;IACrB,mCAAe,CAAA;IACf,iCAAa,CAAA;IACb,iDAA6B,CAAA;AACjC,CAAC,EANW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAM3B;AAED,uBAAuB;AAEvB,wBAAwB;AAEjB,MAAM,oBAAoB,GAAG,CAAC,QAA8B,EAA0C,EAAE;IAC3G,OAAO,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,MAAK,SAAS,CAAC;AACxC,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B;AACK,MAAM,qBAAqB,GAAG,CAAC,QAA8B,EAA2C,EAAE;IAC7G,OAAO,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,MAAK,UAAU,CAAC;AACzC,CAAC,CAAC;AAFW,QAAA,qBAAqB,yBAEhC;AAEF,2BAA2B"}
1
+ {"version":3,"file":"IRestriction.js","sourceRoot":"","sources":["../../src/interfaces/IRestriction.ts"],"names":[],"mappings":";;;AAYA,IAAY,gBAMX;AAND,WAAY,gBAAgB;IACxB,mCAAe,CAAA;IACf,yCAAqB,CAAA;IACrB,mCAAe,CAAA;IACf,iCAAa,CAAA;IACb,iDAA6B,CAAA;AACjC,CAAC,EANW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAM3B;AAiGM,MAAM,qBAAqB,GAAG,CAAC,QAA8B,EAA2C,EAAE;IAC7G,OAAO,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,MAAK,UAAU,CAAC;AACzC,CAAC,CAAC;AAFW,QAAA,qBAAqB,yBAEhC;AACK,MAAM,oBAAoB,GAAG,CAAC,QAA8B,EAA0C,EAAE;IAC3G,OAAO,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,MAAK,SAAS,CAAC;AACxC,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B"}
@@ -59,9 +59,10 @@ export interface ISnapRestriction {
59
59
  *
60
60
  * @param ray The ray that is used for the restriction.
61
61
  * @param point The position of the point.
62
+ * @param distance The distance of the point to the ray.
62
63
  * @param metaData The meta data of the point.
63
64
  * @returns The restricted position of the point.
64
65
  */
65
- snap(ray: IRay, point: vec3, metaData?: RestrictionMetaData): RestrictionResult | undefined;
66
+ snap(ray: IRay, point: vec3, distance: number, metaData?: RestrictionMetaData): RestrictionResult | undefined;
66
67
  }
67
68
  //# sourceMappingURL=ISnapRestriction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ISnapRestriction.d.ts","sourceRoot":"","sources":["../../src/interfaces/ISnapRestriction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yDAAyD,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,oBAAY,yBAAyB,GAAG;IACpC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAMF,MAAM,WAAW,gBAAgB;IAG7B;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAM3B;;OAEG;IACH,mBAAmB,IAAI,IAAI,CAAC;IAC5B;;;;;;;OAOG;IACH,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,SAAS,CAAC;CAG/F"}
1
+ {"version":3,"file":"ISnapRestriction.d.ts","sourceRoot":"","sources":["../../src/interfaces/ISnapRestriction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yDAAyD,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,oBAAY,yBAAyB,GAAG;IACpC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAMF,MAAM,WAAW,gBAAgB;IAG7B;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAM3B;;OAEG;IACH,mBAAmB,IAAI,IAAI,CAAC;IAC5B;;;;;;;;OAQG;IACH,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,SAAS,CAAC;CAGjH"}
@@ -1 +1 @@
1
- {"version":3,"file":"ISnapRestriction.js","sourceRoot":"","sources":["../../src/interfaces/ISnapRestriction.ts"],"names":[],"mappings":";;AAqFA,4BAA4B"}
1
+ {"version":3,"file":"ISnapRestriction.js","sourceRoot":"","sources":["../../src/interfaces/ISnapRestriction.ts"],"names":[],"mappings":";;AAsFA,4BAA4B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shapediver/viewer.rendering-engine.intersection-restriction-engine",
3
- "version": "3.7.4",
3
+ "version": "3.8.0",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "author": "Michael Oppitz <michael@shapediver.com>",
@@ -39,16 +39,16 @@
39
39
  "testEnvironment": "node"
40
40
  },
41
41
  "dependencies": {
42
- "@shapediver/viewer": "3.7.4",
43
- "@shapediver/viewer.rendering-engine.intersection-engine": "3.7.4",
44
- "@shapediver/viewer.rendering-engine.rendering-engine-threejs": "3.7.4",
45
- "@shapediver/viewer.shared.math": "3.7.4",
46
- "@shapediver/viewer.shared.node-tree": "3.7.4",
47
- "@shapediver/viewer.shared.services": "3.7.4",
48
- "@shapediver/viewer.shared.types": "3.7.4",
42
+ "@shapediver/viewer": "3.8.0",
43
+ "@shapediver/viewer.rendering-engine.intersection-engine": "3.8.0",
44
+ "@shapediver/viewer.rendering-engine.rendering-engine-threejs": "3.8.0",
45
+ "@shapediver/viewer.shared.math": "3.8.0",
46
+ "@shapediver/viewer.shared.node-tree": "3.8.0",
47
+ "@shapediver/viewer.shared.services": "3.8.0",
48
+ "@shapediver/viewer.shared.types": "3.8.0",
49
49
  "@types/three": "0.162.0",
50
50
  "gl-matrix": "3.3.0",
51
51
  "three": "0.162.0"
52
52
  },
53
- "gitHead": "8ef2f3d1099d93d207009054e8803065ece8c7f2"
53
+ "gitHead": "e34efec491807ef9c8cdaef246aefe90b3c21a96"
54
54
  }