| | |
| | | import Box from './box'; |
| | | import * as Common from '../utils/common'; |
| | | import * as TWEEN from "@tweenjs/tween.js"; |
| | | import { useStore } from '@/store'; |
| | | import { |
| | | INTERVAL_TIME, |
| | | MODEL_AGV_SCALE, |
| | |
| | | const [loaderAngle, setLoaderAngle] = useState(0); |
| | | const [forkDis, setForkDis] = useState(0); |
| | | const [realTrayList, setRealTrayList] = useState([]); |
| | | const store = useStore(); |
| | | |
| | | useEffect(() => { |
| | | if (store.autoCruise && agvNo === '1') { |
| | | // store.lookAt = groupPos; |
| | | |
| | | store.lookAt.x = groupPos.x; |
| | | store.lookAt.y = loaderHeight; |
| | | store.lookAt.z = groupPos.z; |
| | | } |
| | | }, [groupPos, loaderHeight]) |
| | | |
| | | useEffect(() => { |
| | | if (!props || Object.keys(props).length === 0) { |
| | |
| | | import React, { useState, useEffect } from 'react'; |
| | | import { useThree } from '@react-three/fiber'; |
| | | import React, { useState, useEffect, useRef } from 'react'; |
| | | import { useThree, useFrame } from '@react-three/fiber'; |
| | | import { |
| | | PerspectiveCamera, |
| | | } from '@react-three/drei'; |
| | | import { useStore } from '@/store'; |
| | | |
| | | const Camera = (props) => { |
| | | const threeObj = useThree(); |
| | | const camera = threeObj.camera; |
| | | const cameraRef = useRef(); |
| | | const { camera } = useThree(); |
| | | |
| | | const store = useStore(); |
| | | |
| | | useFrame((state, delta) => { |
| | | const { autoCruise, lookAt } = store; |
| | | |
| | | if (autoCruise) { |
| | | cameraRef.current.position.set(lookAt.x - 0, lookAt.y + 200, lookAt.z + 500); |
| | | camera.lookAt(lookAt.x, lookAt.y + 100, lookAt.z); |
| | | } |
| | | }) |
| | | |
| | | return ( |
| | | <> |
| | | <PerspectiveCamera |
| | | ref={cameraRef} |
| | | makeDefault |
| | | position={[0, 350, 1150]} |
| | | fov={48} |
| | |
| | | const House = (props) => { |
| | | const { |
| | | wallThickness = 2, |
| | | wallOpacity = 1, |
| | | wallOpacity = .9, |
| | | width = DEBUG ? 14000 : 1400, |
| | | length = DEBUG ? 12000 : 1200, |
| | | height = DEBUG ? 4000 : 400, |
| | |
| | | { |
| | | text: 'Hello World', |
| | | shelfList: {}, |
| | | autoCruise: true, |
| | | lookAt: { x: 0, y: 0, z: 0 }, |
| | | } |
| | | ); |
| | | |