|  |  | 
 |  |  |     const { no, position = [0, 300, 0], rotationY = 0 } = props; | 
 |  |  |     const state = useStore(); | 
 |  |  |  | 
 |  |  |     const { nodes, materials } = useMemo(() => { | 
 |  |  |         return useGLTF('/models/shelf/row.glb'); | 
 |  |  |     }, []) | 
 |  |  |     // const { nodes, materials } = useMemo(() => { | 
 |  |  |     //     return useGLTF('/models/shelf/row.glb'); | 
 |  |  |     // }, []) | 
 |  |  |  | 
 |  |  |     const model = useMemo(() => { | 
 |  |  |         const fbx = useFBX('/models/shelf/row.fbx'); | 
 |  |  |         if (!fbx.castShadow) { | 
 |  |  |             Common.setShadow(fbx); | 
 |  |  |         } | 
 |  |  |         // Common.setColor(fbx) | 
 |  |  |         fbx.scale.set(MODEL_SHELF_SCALE * 1.5, MODEL_SHELF_SCALE, MODEL_SHELF_SCALE); | 
 |  |  |         // Common.setColor(fbx); | 
 |  |  |         fbx.scale.set(MODEL_SHELF_SCALE.x, MODEL_SHELF_SCALE.y, MODEL_SHELF_SCALE.z); | 
 |  |  |         return fbx.clone(); | 
 |  |  |     }, []) | 
 |  |  |  | 
 |  |  | 
 |  |  |                     scale={50000} | 
 |  |  |                 /> */} | 
 |  |  |  | 
 |  |  |                 <primitive object={model} castShadow position={[0, 0, 0]} /> | 
 |  |  |                 <primitive object={model} castShadow position={[0, 1, 0]} /> | 
 |  |  |                 {/* <mesh position={[0, 100, 0]}> | 
 |  |  |                     <boxGeometry args={[150, 200, 30]} /> | 
 |  |  |                     <meshStandardMaterial color={'orange'} transparent={true} opacity={.5} /> | 
 
 |  |  | 
 |  |  |  | 
 |  |  | export const MODEL_BOX_SCALE = .5; | 
 |  |  |  | 
 |  |  | export const MODEL_SHELF_SCALE = .6; | 
 |  |  | export const MODEL_SHELF_SCALE = { x: 0.8, y: 0.52, z: 0.55 }; | 
 |  |  |  | 
 |  |  |  | 
 |  |  | // shelf scale & offset | 
 |  |  |  | 
 |  |  | 
 |  |  |  | 
 |  |  | export const SHELF_BAY_GROUP_COUNT = 3; | 
 |  |  |  | 
 |  |  | export const SHELF_BAY_UNIT_SEPARTE_DISTANCE = 50; | 
 |  |  | export const SHELF_BAY_UNIT_SEPARTE_DISTANCE = 60; | 
 |  |  |  | 
 |  |  | export const SHELF_HEIGHT_FROM_GROUND = 10; | 
 |  |  | export const SHELF_HEIGHT_FROM_GROUND = 23; | 
 |  |  |  | 
 |  |  | export const SHELF_LEV_UNIT_SEPARTE_DISTANCE = 28; | 
 |  |  | export const SHELF_LEV_UNIT_SEPARTE_DISTANCE = 22; | 
 
 |  |  | 
 |  |  |     } | 
 |  |  | }; | 
 |  |  |  | 
 |  |  | export const setColor = (obj) => { | 
 |  |  | export const setColor = (obj, color = 0x4680BF) => { | 
 |  |  |     if (obj.material) { | 
 |  |  |         obj.material.color.set(0x4680BF); | 
 |  |  |         obj.material.color.set(color); | 
 |  |  |     } | 
 |  |  |     if (obj.children) { | 
 |  |  |         obj.children.forEach((child) => { | 
 |  |  |             setColor(child); | 
 |  |  |             setColor(child, color); | 
 |  |  |         }); | 
 |  |  |     } | 
 |  |  | }; |