Skip to content

Commit 5bc880b

Browse files
committed
fix: return raw geometry when profiles could not be generated
1 parent 5b6fec9 commit 5bc880b

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

packages/fragments/src/FragmentsModels/src/model/mesh-manager.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ export class MeshManager {
6969
const model = this.list.get(modelId);
7070
if (!model) return;
7171
if (tileRequestClass === TileRequestClass.CREATE) {
72+
if (request.objectClass === undefined) return;
7273
const tile = this.create(request);
7374
this.setTileData(tile, request);
7475
model.tiles.set(tile.userData.tileId, tile);

packages/fragments/src/Importers/IfcImporter/src/geometry/geometry/geometry-processor.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,12 @@ export function getShellData(geometry: {
189189
const profile = new Profiles(face.plane);
190190
const openEdges = face.getOpenEdges();
191191

192+
if (openEdges.length === 0) {
193+
// TODO: Something went wrong with geometry generation. Just return raw data
194+
console.log("No open edges found. Using raw geometry.");
195+
return getRawShellData(index, position, bbox);
196+
}
197+
192198
for (const edge of openEdges) {
193199
profile.add(edge);
194200
}

0 commit comments

Comments
 (0)