From c0c4ad6e11e2a54feded601fe38f93be9924d43c Mon Sep 17 00:00:00 2001 From: admtracksteel Date: Sat, 30 May 2026 10:56:12 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=80=20Auto-deploy:=20melhoria=20no=20s?= =?UTF-8?q?nap=20e=20medi=C3=A7=C3=A3o=20AR=20em=2030/05/2026=2010:56:12?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/three/ModelViewer.tsx | 10 +++++----- src/stores/useModelStore.ts | 16 ++++++++-------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/components/three/ModelViewer.tsx b/src/components/three/ModelViewer.tsx index b22fe2a..985cbc7 100644 --- a/src/components/three/ModelViewer.tsx +++ b/src/components/three/ModelViewer.tsx @@ -422,7 +422,7 @@ function computeWorldPerPixel( worldPos: THREE.Vector3, ): number { const ortho = camera as THREE.OrthographicCamera; - if ((ortho as any).isOrthographicCamera) { + if ('isOrthographicCamera' in ortho) { const visibleHeight = (ortho.top - ortho.bottom) / (ortho.zoom || 1); return visibleHeight / Math.max(1, size.height); } @@ -1176,7 +1176,7 @@ function SectionClippingApplier() { mat.needsUpdate = true; } }; - }, [enabled.x, enabled.y, enabled.z, invert.x, invert.y, invert.z, level.x, level.y, level.z, planes]); + }, [enabled.x, enabled.y, enabled.z, invert, invert.x, invert.y, invert.z, level, level.x, level.y, level.z, planes]); return null; } @@ -1335,7 +1335,7 @@ function WalkControls() { const setWalkMode = useModelStore(s => s.setWalkMode); const gridY = useModelStore(s => s.gridY); const { camera } = useThree(); - const controlsRef = useRef(null); + const controlsRef = useRef<{ lock: () => void } | null>(null); const keys = useRef({ w: false, a: false, s: false, d: false, shift: false }); const initialized = useRef(false); @@ -1354,7 +1354,7 @@ function WalkControls() { if (walkMode) { // Small timeout to allow canvas to render and be clickable const timer = setTimeout(() => { - try { controlsRef.current?.lock(); } catch (e) {} + try { controlsRef.current?.lock(); } catch (e) { /* ignore */ } }, 100); return () => clearTimeout(timer); } @@ -1503,7 +1503,7 @@ export function ModelViewerCanvas({ url }: ModelViewerProps) { minZoom={5} maxZoom={5000} enabled={!positionMode && !walkMode} - ref={(c: any) => { + ref={(c: unknown) => { mainControlsRef.current = c; }} /> diff --git a/src/stores/useModelStore.ts b/src/stores/useModelStore.ts index bb873c1..5cef9de 100644 --- a/src/stores/useModelStore.ts +++ b/src/stores/useModelStore.ts @@ -11,11 +11,11 @@ function loadCameraMode(): 'ortho' | 'persp' { try { const raw = localStorage.getItem(CAMERA_MODE_KEY); if (raw === 'persp' || raw === 'ortho') return raw; - } catch {} + } catch (e) { /* ignore */ } return 'ortho'; } function saveCameraMode(m: 'ortho' | 'persp') { - try { localStorage.setItem(CAMERA_MODE_KEY, m); } catch {} + try { localStorage.setItem(CAMERA_MODE_KEY, m); } catch (e) { /* ignore */ } } export interface XRFeatureFlags { @@ -38,11 +38,11 @@ function loadXRFeatures(): XRFeatureFlags { try { const raw = localStorage.getItem(XRFEAT_KEY); if (raw) return { ...DEFAULT_XR_FEATURES, ...JSON.parse(raw) }; - } catch {} + } catch (e) { /* ignore */ } return { ...DEFAULT_XR_FEATURES }; } function saveXRFeatures(f: XRFeatureFlags) { - try { localStorage.setItem(XRFEAT_KEY, JSON.stringify(f)); } catch {} + try { localStorage.setItem(XRFEAT_KEY, JSON.stringify(f)); } catch (e) { /* ignore */ } } interface StoredPlacement { fineTuning: FineTuning; calibrationQuat?: [number, number, number, number] | null; } @@ -50,7 +50,7 @@ function loadPlacements(): Record { try { const raw = localStorage.getItem(PLACEMENT_KEY); if (raw) return JSON.parse(raw); - } catch {} + } catch (e) { /* ignore */ } return {}; } function savePlacement(fileName: string, fineTuning: FineTuning, calibrationQuat?: [number, number, number, number] | null) { @@ -62,7 +62,7 @@ function savePlacement(fileName: string, fineTuning: FineTuning, calibrationQuat calibrationQuat: calibrationQuat === undefined ? prev.calibrationQuat ?? null : calibrationQuat, }; localStorage.setItem(PLACEMENT_KEY, JSON.stringify(all)); - } catch {} + } catch (e) { /* ignore */ } } // ── Visibility (selection-based hide/isolate) persistence ──────────── @@ -72,7 +72,7 @@ function loadVisibilityMap(): Record { try { const raw = localStorage.getItem(VISIBILITY_KEY); if (raw) return JSON.parse(raw); - } catch {} + } catch (e) { /* ignore */ } return {}; } function saveVisibility(fileName: string, hidden: Set, isolated: Set | null) { @@ -80,7 +80,7 @@ function saveVisibility(fileName: string, hidden: Set, isolated: Set; isolated: Set | null } { const v = loadVisibilityMap()[fileName];