@shapediver/viewer.rendering-engine.intersection-restriction-engine 3.22.0 → 3.22.2

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.
@@ -21,6 +21,18 @@ export declare class RestrictionManager implements IRestrictionManager {
21
21
  removeRestriction(token: string): boolean;
22
22
  private selectRestrictionResult;
23
23
  private isRestrictionResultOccluded;
24
+ /**
25
+ * True when the snap lies on the visible hit face and inside the pick
26
+ * cylinder around the ray.
27
+ *
28
+ * The signed distance uses the hit normal, so a point on the face is
29
+ * accepted from any viewing angle. The ray threshold is a cylinder; on
30
+ * the face that cylinder is an ellipse, longer along the view by
31
+ * 1/cos(incidence). A point on the hidden side of the plane is not.
32
+ * The plane tolerance is 0.02, under the 0.05 gap of a boundary surface
33
+ * sitting just behind the lines.
34
+ */
35
+ private snapLiesOnVisibleSurface;
24
36
  /**
25
37
  * The dragged object and its children are not occluders. Their own face
26
38
  * would otherwise hide snaps that sit just behind that face.
@@ -1 +1 @@
1
- {"version":3,"file":"RestrictionManager.d.ts","sourceRoot":"","sources":["../../src/implementation/RestrictionManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,YAAY,EAAY,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAC,KAAK,SAAS,EAAW,MAAM,qCAAqC,CAAC;AAE7E,OAAO,EAGN,KAAK,IAAI,EACT,KAAK,sBAAsB,EAC3B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACN,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,YAAY,EAEjB,KAAK,cAAc,EAEnB,KAAK,qBAAqB,EAE1B,KAAK,sCAAsC,EAC3C,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAC,KAAK,mBAAmB,EAAC,MAAM,mCAAmC,CAAC;AA0B3E,qBAAa,kBAAmB,YAAW,mBAAmB;;gBA8C5D,QAAQ,EAAE,YAAY,EACtB,UAAU,GAAE,SAA0B,EACtC,YAAY,CAAC,EAAE,qBAAqB,EAAE,EACtC,QAAQ,CAAC,EAAE,sBAAsB;IAkClC,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED,IAAW,YAAY,IAAI;QAAC,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAAA;KAAC,CAEzD;IAED,IAAW,4BAA4B,IAAI,OAAO,CAEjD;IAED,IAAW,4BAA4B,CAAC,KAAK,EAAE,OAAO,EAUrD;IAMM,cAAc,CACpB,UAAU,EAAE,qBAAqB,GAC/B,MAAM,GAAG,SAAS;IA0Dd,KAAK,IAAI,IAAI;IAWb,cAAc,IAAI,MAAM,EAAE;IAM1B,aAAa,IAAI,MAAM,EAAE;IAMzB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIvD,QAAQ,CACd,GAAG,EAAE,IAAI,EACT,QAAQ,EACL,0BAA0B,GAC1B,2BAA2B,GAC3B,sCAAsC,GACvC,cAAc,GAAG,SAAS;IAkGtB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAgBhD,OAAO,CAAC,uBAAuB;IA2D/B,OAAO,CAAC,2BAA2B;IAkHnC;;;OAGG;IACH,OAAO,CAAC,2BAA2B;IAcnC,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,OAAO;IAKf,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,IAAI;CAKZ"}
1
+ {"version":3,"file":"RestrictionManager.d.ts","sourceRoot":"","sources":["../../src/implementation/RestrictionManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,YAAY,EAAY,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAC,KAAK,SAAS,EAAW,MAAM,qCAAqC,CAAC;AAE7E,OAAO,EAGN,KAAK,IAAI,EACT,KAAK,sBAAsB,EAC3B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACN,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,YAAY,EAEjB,KAAK,cAAc,EAEnB,KAAK,qBAAqB,EAE1B,KAAK,sCAAsC,EAC3C,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAC,KAAK,mBAAmB,EAAC,MAAM,mCAAmC,CAAC;AA0B3E,qBAAa,kBAAmB,YAAW,mBAAmB;;gBA8C5D,QAAQ,EAAE,YAAY,EACtB,UAAU,GAAE,SAA0B,EACtC,YAAY,CAAC,EAAE,qBAAqB,EAAE,EACtC,QAAQ,CAAC,EAAE,sBAAsB;IAkClC,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED,IAAW,YAAY,IAAI;QAAC,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAAA;KAAC,CAEzD;IAED,IAAW,4BAA4B,IAAI,OAAO,CAEjD;IAED,IAAW,4BAA4B,CAAC,KAAK,EAAE,OAAO,EAUrD;IAMM,cAAc,CACpB,UAAU,EAAE,qBAAqB,GAC/B,MAAM,GAAG,SAAS;IA0Dd,KAAK,IAAI,IAAI;IAWb,cAAc,IAAI,MAAM,EAAE;IAM1B,aAAa,IAAI,MAAM,EAAE;IAMzB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIvD,QAAQ,CACd,GAAG,EAAE,IAAI,EACT,QAAQ,EACL,0BAA0B,GAC1B,2BAA2B,GAC3B,sCAAsC,GACvC,cAAc,GAAG,SAAS;IAkGtB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAgBhD,OAAO,CAAC,uBAAuB;IA2D/B,OAAO,CAAC,2BAA2B;IA2InC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,wBAAwB;IA4ChC;;;OAGG;IACH,OAAO,CAAC,2BAA2B;IAcnC,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,OAAO;IAKf,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,IAAI;CAKZ"}
@@ -223,7 +223,7 @@ class RestrictionManager {
223
223
  return false;
224
224
  }
225
225
  // #endregion Public Methods (6)
226
- // #region Private Methods (8)
226
+ // #region Private Methods (10)
227
227
  selectRestrictionResult(restrictionResults) {
228
228
  /**
229
229
  * We iterate over the results and check if the restriction with the higher priority has a radius
@@ -266,6 +266,7 @@ class RestrictionManager {
266
266
  return restrictionResult;
267
267
  }
268
268
  isRestrictionResultOccluded(restrictionResult, ray, metaData) {
269
+ var _a;
269
270
  if (!restrictionResult.restriction.hideable)
270
271
  return false;
271
272
  const excludedNodes = (0, IRestriction_1.isDraggingRestriction)(metaData)
@@ -288,7 +289,12 @@ class RestrictionManager {
288
289
  const sceneRayTrace = __classPrivateFieldGet(this, _RestrictionManager_viewport, "f").raytraceScene(ray.origin, ray.direction, [filter]);
289
290
  if (sceneRayTrace.length === 0)
290
291
  return false;
291
- const sceneDistance = sceneRayTrace[0].distance;
292
+ // Grid lines and points are often the first hit. A point or line
293
+ // raycast reports the foot on the ray, which is closer than the
294
+ // face, and that hit has no normal. Judge occlusion against the
295
+ // first face. A line by itself still counts when nothing has a normal.
296
+ const surfaceHit = (_a = sceneRayTrace.find((hit) => hit.normal)) !== null && _a !== void 0 ? _a : sceneRayTrace[0];
297
+ const sceneDistance = surfaceHit.distance;
292
298
  const restrictionDistance = Math.sqrt(restrictionResult.distanceOriginToClosestIntersectionPointSquared);
293
299
  // Restriction grids are built on the visible surface. Treat a hit that
294
300
  // is only slightly farther than the scene as the same surface, so
@@ -296,41 +302,92 @@ class RestrictionManager {
296
302
  const occlusionSlack = Math.min(0.25, Math.max(1e-4, sceneDistance * 1e-4));
297
303
  if (sceneDistance + occlusionSlack >= restrictionDistance)
298
304
  return false;
299
- // A grid snap is not on the ray. Its closest point on the ray can sit
300
- // behind the surface even when the snap point itself is on that
301
- // surface, which is exactly the cell center of a coarse grid. Accept
302
- // the hit when the snap point is still within the pick radius of the
303
- // visible surface point. The radius is measured across the surface.
304
- // A second surface behind this one, such as the boundary mesh 0.05
305
- // behind the lines, stays hidden even when that gap is inside the radius.
305
+ // A grid snap is not on the ray. On an angled view the point that
306
+ // lies on the visible face can sit well behind the ray hit, because
307
+ // the offset across the face projects onto the view direction. That
308
+ // is the far side of a cell, and it is still a valid placement.
309
+ // Measure the offset against the hit plane. A parallel surface behind
310
+ // this one, such as the boundary mesh 0.05 behind the lines, is on
311
+ // the hidden side of the plane and stays hidden.
306
312
  const target = restrictionResult.targetPoint;
307
313
  if (restrictionResult.restriction instanceof GeometryRestriction_1.GeometryRestriction &&
308
314
  restrictionResult.restriction.pointPickRadius > 0) {
309
- const directionLength = Math.hypot(ray.direction[0], ray.direction[1], ray.direction[2]);
310
- if (directionLength > 0) {
311
- const scale = sceneDistance / directionLength;
312
- const separation = Math.hypot(ray.origin[0] + ray.direction[0] * scale - target[0], ray.origin[1] + ray.direction[1] * scale - target[1], ray.origin[2] + ray.direction[2] * scale - target[2]);
313
- const alongRay = ((target[0] - ray.origin[0]) * ray.direction[0] +
314
- (target[1] - ray.origin[1]) * ray.direction[1] +
315
- (target[2] - ray.origin[2]) * ray.direction[2]) /
316
- directionLength;
317
- if (alongRay <= sceneDistance + occlusionSlack &&
318
- separation <= restrictionResult.restriction.pointPickRadius)
319
- return false;
315
+ const normal = surfaceHit.normal;
316
+ if (normal &&
317
+ this.snapLiesOnVisibleSurface(target, ray, sceneDistance, normal, restrictionResult.restriction.pointPickRadius))
318
+ return false;
319
+ // No face normal, so the plane test is unavailable. Keep the
320
+ // along-ray check for that case: a snap whose own position is
321
+ // behind the hit stays hidden.
322
+ if (!normal) {
323
+ const directionLength = Math.hypot(ray.direction[0], ray.direction[1], ray.direction[2]);
324
+ if (directionLength > 0) {
325
+ const scale = sceneDistance / directionLength;
326
+ const separation = Math.hypot(ray.origin[0] + ray.direction[0] * scale - target[0], ray.origin[1] + ray.direction[1] * scale - target[1], ray.origin[2] + ray.direction[2] * scale - target[2]);
327
+ const alongRay = ((target[0] - ray.origin[0]) * ray.direction[0] +
328
+ (target[1] - ray.origin[1]) * ray.direction[1] +
329
+ (target[2] - ray.origin[2]) * ray.direction[2]) /
330
+ directionLength;
331
+ if (alongRay <= sceneDistance + occlusionSlack &&
332
+ separation <=
333
+ restrictionResult.restriction.pointPickRadius)
334
+ return false;
335
+ }
320
336
  }
321
337
  }
322
338
  // the second check is to make sure that the geometry data of the geometry restriction and the scene ray trace is available
323
339
  if (restrictionResult.restriction.type !== IRestriction_1.RESTRICTION_TYPE.GEOMETRY ||
324
340
  (restrictionResult.restriction.type === IRestriction_1.RESTRICTION_TYPE.GEOMETRY &&
325
341
  (!restrictionResult.restrictionIntersectionData ||
326
- !sceneRayTrace[0].data)))
342
+ !surfaceHit.data)))
327
343
  return true;
328
344
  const geometryRestrictionIntersectionData = restrictionResult.restrictionIntersectionData;
329
345
  // it is NOT the same geometry
330
346
  return !(geometryRestrictionIntersectionData.geometryData.id ===
331
- sceneRayTrace[0].data.id &&
347
+ surfaceHit.data.id &&
332
348
  geometryRestrictionIntersectionData.geometryData.version ===
333
- sceneRayTrace[0].data.version);
349
+ surfaceHit.data.version);
350
+ }
351
+ /**
352
+ * True when the snap lies on the visible hit face and inside the pick
353
+ * cylinder around the ray.
354
+ *
355
+ * The signed distance uses the hit normal, so a point on the face is
356
+ * accepted from any viewing angle. The ray threshold is a cylinder; on
357
+ * the face that cylinder is an ellipse, longer along the view by
358
+ * 1/cos(incidence). A point on the hidden side of the plane is not.
359
+ * The plane tolerance is 0.02, under the 0.05 gap of a boundary surface
360
+ * sitting just behind the lines.
361
+ */
362
+ snapLiesOnVisibleSurface(target, ray, sceneDistance, normal, pickRadius) {
363
+ const directionLength = Math.hypot(ray.direction[0], ray.direction[1], ray.direction[2]);
364
+ if (directionLength === 0 || pickRadius <= 0)
365
+ return false;
366
+ const scale = sceneDistance / directionLength;
367
+ const dx = target[0] - (ray.origin[0] + ray.direction[0] * scale);
368
+ const dy = target[1] - (ray.origin[1] + ray.direction[1] * scale);
369
+ const dz = target[2] - (ray.origin[2] + ray.direction[2] * scale);
370
+ let nx = normal[0];
371
+ let ny = normal[1];
372
+ let nz = normal[2];
373
+ const facing = nx * ray.direction[0] +
374
+ ny * ray.direction[1] +
375
+ nz * ray.direction[2];
376
+ if (facing > 0) {
377
+ nx = -nx;
378
+ ny = -ny;
379
+ nz = -nz;
380
+ }
381
+ const signed = dx * nx + dy * ny + dz * nz;
382
+ const acrossSq = dx * dx + dy * dy + dz * dz - signed * signed;
383
+ const across = Math.sqrt(Math.max(0, acrossSq));
384
+ const cosIncidence = Math.min(1, Math.abs(facing) / directionLength);
385
+ // Absolute, in model units. Stays under the 0.05 gap of a boundary
386
+ // surface behind the lines, and still treats a point a hundredth of
387
+ // a unit off the face as that face.
388
+ const planeSlack = 0.02;
389
+ const acrossLimit = pickRadius / Math.max(cosIncidence, 1e-3);
390
+ return signed >= -planeSlack && across <= acrossLimit;
334
391
  }
335
392
  /**
336
393
  * The dragged object and its children are not occluders. Their own face
@@ -1 +1 @@
1
- {"version":3,"file":"RestrictionManager.js","sourceRoot":"","sources":["../../src/implementation/RestrictionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RestrictionManager.js","sourceRoot":"","sources":["../../src/implementation/RestrictionManager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shapediver/viewer.rendering-engine.intersection-restriction-engine",
3
- "version": "3.22.0",
3
+ "version": "3.22.2",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "author": "Michael Oppitz <michael@shapediver.com>",
@@ -38,16 +38,16 @@
38
38
  "testEnvironment": "node"
39
39
  },
40
40
  "dependencies": {
41
- "@shapediver/viewer": "3.22.0",
42
- "@shapediver/viewer.rendering-engine.intersection-engine": "3.22.0",
43
- "@shapediver/viewer.rendering-engine.rendering-engine-threejs": "3.22.0",
44
- "@shapediver/viewer.shared.math": "3.22.0",
45
- "@shapediver/viewer.shared.node-tree": "3.22.0",
46
- "@shapediver/viewer.shared.services": "3.22.0",
47
- "@shapediver/viewer.shared.types": "3.22.0",
41
+ "@shapediver/viewer": "3.22.2",
42
+ "@shapediver/viewer.rendering-engine.intersection-engine": "3.22.2",
43
+ "@shapediver/viewer.rendering-engine.rendering-engine-threejs": "3.22.2",
44
+ "@shapediver/viewer.shared.math": "3.22.2",
45
+ "@shapediver/viewer.shared.node-tree": "3.22.2",
46
+ "@shapediver/viewer.shared.services": "3.22.2",
47
+ "@shapediver/viewer.shared.types": "3.22.2",
48
48
  "@types/three": "0.184.1",
49
49
  "gl-matrix": "3.4.4",
50
50
  "three": "0.184.0"
51
51
  },
52
- "gitHead": "1d9f1df0cbba4131a7cb7dbc1bc9a9710d7cfed5"
52
+ "gitHead": "29a0e7b13c545b8dd2a10c1387b77e317f80de0b"
53
53
  }