buildingSMART / buildingSMART/IFC4.x-development
IfcMaterialProfileSetUsageTapering cannot work with a type and an occurrence
- Dominant language
- Python
- Stars
- 234
- Forks
- 123
- Avg merge
- 15h 4m
- Merged PRs (30d)
- 5
Description
The way profiles (and layer) sets work is that assuming you have:
IfcElementType <- IfcRelAssociatesMaterial -> IfcMaterialProfileSetX -> IfcMaterialProfile(s)
Then all occurrences of that type share that profile set. For example:
IfcElement <- IfcRelDefinesByType -> IfcElementType
And then
IfcElement <- IfcRelAssociatesMaterial -> IfcMaterialProfileSetUsage -> IfcMaterialProfileSetX
I labeled it IfcMaterialProfileSetX to emphasize how the profile set is shared between the IfcElementType and the IfcElement occurrence.
Great. So now let's try the same exercise with a IfcMaterialProfileSetUsageTapering.
IfcElement <- IfcRelAssociatesMaterial -> IfcMaterialProfileSetUsageTapering -> IfcMaterialProfileSetX
What happens with IfcMaterialProfileSetUsageTapering.ForProfileEndSet? How is it defined on the type?
Option 1. Deprecate IfcMaterialProfileSetUsageTapering. If someone wants a fancy shaped profile, the profile set usage isn't the way to go.
Option 2. Fix it? One option might be to introduce IfcMaterialProfileSetTapering?
Contributor guide
Assessment
This issue has not been assessed yet.