Just thinking out loud here, would it make sense to develop a system whereby, if a class name is in a IfcMaterial.Name, then it takes on that class?
For example, let say we have (3) ifcmaterials named.
-
CONCRETE SLAB
-
CONCRETE FOUNDATION WALL
-
TILT-UP CONCRETE WALL
since all the material names have the word concrete
in them, all the svg paths would have the .material-concrete
class assigned to them.
Also too, would it make sense to not use IfcMaterialConstituentSet.Name, IfcMaterialLayerSet.Name, IfcMaterialProfileSet.Name, etc. to assign classes but only use the IfcMaterialConstituent.Material, IfcMaterialLayer.Material, IfcMaterialProfile.Material, etc. that's assigned to these sets?
That way, if i have 7 different IfcMaterialLayerSets that reference (1) concrete
IfcMaterialLayer.Material, I can do that in (1) operation vs adding concrete
to (7) IfcMaterialLayerSet.Names.
Maybe since we don't currently visualize IfcMaterialLayerSet layers in BB, we can do some convention where the 1st MaterialLayer gets the svg class.
And when visualizing IfcMaterialLayerSet layers becomes a thing, it would seem using IfcMaterialLayer.Materials for classes, would make more sense.
The 1st material convention would still be apply to IfcMaterialConstituentSets, however.
Just spitballing.