diff --git a/src/components/three/XRHudInWorld.tsx b/src/components/three/XRHudInWorld.tsx index b6e3cbf..c0d0538 100644 --- a/src/components/three/XRHudInWorld.tsx +++ b/src/components/three/XRHudInWorld.tsx @@ -391,7 +391,7 @@ function CutsTab() { return ( {/* Eixo label */} - + {AXIS_LABEL[axis]} @@ -941,7 +941,7 @@ function CalibrationTab() { return ( {/* Coluna da esquerda: Informações e Fluxo */} - + Calibração 3D da Peça diff --git a/src/components/three/xrCalibrationBus.ts b/src/components/three/xrCalibrationBus.ts index 43df044..67d6a01 100644 --- a/src/components/three/xrCalibrationBus.ts +++ b/src/components/three/xrCalibrationBus.ts @@ -37,11 +37,7 @@ export const xrCalibration: XRCalState = { }; function notify() { - xrCalibration.listeners.forEach((fn) => { - try { - fn(); - } catch {} - }); + xrCalibration.listeners.forEach((fn) => fn()); } export function subscribeXRCalibration(fn: () => void): () => void { @@ -137,14 +133,14 @@ export function computeXRCalibrationQuaternion(pairs: XRPair[]): THREE.Quaternio if (pairs.length < 2) return null; const n1 = pairs[0].model.clone().normalize(); const n2raw = pairs[1].model.clone(); - let n2 = n2raw.sub(n1.clone().multiplyScalar(n2raw.dot(n1))); + const n2 = n2raw.sub(n1.clone().multiplyScalar(n2raw.dot(n1))); if (n2.lengthSq() < 1e-6) return null; n2.normalize(); const n3 = new THREE.Vector3().crossVectors(n1, n2); const c1 = pairs[0].cube.clone().normalize(); const c2raw = pairs[1].cube.clone(); - let c2 = c2raw.sub(c1.clone().multiplyScalar(c2raw.dot(c1))); + const c2 = c2raw.sub(c1.clone().multiplyScalar(c2raw.dot(c1))); if (c2.lengthSq() < 1e-6) return null; c2.normalize(); const c3 = new THREE.Vector3().crossVectors(c1, c2); diff --git a/src/pages/XRSession.tsx b/src/pages/XRSession.tsx index 70c5ea7..3ca7cea 100644 --- a/src/pages/XRSession.tsx +++ b/src/pages/XRSession.tsx @@ -53,7 +53,9 @@ function loadXRFeatures() { try { const raw = localStorage.getItem('xrFeatures'); if (raw) return { ...defaults, ...JSON.parse(raw) }; - } catch {} + } catch (err) { + console.warn('[XR] Falha ao ler xrFeatures do localStorage:', err); + } return defaults; } const _xrf = loadXRFeatures();