Comments (3)
I realized that the spaces are not in relation IFCRELCONTAINEDINSPATIALSTRUCTURE but IFCRELAGGREGATES. So to get all elements including spaces I needed to to the following:
await classifier.byIfcRel(
model,
[WEBIFC.IFCRELCONTAINEDINSPATIALSTRUCTURE, WEBIFC.IFCRELAGGREGATES],
'storeys',
);
async byIfcRel(group: FRAGS.FragmentsGroup, ifcRels: number[], systemName: string) {
if (ifcRels.some((rel) => !IfcPropertiesUtils.isRel(rel))) return;
ifcRels.forEach(async (rel) => {
await IfcPropertiesUtils.getRelationMap(group, rel, async (relatingID, relatedIDs) => {
const { name: relatingName } = await IfcPropertiesUtils.getEntityName(group, relatingID);
for (const expressID of relatedIDs) {
this.saveItem(group, systemName, relatingName ?? 'NO REL NAME', expressID);
}
});
});
}
from components.
Hey @maidi29!
Just use Classifier.spatialStructure which takes care of that. It uses the IfcRelationsIndexer under the hood.
from components.
Just use Classifier.spatialStructure which takes care of that. It uses the IfcRelationsIndexer under the hood.
Thanks for your reply @HoyosJuan.
This did not work for me as the spaces are not in spatial relation but in IFCRELAGGREGATES. I don't know if this is a standard or just the case for the ifc models that I used so far but I came up with the above solution to add them to the storeys and closed the issue 👍
from components.
Related Issues (20)
- 2D Plans problem HOT 8
- Issue using "@thatopen/components" when using watchify HOT 3
- ClipEdges is not working anymore HOT 2
- Config optional to unloadLostGeometries and toHide when using culler for IfcStreamer. HOT 4
- IfcStreamer load multiple json files
- Camera controls broken if the zoom distance is too high HOT 1
- Multiple Building Not in Center HOT 3
- Fragment loading fails with large IFC file HOT 5
- Consistency in process and language in the documentation
- Highlighter - Improving events
- Display IFCGRID in 3D view HOT 3
- Highlighter - AutoToggle is active during function highlighter.highlightByID HOT 2
- Each CullerRenderer creates a new WebGL context HOT 7
- Possible memory leak when disposing HOT 1
- some IFC mesh elements not being properly processed with ifcLoader HOT 10
- Static Errors class to throw and document all errors in the library
- Same model twice breaks the scene (with culler in place) HOT 2
- Investigate "Please ignore" messages in tree in umdasch 700MB model
- I generated tile json files using IfcGeometriyTiler, but I don't know how to use these files HOT 3
- npm i @thatopen/fragments errors HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from components.