Fix edge destructuring error

This commit is contained in:
Fuhrmann 2025-03-07 10:34:37 +01:00
parent c3d58954b4
commit 241a0d001c

View file

@ -571,16 +571,19 @@ function buildPolygons(edges: Array<[Vector3, Vector3]>): Vector3[][] {
// Take any edge as a start // Take any edge as a start
const firstEdge = edgeMap.values().next().value; const firstEdge = edgeMap.values().next().value;
if (!firstEdge) { if (!firstEdge || firstEdge.length < 2) {
throw new Error("Map is empty: no edges available"); throw new Error("Map is empty: no edges available");
} }
const start = firstEdge[0];
const end = firstEdge[1];
edgeMap.delete( edgeMap.delete(
`${firstEdge.start.x},${firstEdge.start.y},${firstEdge.start.z}-${firstEdge.end.x},${firstEdge.end.y},${firstEdge.end.z}` `${start.x},${start.y},${start.z}-${end.x},${end.y},${end.z}`
); );
polygon.push(firstEdge.start, firstEdge.end); polygon.push(start, end);
let lastPoint = firstEdge.end; let lastPoint = end;
while (true) { while (true) {
let foundNextEdge = false; let foundNextEdge = false;