diff --git a/src/components/three/XRControllerMeasure.tsx b/src/components/three/XRControllerMeasure.tsx index 72b542b..d5149e8 100644 --- a/src/components/three/XRControllerMeasure.tsx +++ b/src/components/three/XRControllerMeasure.tsx @@ -231,9 +231,13 @@ export function XRControllerMeasure() { if (snappedPoint) { tipRef.current.visible = true; tipRef.current.position.copy(snappedPoint); - // Scale tip with distance from controller (~12mm at 1m) + // Tip scales with distance from controller. Snap "forte" (vértice, + // aresta, furo) recebe um marcador ~3× maior do que uma superfície + // genérica, para que o ponto destacado fique bem visível. const dist = tmpOrigin.current.distanceTo(snappedPoint); - const s = Math.max(0.004, dist * 0.012); + const strongSnap = snapKind === 'vertex' || snapKind === 'edge' || snapKind === 'hole'; + const factor = strongSnap ? 0.030 : 0.012; + const s = Math.max(strongSnap ? 0.010 : 0.004, dist * factor); tipRef.current.scale.setScalar(s); } }