From f83d5f02f57c3f46fbcf4add8dd988ae4c35d24e Mon Sep 17 00:00:00 2001 From: kovacsv Date: Wed, 25 Oct 2023 21:37:04 +0200 Subject: [PATCH] Add heuristics for line threshold during ray casting. --- source/engine/viewer/viewermodel.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/source/engine/viewer/viewermodel.js b/source/engine/viewer/viewermodel.js index 15c8781..4c951ba 100644 --- a/source/engine/viewer/viewermodel.js +++ b/source/engine/viewer/viewermodel.js @@ -301,7 +301,12 @@ export class ViewerMainModel } let raycaster = new THREE.Raycaster (); - raycaster.params.Line.threshold = 0.1; + if (this.hasLines) { + let boundingSphere = this.GetBoundingSphere (() => { + return true; + }); + raycaster.params.Line.threshold = boundingSphere.radius / 100.0; + } let mousePos = new THREE.Vector2 (); mousePos.x = (mouseCoords.x / width) * 2 - 1;