SVG classes from Materials
As materials are concerned, is the only way to get a SVG class out of them is through one of the following, correct?
- IfcMaterial.Name
- IfcMaterialConstituentSet.Name
- IfcMaterialLayerSet.Name
- IfcMaterialProfileSet.Name
Or are there other approaches?
Comments
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.
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 addingconcrete
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.
... or would it make more sense to start using things like IfcSurfaceStyles through IfcStyledItems?... and IfcSurfaceSide for when it's a cut or a projection.
Oh the possibilities. :)
You can add any arbitrary metadata that you want in the "Metadata" property of the EPset_Drawing. Just add more comma-separated selectors in there. For example
material.Category
which should (haven't tested) let you tag using the material category.Ha.. thanks. Clearly I'm over thinking this. ;)
Will test.