From 9f1744708955e2f14284925c20d12ad0486c3f30 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期三, 08 五月 2024 12:59:58 +0800 Subject: [PATCH] # --- src/core/warehouse.jsx | 36 ++++++++++++++++++++++++++++-------- 1 files changed, 28 insertions(+), 8 deletions(-) diff --git a/src/core/warehouse.jsx b/src/core/warehouse.jsx index e349492..b23b8b0 100644 --- a/src/core/warehouse.jsx +++ b/src/core/warehouse.jsx @@ -2,13 +2,17 @@ import { useFrame } from '@react-three/fiber'; import * as THREE from 'three'; import Tunnel from '../components/tunnel'; +import Area from '../components/area'; import Shelf from '../components/shelf'; import Box from '../components/box'; import Agv from '../components/agv'; import tunnelData from '@/assets/data/tunnel'; +import areaData from '@/assets/data/area'; import shelfData from '@/assets/data/shelf'; import agvRealDataList from '@/assets/data/agv'; +import { getBoxData } from '../api/box'; +import { getAgvData } from '../api/agv'; import { INTERVAL_TIME } from '@/config/setting' let index = 0; @@ -18,26 +22,40 @@ const [agvData, setAgvData] = useState([ {} ]); - const [boxData, setBoxData] = useState([ - {} - ]) + const [boxData, setBoxData] = useState([]) useEffect(() => { const timer = setInterval(() => { + console.log('do'); + // getBoxData().then(res => { + // setBoxData(res); + // }) + + getAgvData().then(res => { + // console.log(JSON.stringify(res)) + if (res && res.length > 0) { + setAgvData(res); + } + }) + const agvRealData = agvRealDataList[index]; if (agvRealData) { - setAgvData(agvRealData); + // setAgvData(agvRealData); } index++; }, INTERVAL_TIME * 1.1); return () => { - clearInterval(timer); + // clearInterval(timer); } }, []) const tunnelEl = useMemo(() => { return tunnelData.map((data, index) => <Tunnel key={index} {...data} />) + }, []); + + const areaEl = useMemo(() => { + return areaData.map((area, index) => <Area key={index} {...area} />) }, []); const shelfEl = useMemo(() => { @@ -48,13 +66,14 @@ return shelfData.slice(0, 1).map((data, index) => <Shelf key={index} {...data} />) }, []); + const boxEl = useMemo(() => { + return boxData.map((data, idx) => <Box key={idx} {...data} />) + }, [boxData]); + const agvEl = useMemo(() => { return agvData.map((data, idx) => <Agv key={idx} {...data} />) }, [agvData]); - const boxEl = useMemo(() => { - return boxData.map((data, idx) => <Box key={idx} {...data} />) - }, [boxData]); useFrame((state, delta) => { @@ -64,6 +83,7 @@ <> <group> {tunnelEl} + {areaEl} {shelfEl} {/* {shelfEl1} */} {agvEl} -- Gitblit v1.9.1