From 00ea0432b5f48818a8e661773e3f535b791ed1bb Mon Sep 17 00:00:00 2001 From: Jerald-Golden-B Date: Tue, 1 Apr 2025 19:04:15 +0530 Subject: [PATCH] feat: implement conveyor path creation with dynamic points and actions --- .../simulation/behaviour/behaviour.tsx | 42 +++++++++++++++++-- 1 file changed, 38 insertions(+), 4 deletions(-) diff --git a/app/src/modules/simulation/behaviour/behaviour.tsx b/app/src/modules/simulation/behaviour/behaviour.tsx index 53af231..d127705 100644 --- a/app/src/modules/simulation/behaviour/behaviour.tsx +++ b/app/src/modules/simulation/behaviour/behaviour.tsx @@ -11,16 +11,49 @@ function Behaviour() { const newPaths: (Types.ConveyorEventsSchema | Types.VehicleEventsSchema)[] = []; floorItems.forEach((item: Types.FloorItemType) => { - // console.log('item: ', item); - if (item.eventData && item.eventData.type === 'Conveyor') { + if (item.modelfileID === "672a090f80d91ac979f4d0bd") { + console.log('item: ', item); + const point1Position = new THREE.Vector3(0, 0.85, 2.2); + const middlePointPosition = new THREE.Vector3(0, 0.85, 0); + const point2Position = new THREE.Vector3(0, 0.85, -2.2); + + const point1UUID = THREE.MathUtils.generateUUID(); + const middlePointUUID = THREE.MathUtils.generateUUID(); + const point2UUID = THREE.MathUtils.generateUUID(); + const newPath: Types.ConveyorEventsSchema = { modeluuid: item.modeluuid, modelName: item.modelname, type: 'Conveyor', - points: item.eventData.points, + points: [ + { + uuid: point1UUID, + position: [point1Position.x, point1Position.y, point1Position.z], + rotation: [0, 0, 0], + actions: [{ uuid: THREE.MathUtils.generateUUID(), name: 'Action 1', type: 'Inherit', material: 'Inherit', delay: 'Inherit', spawnInterval: 'Inherit', isUsed: true }], + triggers: [], + connections: { source: { pathUUID: item.modeluuid, pointUUID: point1UUID }, targets: [] }, + }, + { + uuid: middlePointUUID, + position: [middlePointPosition.x, middlePointPosition.y, middlePointPosition.z], + rotation: [0, 0, 0], + actions: [{ uuid: THREE.MathUtils.generateUUID(), name: 'Action 1', type: 'Inherit', material: 'Inherit', delay: 'Inherit', spawnInterval: 'Inherit', isUsed: true }], + triggers: [], + connections: { source: { pathUUID: item.modeluuid, pointUUID: middlePointUUID }, targets: [] }, + }, + { + uuid: point2UUID, + position: [point2Position.x, point2Position.y, point2Position.z], + rotation: [0, 0, 0], + actions: [{ uuid: THREE.MathUtils.generateUUID(), name: 'Action 1', type: 'Inherit', material: 'Inherit', delay: 'Inherit', spawnInterval: 'Inherit', isUsed: true }], + triggers: [], + connections: { source: { pathUUID: item.modeluuid, pointUUID: point2UUID }, targets: [] }, + }, + ], position: [...item.position], rotation: [item.rotation.x, item.rotation.y, item.rotation.z], - speed: item.eventData.speed, + speed: 'Inherit', }; newPaths.push(newPath); @@ -48,6 +81,7 @@ function Behaviour() { setSimulationPaths(newPaths); }, [floorItems]); + return null; }