@shapediver/viewer.rendering-engine.intersection-restriction-engine 3.8.10 → 3.8.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/implementation/RestrictionManager.d.ts.map +1 -1
- package/dist/implementation/RestrictionManager.js +13 -23
- package/dist/implementation/RestrictionManager.js.map +1 -1
- package/dist/implementation/restrictions/geometry/GeometryRestriction.d.ts +10 -1
- package/dist/implementation/restrictions/geometry/GeometryRestriction.d.ts.map +1 -1
- package/dist/implementation/restrictions/geometry/GeometryRestriction.js +35 -11
- package/dist/implementation/restrictions/geometry/GeometryRestriction.js.map +1 -1
- package/dist/interfaces/IRestriction.d.ts +1 -0
- package/dist/interfaces/IRestriction.d.ts.map +1 -1
- package/dist/interfaces/IRestriction.js.map +1 -1
- package/package.json +9 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestrictionManager.d.ts","sourceRoot":"","sources":["../../src/implementation/RestrictionManager.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,2BAA2B,EAC3B,0BAA0B,EAC1B,YAAY,EAEZ,cAAc,EAEd,qBAAqB,EAExB,MAAM,4BAA4B,CAAC;AAIpC,OAAO,
|
|
1
|
+
{"version":3,"file":"RestrictionManager.d.ts","sourceRoot":"","sources":["../../src/implementation/RestrictionManager.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,2BAA2B,EAC3B,0BAA0B,EAC1B,YAAY,EAEZ,cAAc,EAEd,qBAAqB,EAExB,MAAM,4BAA4B,CAAC;AAIpC,OAAO,EAAsC,IAAI,EAAE,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAY,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAa,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAM9E,qBAAa,kBAAmB,YAAW,mBAAmB;;gBAgCtD,QAAQ,EAAE,YAAY,EACtB,UAAU,GAAE,SAA0B,EACtC,YAAY,CAAC,EAAE,qBAAqB,EAAE,EACtC,QAAQ,CAAC,EAAE,sBAAsB;IA+BrC,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED,IAAW,YAAY,IAAI;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAAA;KAAE,CAE3D;IAED,IAAW,4BAA4B,IAAI,OAAO,CAEjD;IAED,IAAW,4BAA4B,CAAC,KAAK,EAAE,OAAO,EAQrD;IAMM,cAAc,CAAC,UAAU,EAAE,qBAAqB,GAAG,MAAM,GAAG,SAAS;IA0DrE,KAAK,IAAI,IAAI;IASb,cAAc,IAAI,MAAM,EAAE;IAI1B,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIvD,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,0BAA0B,GAAG,2BAA2B,GAAG,cAAc,GAAG,SAAS;IA0GnH,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAchD,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,OAAO;IAKf,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,IAAI;CAKf"}
|
|
@@ -10,7 +10,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
10
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
11
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
12
|
};
|
|
13
|
-
var
|
|
13
|
+
var _RestrictionManager_eventManager, _RestrictionManager_geometryMathManager, _RestrictionManager_parentNode, _RestrictionManager_restrictions, _RestrictionManager_settings, _RestrictionManager_uuidGenerator, _RestrictionManager_viewport, _RestrictionManager_closed, _RestrictionManager_keysPressed, _RestrictionManager_restrictionManagerNode, _RestrictionManager_showRestrictionVisualization;
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.RestrictionManager = void 0;
|
|
16
16
|
const RestrictionsHelper_1 = require("./restrictions/RestrictionsHelper");
|
|
@@ -30,7 +30,6 @@ class RestrictionManager {
|
|
|
30
30
|
// #region Constructors (1)
|
|
31
31
|
constructor(viewport, parentNode = viewer_1.sceneTree.root, restrictions, settings) {
|
|
32
32
|
// #region Properties (11)
|
|
33
|
-
_RestrictionManager_eventEngine.set(this, viewer_shared_services_1.EventEngine.instance);
|
|
34
33
|
_RestrictionManager_eventManager.set(this, void 0);
|
|
35
34
|
_RestrictionManager_geometryMathManager.set(this, void 0);
|
|
36
35
|
_RestrictionManager_parentNode.set(this, void 0);
|
|
@@ -53,8 +52,6 @@ class RestrictionManager {
|
|
|
53
52
|
_RestrictionManager_keysPressed.set(this, {});
|
|
54
53
|
_RestrictionManager_restrictionManagerNode.set(this, void 0);
|
|
55
54
|
_RestrictionManager_showRestrictionVisualization.set(this, false);
|
|
56
|
-
_RestrictionManager_sceneBoundingSphereRadius.set(this, void 0);
|
|
57
|
-
_RestrictionManager_sceneBoundingBoxChangeToken.set(this, '');
|
|
58
55
|
__classPrivateFieldSet(this, _RestrictionManager_viewport, viewport, "f");
|
|
59
56
|
__classPrivateFieldSet(this, _RestrictionManager_parentNode, parentNode, "f");
|
|
60
57
|
__classPrivateFieldSet(this, _RestrictionManager_restrictionManagerNode, new viewer_shared_node_tree_1.TreeNode('RestrictionManager'), "f");
|
|
@@ -63,18 +60,6 @@ class RestrictionManager {
|
|
|
63
60
|
if (settings)
|
|
64
61
|
__classPrivateFieldSet(this, _RestrictionManager_settings, settings, "f");
|
|
65
62
|
__classPrivateFieldSet(this, _RestrictionManager_geometryMathManager, new GeometryMathManager_1.GeometryMathManager(__classPrivateFieldGet(this, _RestrictionManager_viewport, "f"), __classPrivateFieldGet(this, _RestrictionManager_settings, "f")), "f");
|
|
66
|
-
/**
|
|
67
|
-
* When the scene bounding box changes, we store the new bounding sphere radius of the scene.
|
|
68
|
-
* This is necessary as with that radius, we calculate the relative threshold for the distance comparison.
|
|
69
|
-
*/
|
|
70
|
-
__classPrivateFieldSet(this, _RestrictionManager_sceneBoundingSphereRadius, viewer_1.sceneTree.root.boundingBox.boundingSphere.radius, "f");
|
|
71
|
-
__classPrivateFieldSet(this, _RestrictionManager_sceneBoundingBoxChangeToken, __classPrivateFieldGet(this, _RestrictionManager_eventEngine, "f").addListener(viewer_shared_services_1.EVENTTYPE.SCENE.SCENE_BOUNDING_BOX_CHANGE, (e) => {
|
|
72
|
-
const event = e;
|
|
73
|
-
if (event.viewportId === __classPrivateFieldGet(this, _RestrictionManager_viewport, "f").id) {
|
|
74
|
-
const boundingBox = new viewer_1.Box(event.boundingBox.min, event.boundingBox.max);
|
|
75
|
-
__classPrivateFieldSet(this, _RestrictionManager_sceneBoundingSphereRadius, boundingBox.boundingSphere.radius, "f");
|
|
76
|
-
}
|
|
77
|
-
}), "f");
|
|
78
63
|
__classPrivateFieldSet(this, _RestrictionManager_eventManager, new EventManager_1.EventManager(__classPrivateFieldGet(this, _RestrictionManager_viewport, "f"), {
|
|
79
64
|
onDown: this.onDown.bind(this),
|
|
80
65
|
onUp: this.onUp.bind(this),
|
|
@@ -137,7 +122,6 @@ class RestrictionManager {
|
|
|
137
122
|
}
|
|
138
123
|
close() {
|
|
139
124
|
__classPrivateFieldSet(this, _RestrictionManager_closed, true, "f");
|
|
140
|
-
__classPrivateFieldGet(this, _RestrictionManager_eventEngine, "f").removeListener(__classPrivateFieldGet(this, _RestrictionManager_sceneBoundingBoxChangeToken, "f"));
|
|
141
125
|
__classPrivateFieldGet(this, _RestrictionManager_parentNode, "f").removeChild(__classPrivateFieldGet(this, _RestrictionManager_restrictionManagerNode, "f"));
|
|
142
126
|
__classPrivateFieldGet(this, _RestrictionManager_parentNode, "f").updateVersion(false, false);
|
|
143
127
|
__classPrivateFieldGet(this, _RestrictionManager_eventManager, "f").close();
|
|
@@ -205,11 +189,17 @@ class RestrictionManager {
|
|
|
205
189
|
// check if the closest restriction is actually hidden
|
|
206
190
|
const sceneRayTrace = __classPrivateFieldGet(this, _RestrictionManager_viewport, "f").raytraceScene(ray.origin, ray.direction, [filter]);
|
|
207
191
|
if (sceneRayTrace.length > 0) {
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
192
|
+
const squaredDistanceSceneRayTrace = sceneRayTrace[0].distance * sceneRayTrace[0].distance;
|
|
193
|
+
if (squaredDistanceSceneRayTrace < restrictionResult.distanceOriginToClosestIntersectionPointSquared) {
|
|
194
|
+
// the second check is to make sure that the geometry data of the geometry restriction and the scene ray trace is available
|
|
195
|
+
if (restrictionResult.restriction.type !== IRestriction_1.RESTRICTION_TYPE.GEOMETRY || (restrictionResult.restriction.type === IRestriction_1.RESTRICTION_TYPE.GEOMETRY && (!restrictionResult.restrictionIntersectionData || !sceneRayTrace[0].data)))
|
|
196
|
+
return;
|
|
197
|
+
const geometryRestrictionIntersectionData = restrictionResult.restrictionIntersectionData;
|
|
198
|
+
// it is NOT the same geometry
|
|
199
|
+
if (!(geometryRestrictionIntersectionData.geometryData.id === sceneRayTrace[0].data.id &&
|
|
200
|
+
geometryRestrictionIntersectionData.geometryData.version === sceneRayTrace[0].data.version))
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
213
203
|
}
|
|
214
204
|
// deactivate the visualization of all restrictions that are not hit
|
|
215
205
|
for (const restriction of Object.values(__classPrivateFieldGet(this, _RestrictionManager_restrictions, "f"))) {
|
|
@@ -278,5 +268,5 @@ class RestrictionManager {
|
|
|
278
268
|
}
|
|
279
269
|
}
|
|
280
270
|
exports.RestrictionManager = RestrictionManager;
|
|
281
|
-
|
|
271
|
+
_RestrictionManager_eventManager = new WeakMap(), _RestrictionManager_geometryMathManager = new WeakMap(), _RestrictionManager_parentNode = new WeakMap(), _RestrictionManager_restrictions = new WeakMap(), _RestrictionManager_settings = new WeakMap(), _RestrictionManager_uuidGenerator = new WeakMap(), _RestrictionManager_viewport = new WeakMap(), _RestrictionManager_closed = new WeakMap(), _RestrictionManager_keysPressed = new WeakMap(), _RestrictionManager_restrictionManagerNode = new WeakMap(), _RestrictionManager_showRestrictionVisualization = new WeakMap();
|
|
282
272
|
//# sourceMappingURL=RestrictionManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestrictionManager.js","sourceRoot":"","sources":["../../src/implementation/RestrictionManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,0EAAwE;AACxE,+FAA8H;AAC9H,6DASoC;AACpC,iDAA8C;AAC9C,+DAA4D;AAC5D,
|
|
1
|
+
{"version":3,"file":"RestrictionManager.js","sourceRoot":"","sources":["../../src/implementation/RestrictionManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AbstractRestriction } from '../AbstractRestriction';
|
|
2
2
|
import { GeometryMathManager } from '../../GeometryMathManager';
|
|
3
|
-
import { IRay } from '@shapediver/viewer.shared.types';
|
|
3
|
+
import { IGeometryData, IRay } from '@shapediver/viewer.shared.types';
|
|
4
4
|
import { IRestriction, RestrictionMetaData, RestrictionPropertiesBase, RestrictionResult } from '../../../interfaces/IRestriction';
|
|
5
5
|
import { ISnapRestriction } from '../../../interfaces/ISnapRestriction';
|
|
6
6
|
import { ITreeNode } from '@shapediver/viewer.shared.node-tree';
|
|
@@ -40,9 +40,18 @@ export interface GeometryRestrictionProperties extends RestrictionPropertiesBase
|
|
|
40
40
|
*/
|
|
41
41
|
snapToFaces?: boolean;
|
|
42
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* The data of the intersection of the geometry restriction.
|
|
45
|
+
* This data is forwarded for internal use.
|
|
46
|
+
*/
|
|
47
|
+
export interface GeometryRestrictionIntersectionData {
|
|
48
|
+
node: ITreeNode;
|
|
49
|
+
geometryData: IGeometryData;
|
|
50
|
+
}
|
|
43
51
|
export declare class GeometryRestriction extends AbstractRestriction implements IRestriction {
|
|
44
52
|
#private;
|
|
45
53
|
constructor(viewport: IViewportApi, geometryMathManager: GeometryMathManager, parentNode: ITreeNode, id: string, settings: IVisualizationSettings, properties: GeometryRestrictionProperties);
|
|
54
|
+
get nodes(): ITreeNode[];
|
|
46
55
|
get snapRestrictions(): {
|
|
47
56
|
[key: string]: ISnapRestriction;
|
|
48
57
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeometryRestriction.d.ts","sourceRoot":"","sources":["../../../../src/implementation/restrictions/geometry/GeometryRestriction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"GeometryRestriction.d.ts","sourceRoot":"","sources":["../../../../src/implementation/restrictions/geometry/GeometryRestriction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAgB,aAAa,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACpF,OAAO,EACH,YAAY,EACZ,mBAAmB,EACnB,yBAAyB,EACzB,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAa,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AAMpF,MAAM,WAAW,6BAA8B,SAAQ,yBAAyB;IAC5E;;OAEG;IACH,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;AAGD;;;GAGG;AACH,MAAM,WAAW,mCAAmC;IAChD,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,aAAa,CAAC;CAC/B;AAMD,qBAAa,mBAAoB,SAAQ,mBAAoB,YAAW,YAAY;;gBAmCpE,QAAQ,EAAE,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,sBAAsB,EAAE,UAAU,EAAE,6BAA6B;IA+B5L,IAAW,KAAK,IAAI,SAAS,EAAE,CAE9B;IAED,IAAW,gBAAgB,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAAC;KAAE,CAElE;IAED,IAAW,WAAW,IAAI,OAAO,CAEhC;IAED,IAAW,WAAW,CAAC,KAAK,EAAE,OAAO,EAEpC;IAED,IAAW,WAAW,IAAI,OAAO,CAEhC;IAED,IAAW,WAAW,CAAC,KAAK,EAAE,OAAO,EAEpC;IAED,IAAW,cAAc,IAAI,OAAO,CAEnC;IAED,IAAW,cAAc,CAAC,KAAK,EAAE,OAAO,EAEvC;IAMM,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,SAAS;IAkIlF,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE;IAmCrC,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAMnC,OAAO,CAAC,4BAA4B;IAMpC,OAAO,CAAC,0BAA0B;IAYlC;;;;;;;;;OASG;IACH,OAAO,CAAC,aAAa;CAaxB"}
|
|
@@ -40,6 +40,7 @@ const THREE = __importStar(require("three"));
|
|
|
40
40
|
const AbstractRestriction_1 = require("../AbstractRestriction");
|
|
41
41
|
const viewer_shared_math_1 = require("@shapediver/viewer.shared.math");
|
|
42
42
|
const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
|
|
43
|
+
const viewer_shared_types_1 = require("@shapediver/viewer.shared.types");
|
|
43
44
|
const viewer_1 = require("@shapediver/viewer");
|
|
44
45
|
const gl_matrix_1 = require("gl-matrix");
|
|
45
46
|
// #endregion Type aliases (1)
|
|
@@ -101,6 +102,9 @@ class GeometryRestriction extends AbstractRestriction_1.AbstractRestriction {
|
|
|
101
102
|
}
|
|
102
103
|
// #endregion Constructors (1)
|
|
103
104
|
// #region Public Getters And Setters (8)
|
|
105
|
+
get nodes() {
|
|
106
|
+
return __classPrivateFieldGet(this, _GeometryRestriction_nodes, "f");
|
|
107
|
+
}
|
|
104
108
|
get snapRestrictions() {
|
|
105
109
|
return __classPrivateFieldGet(this, _GeometryRestriction_snapRestrictions, "f");
|
|
106
110
|
}
|
|
@@ -147,6 +151,25 @@ class GeometryRestriction extends AbstractRestriction_1.AbstractRestriction {
|
|
|
147
151
|
// return first intersection
|
|
148
152
|
if (intersections.length > 0) {
|
|
149
153
|
const object = intersections[0].object;
|
|
154
|
+
let geometryRestrictionIntersectionData;
|
|
155
|
+
// search the three.js object hierarchy for the converted object
|
|
156
|
+
let tempObject = object;
|
|
157
|
+
while (tempObject.parent) {
|
|
158
|
+
const intersectedNode = __classPrivateFieldGet(this, _GeometryRestriction_nodes, "f").find(node => node.id === tempObject.SDid && node.version === tempObject.SDversion);
|
|
159
|
+
if (intersectedNode) {
|
|
160
|
+
// from this node, we can get the geometry data
|
|
161
|
+
intersectedNode.traverseData(d => {
|
|
162
|
+
if (d instanceof viewer_shared_types_1.GeometryData && d.id === object.parent.SDid && d.version === object.parent.SDversion) {
|
|
163
|
+
geometryRestrictionIntersectionData = {
|
|
164
|
+
node: intersectedNode,
|
|
165
|
+
geometryData: d
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
break;
|
|
170
|
+
}
|
|
171
|
+
tempObject = tempObject.parent;
|
|
172
|
+
}
|
|
150
173
|
const geometry = object.geometry;
|
|
151
174
|
const positionAttribute = geometry.getAttribute('position');
|
|
152
175
|
if (object instanceof THREE.Points && intersections[0].index !== undefined) {
|
|
@@ -155,12 +178,12 @@ class GeometryRestriction extends AbstractRestriction_1.AbstractRestriction {
|
|
|
155
178
|
const vertex = new THREE.Vector3();
|
|
156
179
|
vertex.fromBufferAttribute(positionAttribute, intersections[0].index);
|
|
157
180
|
object.localToWorld(vertex);
|
|
158
|
-
return this.constructRestrictionResult(gl_matrix_1.vec3.fromValues(vertex.x, vertex.y, vertex.z), intersections[0].distance, intersections[0].pointOnLine);
|
|
181
|
+
return this.constructRestrictionResult(gl_matrix_1.vec3.fromValues(vertex.x, vertex.y, vertex.z), intersections[0].distance, intersections[0].pointOnLine, geometryRestrictionIntersectionData);
|
|
159
182
|
}
|
|
160
183
|
const intersectionPoint = intersections[0].point;
|
|
161
184
|
const intersectionPointVec3 = gl_matrix_1.vec3.fromValues(intersectionPoint.x, intersectionPoint.y, intersectionPoint.z);
|
|
162
185
|
if (!intersections[0].face)
|
|
163
|
-
return this.constructRestrictionResult(intersectionPointVec3, intersections[0].distance, intersections[0].pointOnLine);
|
|
186
|
+
return this.constructRestrictionResult(intersectionPointVec3, intersections[0].distance, intersections[0].pointOnLine, geometryRestrictionIntersectionData);
|
|
164
187
|
if (__classPrivateFieldGet(this, _GeometryRestriction_snapToVertices, "f") === true || __classPrivateFieldGet(this, _GeometryRestriction_snapToEdges, "f") === true) {
|
|
165
188
|
const vertexA = new THREE.Vector3();
|
|
166
189
|
vertexA.fromBufferAttribute(positionAttribute, intersections[0].face.a);
|
|
@@ -180,13 +203,13 @@ class GeometryRestriction extends AbstractRestriction_1.AbstractRestriction {
|
|
|
180
203
|
const distanceC = this.checkDistance(intersectionPointVec3, vertexCVec3, __classPrivateFieldGet(this, _GeometryRestriction_snapToVerticesRadius, "f"));
|
|
181
204
|
// part 1 - check if the intersection point is close to a vertex
|
|
182
205
|
if (distanceA.check && distanceA.distanceSquared < distanceB.distanceSquared && distanceA.distanceSquared < distanceC.distanceSquared) {
|
|
183
|
-
return this.constructRestrictionResult(vertexAVec3, intersections[0].distance, intersections[0].pointOnLine);
|
|
206
|
+
return this.constructRestrictionResult(vertexAVec3, intersections[0].distance, intersections[0].pointOnLine, geometryRestrictionIntersectionData);
|
|
184
207
|
}
|
|
185
208
|
else if (distanceB.check && distanceB.distanceSquared < distanceA.distanceSquared && distanceB.distanceSquared < distanceC.distanceSquared) {
|
|
186
|
-
return this.constructRestrictionResult(vertexBVec3, intersections[0].distance, intersections[0].pointOnLine);
|
|
209
|
+
return this.constructRestrictionResult(vertexBVec3, intersections[0].distance, intersections[0].pointOnLine, geometryRestrictionIntersectionData);
|
|
187
210
|
}
|
|
188
211
|
else if (distanceC.check && distanceC.distanceSquared < distanceA.distanceSquared && distanceC.distanceSquared < distanceB.distanceSquared) {
|
|
189
|
-
return this.constructRestrictionResult(vertexCVec3, intersections[0].distance, intersections[0].pointOnLine);
|
|
212
|
+
return this.constructRestrictionResult(vertexCVec3, intersections[0].distance, intersections[0].pointOnLine, geometryRestrictionIntersectionData);
|
|
190
213
|
}
|
|
191
214
|
}
|
|
192
215
|
if (__classPrivateFieldGet(this, _GeometryRestriction_snapToEdges, "f") === true) {
|
|
@@ -201,19 +224,19 @@ class GeometryRestriction extends AbstractRestriction_1.AbstractRestriction {
|
|
|
201
224
|
const distanceCA = this.checkDistance(intersectionPointVec3, closestPointOnEdgeCA, __classPrivateFieldGet(this, _GeometryRestriction_snapToEdgesRadius, "f"));
|
|
202
225
|
// check if the intersection point is close to an edge
|
|
203
226
|
if (distanceAB.check && distanceAB.distanceSquared < distanceBC.distanceSquared && distanceAB.distanceSquared < distanceCA.distanceSquared) {
|
|
204
|
-
return this.constructRestrictionResult(closestPointOnEdgeAB, intersections[0].distance, intersections[0].pointOnLine);
|
|
227
|
+
return this.constructRestrictionResult(closestPointOnEdgeAB, intersections[0].distance, intersections[0].pointOnLine, geometryRestrictionIntersectionData);
|
|
205
228
|
}
|
|
206
229
|
else if (distanceBC.check && distanceBC.distanceSquared < distanceAB.distanceSquared && distanceBC.distanceSquared < distanceCA.distanceSquared) {
|
|
207
|
-
return this.constructRestrictionResult(closestPointOnEdgeBC, intersections[0].distance, intersections[0].pointOnLine);
|
|
230
|
+
return this.constructRestrictionResult(closestPointOnEdgeBC, intersections[0].distance, intersections[0].pointOnLine, geometryRestrictionIntersectionData);
|
|
208
231
|
}
|
|
209
232
|
else if (distanceCA.check && distanceCA.distanceSquared < distanceAB.distanceSquared && distanceCA.distanceSquared < distanceBC.distanceSquared) {
|
|
210
|
-
return this.constructRestrictionResult(closestPointOnEdgeCA, intersections[0].distance, intersections[0].pointOnLine);
|
|
233
|
+
return this.constructRestrictionResult(closestPointOnEdgeCA, intersections[0].distance, intersections[0].pointOnLine, geometryRestrictionIntersectionData);
|
|
211
234
|
}
|
|
212
235
|
}
|
|
213
236
|
}
|
|
214
237
|
if (__classPrivateFieldGet(this, _GeometryRestriction_snapToFaces, "f") === true) {
|
|
215
238
|
// part 3 - face intersection
|
|
216
|
-
return this.constructRestrictionResult(gl_matrix_1.vec3.fromValues(intersectionPoint.x, intersectionPoint.y, intersectionPoint.z), intersections[0].distance);
|
|
239
|
+
return this.constructRestrictionResult(gl_matrix_1.vec3.fromValues(intersectionPoint.x, intersectionPoint.y, intersectionPoint.z), intersections[0].distance, undefined, geometryRestrictionIntersectionData);
|
|
217
240
|
}
|
|
218
241
|
}
|
|
219
242
|
return;
|
|
@@ -256,14 +279,15 @@ class GeometryRestriction extends AbstractRestriction_1.AbstractRestriction {
|
|
|
256
279
|
__classPrivateFieldGet(this, _GeometryRestriction_rayCasterParams, "f").Line.threshold = __classPrivateFieldGet(this, _GeometryRestriction_sceneBoundingSphereRadius, "f") * __classPrivateFieldGet(this, _GeometryRestriction_lineIntersectionPercentage, "f");
|
|
257
280
|
__classPrivateFieldGet(this, _GeometryRestriction_rayCasterParams, "f").Line2.threshold = __classPrivateFieldGet(this, _GeometryRestriction_sceneBoundingSphereRadius, "f") * __classPrivateFieldGet(this, _GeometryRestriction_lineIntersectionPercentage, "f");
|
|
258
281
|
}
|
|
259
|
-
constructRestrictionResult(targetPoint, distanceOriginToClosestIntersectionPoint, closestPointOnRay) {
|
|
282
|
+
constructRestrictionResult(targetPoint, distanceOriginToClosestIntersectionPoint, closestPointOnRay, geometryRestrictionIntersectionData) {
|
|
260
283
|
const closestPointOnRayVec3 = closestPointOnRay ? gl_matrix_1.vec3.fromValues(closestPointOnRay.x, closestPointOnRay.y, closestPointOnRay.z) : targetPoint;
|
|
261
284
|
return {
|
|
262
285
|
closestIntersectionPoint: closestPointOnRay ? gl_matrix_1.vec3.fromValues(closestPointOnRay.x, closestPointOnRay.y, closestPointOnRay.z) : targetPoint,
|
|
263
286
|
distanceOriginToClosestIntersectionPointSquared: distanceOriginToClosestIntersectionPoint * distanceOriginToClosestIntersectionPoint,
|
|
264
287
|
targetPoint,
|
|
265
288
|
distanceClosestPointToTargetPointSquared: closestPointOnRayVec3 !== targetPoint ? gl_matrix_1.vec3.sqrDist(closestPointOnRayVec3, targetPoint) : 0,
|
|
266
|
-
restriction: this
|
|
289
|
+
restriction: this,
|
|
290
|
+
restrictionIntersectionData: geometryRestrictionIntersectionData
|
|
267
291
|
};
|
|
268
292
|
}
|
|
269
293
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeometryRestriction.js","sourceRoot":"","sources":["../../../../src/implementation/restrictions/geometry/GeometryRestriction.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GeometryRestriction.js","sourceRoot":"","sources":["../../../../src/implementation/restrictions/geometry/GeometryRestriction.ts"],"names":[],"mappings":"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"}
|
|
@@ -96,6 +96,7 @@ export declare type RestrictionResult = {
|
|
|
96
96
|
distanceClosestPointToTargetPointSquared: number;
|
|
97
97
|
restriction: IRestriction;
|
|
98
98
|
snapRestriction?: ISnapRestriction;
|
|
99
|
+
restrictionIntersectionData?: unknown;
|
|
99
100
|
};
|
|
100
101
|
export declare const isDraggingRestriction: (metaData?: RestrictionMetaData) => metaData is DraggingRestrictionMetaData;
|
|
101
102
|
export declare const isDrawingRestriction: (metaData?: RestrictionMetaData) => metaData is DrawingRestrictionMetaData;
|
|
@@ -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 +1 @@
|
|
|
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;
|
|
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;AAkGM,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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shapediver/viewer.rendering-engine.intersection-restriction-engine",
|
|
3
|
-
"version": "3.8.
|
|
3
|
+
"version": "3.8.12",
|
|
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.8.
|
|
43
|
-
"@shapediver/viewer.rendering-engine.intersection-engine": "3.8.
|
|
44
|
-
"@shapediver/viewer.rendering-engine.rendering-engine-threejs": "3.8.
|
|
45
|
-
"@shapediver/viewer.shared.math": "3.8.
|
|
46
|
-
"@shapediver/viewer.shared.node-tree": "3.8.
|
|
47
|
-
"@shapediver/viewer.shared.services": "3.8.
|
|
48
|
-
"@shapediver/viewer.shared.types": "3.8.
|
|
42
|
+
"@shapediver/viewer": "3.8.12",
|
|
43
|
+
"@shapediver/viewer.rendering-engine.intersection-engine": "3.8.12",
|
|
44
|
+
"@shapediver/viewer.rendering-engine.rendering-engine-threejs": "3.8.12",
|
|
45
|
+
"@shapediver/viewer.shared.math": "3.8.12",
|
|
46
|
+
"@shapediver/viewer.shared.node-tree": "3.8.12",
|
|
47
|
+
"@shapediver/viewer.shared.services": "3.8.12",
|
|
48
|
+
"@shapediver/viewer.shared.types": "3.8.12",
|
|
49
49
|
"@types/three": "0.162.0",
|
|
50
50
|
"gl-matrix": "3.3.0",
|
|
51
51
|
"three": "0.162.0"
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "31dd837462bd11eb16917e1fd3162c8eff02ccb0"
|
|
54
54
|
}
|