I would like to use IFC to capture whether or not a product (in this case a mooring bollard) has a coating - this could be paint or galvanising or something else. I am more interested in capturing data about the expected performance of the coating system - i.e. structural components are painted with paint that is expected to last ‘X’ years to first maintenance in environment ‘Y’. Does the schema already include something for this? IfcCovering almost does it but not quite - what do people generally use?
IfcCovering is used in Tekla Structures. What do you think is missing in ifcCovering to do the trick?
My first query was whether or not IfcCovering is intended to be used this way or is in common use in this way. Thanks for your response - it answers this question for me.
The reason it doesn’t quite work for me is because of the limitations of Pset_CoveringCommon. The thing i am most interested in from a paint system is the environment that it is intended for and its durability (eg the corrosivity categories and durabilitiy requirement property from ISO 12944). From the point of view of a structural engineer in the infrastructure sector this is how paint and other coatings are specified. Im wondering if these parameters are already included somewhere or how people generally include them?
The Pset_CoveringCommon as also all the other common property sets include some properties. I have my doubts are they the correct ones and valuable for the data transfer. Therefore it would be very valuable to know what the users are thinking of them. Not only this particular property set.
At least in Tekla it’s possible to add user’s own property sets. That’s the way to add more proper data.
This is one of IFC issues, that could solve with some dirty hack but bSI “should” solve it (software should do this, not with injecting some human tricks on IFC)
IFC has vital issues related to Materials and Finishes (IfcSurfaceFeature
)
Indeed, IFC recognizes finishes as “non-” materials
Bumping this topic. I do not see IfcCovering as a valid solution to this, as “paint” or “galvanisation” is usually not modeled. It is possible to create an IfcCovering without a shape representation, and solve it that way, but I am skeptical if this is the right approach either.
Perhaps this could be an property assigned to an IfcMaterial?
Bumping again. We were thinking that maybe MaterialConstituentSet
& ShapeAspect
mapping is fit for the task?
Considering that ShapeAspects are allowed to hold IfcShapeModel
references one can use IfcTopologyRepresentation
to address the particular face of the product shape representation & name ConstituentSet.
Taking a fresh look, I believe IfcMaterialLayer can hold this information.
Which properties you plan to store will determine whether existing psets can be used, or new ones need to be created.
I am not convinced that storing maintenance information on the layer itself is a good idea. I suspect this is not how facility operators work. Facility operators work in terms of assets - so the maintenance timeline metadata should follow the FM-related specifications.
Not sure I follow your thought, how would one model a paint of a single IfcFace in a product represented by FacetedBrep for example using IfcMaterialLayer? I’d add that IfcMaterialLayer is not allowed in RV.
@claimred yes you are correct, sorry, for a single IfcFace, a MaterialLayer is insufficient. A constituent would be what you would use.
Bumping yet again, the problem with specifying an IfcMaterialLayer (which works for walls) and IfcMaterialConstituent (which works for arbitrary faces) is that what’s missing is IfcMaterialProfile. It could in theory be solved by using another profile def with a profile type set to CURVE
hence you are painting along the beam, but not the ends of the beam, but it becomes a huge amount of work to be honest just to say “This thing is painted”.
Ideally, a common pset can be added that has simple things like “HasCoating” with some things like CoatingType and grades - the implicit geometry definitions through material sets can be an additional detail if required, but having a pset just makes life easy. Thoughts? Ping @claimred @lassi.liflander