From febb533f5e74a03d7e1a7fe6dd3d28aea5e1b3ac Mon Sep 17 00:00:00 2001 From: admtracksteel Date: Sun, 24 May 2026 14:10:17 +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=2024/05/2026=2014:10:16?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/ViewerControls.tsx | 73 ++++++++- .../three/DesktopFirstPersonControls.tsx | 154 ++++++++++++++++++ src/components/three/ModelViewer.tsx | 34 ++-- src/stores/useModelStore.ts | 4 + 4 files changed, 253 insertions(+), 12 deletions(-) create mode 100644 src/components/three/DesktopFirstPersonControls.tsx diff --git a/src/components/ViewerControls.tsx b/src/components/ViewerControls.tsx index 07563c0..80d9c32 100644 --- a/src/components/ViewerControls.tsx +++ b/src/components/ViewerControls.tsx @@ -1,4 +1,4 @@ -import { Eye, Grid3X3, Ruler, Trash2, Camera, LayoutGrid, Palette, Box, Move3D, Undo2, MousePointerClick, EyeOff, Focus, Download } from 'lucide-react'; +import { Eye, Grid3X3, Ruler, Trash2, Camera, LayoutGrid, Palette, Box, Move3D, Undo2, MousePointerClick, EyeOff, Focus, Download, Footprints, Compass, Map } from 'lucide-react'; import { Slider } from '@/components/ui/slider'; import { Button } from '@/components/ui/button'; import { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover'; @@ -44,6 +44,9 @@ export function ViewerControls() { selectionMode, setSelectionMode, selectedElementKeys, hiddenElementKeys, isolatedElementKeys, hideSelectedElements, isolateSelectedElements, showAllElements, clearElementSelection, + desktopCameraMode, setDesktopCameraMode, + xrEnvironment, setXrEnvironment, + xrScaleMode, setXrScaleMode, } = useModelStore(); const activeModel = models.find(m => m.id === activeModelId); const hasSelection = selectedElementKeys.size > 0; @@ -290,6 +293,74 @@ export function ViewerControls() { )} + {/* Seletor de Câmera (Orbit vs Walk) */} + + + {/* Seletor de Cenário 2D */} + + + + + +
+ + Cenário de Fundo + + + + +
+
+
{/* Screenshot */}