Co-authored-by: Reifonas <211114984+Reifonas@users.noreply.github.com>
This commit is contained in:
gpt-engineer-app[bot]
2026-05-09 13:39:17 +00:00
parent 0aa31ed6ad
commit 85b896259a
+11 -1
View File
@@ -346,6 +346,7 @@ const XRSession = () => {
const [freeMove, setFreeMove] = useState(true); const [freeMove, setFreeMove] = useState(true);
const [placementMode, setPlacementMode] = useState(true); // start in placement mode const [placementMode, setPlacementMode] = useState(true); // start in placement mode
const [snapToPlanes, setSnapToPlanes] = useState(true); const [snapToPlanes, setSnapToPlanes] = useState(true);
const [allowScale, setAllowScale] = useState(false);
useEffect(() => { useEffect(() => {
if (!model) navigate('/'); if (!model) navigate('/');
@@ -445,7 +446,14 @@ const XRSession = () => {
toast.success('Modelo posicionado na superfície!'); toast.success('Modelo posicionado na superfície!');
}} }}
> >
<XRModel url={model.url} /> <XRGrabbable
allowScale={allowScale}
onGrabStart={() => {
if (placementMode) setPlacementMode(false);
}}
>
<XRModel url={model.url} />
</XRGrabbable>
</XRHitTestPlacement> </XRHitTestPlacement>
<XRMeasurementOverlay /> <XRMeasurementOverlay />
@@ -463,6 +471,8 @@ const XRSession = () => {
onTogglePlacement={() => setPlacementMode(!placementMode)} onTogglePlacement={() => setPlacementMode(!placementMode)}
snapToPlanes={snapToPlanes} snapToPlanes={snapToPlanes}
onToggleSnap={() => setSnapToPlanes(!snapToPlanes)} onToggleSnap={() => setSnapToPlanes(!snapToPlanes)}
allowScale={allowScale}
onToggleAllowScale={() => setAllowScale(!allowScale)}
/> />
</div> </div>
</div> </div>