diff --git a/app/src/modules/builder/floor/Instances/Instance/floor2DInstance.tsx b/app/src/modules/builder/floor/Instances/Instance/floor2DInstance.tsx index 2f12360..1ba15f0 100644 --- a/app/src/modules/builder/floor/Instances/Instance/floor2DInstance.tsx +++ b/app/src/modules/builder/floor/Instances/Instance/floor2DInstance.tsx @@ -36,7 +36,7 @@ function Floor2DInstance({ floor }: { floor: Floor }) { userData={floor} > ) { const [currentPosition, setCurrentPosition] = useState<[number, number, number]>(tempPoints[0]?.position); const directionalSnap = useDirectionalSnapping(currentPosition, tempPoints[tempPoints.length - 1]?.position || null); - const { snapFloorPoint } = usePointSnapping({ uuid: 'temp-floor', pointType: 'Floor', position: directionalSnap.position || [0, 0, 0], }); + const { snapFloorPoint } = usePointSnapping({ uuid: 'temp-Floor', pointType: 'Floor', position: directionalSnap.position || [0, 0, 0], }); useFrame(() => { if (toolMode === 'Floor' && toggleView && tempPoints.length > 0) { @@ -36,7 +36,7 @@ function ReferenceFloor({ tempPoints }: Readonly) { setCurrentPosition([intersectionPoint.x, intersectionPoint.y, intersectionPoint.z]); if (!intersectionPoint) return; - const snapped = snapFloorPoint([intersectionPoint.x, intersectionPoint.y, intersectionPoint.z], [tempPoints[0]]); + const snapped = snapFloorPoint([intersectionPoint.x, intersectionPoint.y, intersectionPoint.z], tempPoints.length > 2 ? [tempPoints[0]] : []); if (snapped.isSnapped && snapped.snappedPoint) { finalPosition.current = snapped.position; @@ -158,7 +158,7 @@ function Floor({ floor }: { floor: Point[] }) { position={[0, 0, 0]} receiveShadow > - + ); diff --git a/app/src/modules/builder/point/point.tsx b/app/src/modules/builder/point/point.tsx index 8689ac5..15777aa 100644 --- a/app/src/modules/builder/point/point.tsx +++ b/app/src/modules/builder/point/point.tsx @@ -131,7 +131,7 @@ function Point({ point }: { readonly point: Point }) { const finalSnapped = snapFloorPoint(floorSnapped.position); setFloorPosition(point.pointUuid, finalSnapped.position); } else if (point.pointType === 'Zone') { - const zoneSnapped = snapAisleAngle(newPosition); + const zoneSnapped = snapZoneAngle(newPosition); const finalSnapped = snapZonePoint(zoneSnapped.position); setZonePosition(point.pointUuid, finalSnapped.position); } diff --git a/app/src/modules/builder/zone/Instances/Instance/zone2DInstance.tsx b/app/src/modules/builder/zone/Instances/Instance/zone2DInstance.tsx index 9828d14..3489b32 100644 --- a/app/src/modules/builder/zone/Instances/Instance/zone2DInstance.tsx +++ b/app/src/modules/builder/zone/Instances/Instance/zone2DInstance.tsx @@ -36,7 +36,7 @@ function Zone2DInstance({ zone }: { zone: Zone }) { userData={zone} > { + // console.log('zones: ', zones); + }, [zones]) + const allPoints = useMemo(() => { const points: Point[] = []; const seenUuids = new Set(); diff --git a/app/src/modules/builder/zone/zoneCreator/referenceZone.tsx b/app/src/modules/builder/zone/zoneCreator/referenceZone.tsx index f4429bf..e5cdf9f 100644 --- a/app/src/modules/builder/zone/zoneCreator/referenceZone.tsx +++ b/app/src/modules/builder/zone/zoneCreator/referenceZone.tsx @@ -36,7 +36,7 @@ function ReferenceZone({ tempPoints }: Readonly) { setCurrentPosition([intersectionPoint.x, intersectionPoint.y, intersectionPoint.z]); if (!intersectionPoint) return; - const snapped = snapZonePoint([intersectionPoint.x, intersectionPoint.y, intersectionPoint.z], [tempPoints[0]]); + const snapped = snapZonePoint([intersectionPoint.x, intersectionPoint.y, intersectionPoint.z], tempPoints.length > 2 ? [tempPoints[0]] : []); if (snapped.isSnapped && snapped.snappedPoint) { finalPosition.current = snapped.position; @@ -156,7 +156,7 @@ function Zone({ zone }: { zone: Point[] }) { position={[0, 0, 0]} receiveShadow > - + ); diff --git a/app/src/modules/builder/zone/zoneGroup.tsx b/app/src/modules/builder/zone/zoneGroup.tsx index 46bddb7..fc9dc7f 100644 --- a/app/src/modules/builder/zone/zoneGroup.tsx +++ b/app/src/modules/builder/zone/zoneGroup.tsx @@ -29,6 +29,7 @@ function ZoneGroup() { useEffect(() => { if (projectId && selectedVersion) { getZonesApi(projectId, selectedVersion?.versionId || '').then((zones) => { + console.log('zones: ', zones); if (zones && zones.length > 0) { setZones(zones); } else {