From f0e6242edd52dcb7fd2b48eaca957a9cca1526eb Mon Sep 17 00:00:00 2001 From: Poovizhi99 Date: Thu, 5 Jun 2025 16:42:24 +0530 Subject: [PATCH] feat: Integrate aisle data into polygon generation logic and enhance logging --- .../vehicle/navMesh/polygonGenerator.tsx | 25 +++++++++++++------ 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/app/src/modules/simulation/vehicle/navMesh/polygonGenerator.tsx b/app/src/modules/simulation/vehicle/navMesh/polygonGenerator.tsx index 54f669b..941b8be 100644 --- a/app/src/modules/simulation/vehicle/navMesh/polygonGenerator.tsx +++ b/app/src/modules/simulation/vehicle/navMesh/polygonGenerator.tsx @@ -3,6 +3,7 @@ import { useEffect } from "react"; import * as turf from "@turf/turf"; import * as Types from "../../../../types/world/worldTypes"; import arrayLinesToObject from "../../../builder/geomentries/lines/lineConvertions/arrayLinesToObject"; +import { useAisleStore } from "../../../../store/builder/useAisleStore"; interface PolygonGeneratorProps { groupRef: React.MutableRefObject; @@ -13,22 +14,30 @@ export default function PolygonGenerator({ groupRef, lines, }: PolygonGeneratorProps) { - + const { aisles } = useAisleStore(); useEffect(() => { let allLines = arrayLinesToObject(lines.current); const wallLines = allLines?.filter((line) => line?.type === "WallLine"); const aisleLines = allLines?.filter((line) => line?.type === "AisleLine") - + // const aisleLines = allLines?.filter((line) => line?.type === "AisleLine") + console.log('aisles: ', aisles.map((aisle) => aisle.points.map((point) => point.position))); + const result = aisles.map((aisle) => + aisle.points.map((point) => ({ + position: [point.position[0], point.position[2]], + uuid: point.pointUuid, + })) + ); const wallPoints = wallLines .map((pair) => pair?.line.map((vals) => vals.position)) .filter((wall): wall is THREE.Vector3[] => !!wall); - const result = aisleLines.map((pair) => - pair?.line.map((point) => ({ - position: [point.position.x, point.position.z], - uuid: point.uuid, - })) - ); + // const result = aisleLines.map((pair) => + // pair?.line.map((point) => ({ + // position: [point.position.x, point.position.z], + // uuid: point.uuid, + // })) + // ); + if (!result || result.some((line) => !line)) { return;