From f6ce1803db1955446c161ad243157a1a8d22b06a Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 23 四月 2024 10:31:10 +0800
Subject: [PATCH] #

---
 src/components/agv.jsx |   38 ++++++++++++++++----------------------
 1 files changed, 16 insertions(+), 22 deletions(-)

diff --git a/src/components/agv.jsx b/src/components/agv.jsx
index 6544d6e..016f9a3 100644
--- a/src/components/agv.jsx
+++ b/src/components/agv.jsx
@@ -7,8 +7,6 @@
 import * as TWEEN from "@tweenjs/tween.js";
 import { INTERVAL_TIME } from '@/config/setting'
 
-let coords = { x: 0, y: 0, z: 0 };
-
 const Agv = (props) => {
     const { position, theta } = props;
 
@@ -18,24 +16,25 @@
         if (!props || Object.keys(props).length === 0) {
             return;
         }
-        console.log(props);
-        const pos = {
-            x: props.position[0],
-            y: 0,
-            z: props.position[2],
-        }
-        // new TWEEN.Tween(coords)
-        //     .to(pos, INTERVAL_TIME)
-        //     .easing(TWEEN.Easing.Linear.None)
-        //     .onUpdate((e) => {
-        //         coords = e;
-        //         console.log(e);
-        //     })
-        //     .start();
+        new TWEEN.Tween(groupPos)
+            .to({
+                x: position[0],
+                y: position[1],
+                z: position[2]
+            }, INTERVAL_TIME)
+            .easing(TWEEN.Easing.Linear.None)
+            .onUpdate((e) => {
+                setGroupPos({ ...e });
+            })
+            .start();
     }, [props]);
 
     useFrame((state, delta) => {
         TWEEN.update();
+        // setGroupPos(preState => ({
+        //     ...preState,
+        //     x: preState.x + 1
+        // }))
     })
 
     const bodyModel = useMemo(() => {
@@ -62,17 +61,12 @@
         return fbx.clone();
     }, [])
 
-    useEffect(() => {
-
-
-    }, []);
-
     return (
         <>
             <group
                 rotation-y={Common.rotationParseNum(theta)}
                 scale={0.5}
-                position={position}
+                position={[groupPos.x, groupPos.y, groupPos.z]}
             >
                 <primitive object={bodyModel} castShadow />
                 <primitive object={loaderModel} castShadow position={[0, 100, 0]} />

--
Gitblit v1.9.1