@steverugi I forgot! haha
@steverugi I forgot! haha
I would be happy with the 'How it should be' solution, is there some info you need to add?
double predefined type I think is related to the UI, it has been removed for other classes (check IfcWall for instance) since the predefined value of an instance is inherited from its type
@steverugi thank you, how do you think I should define the type of content for 'Object Type'?
@Nigel said:
@steverugi thank you, how do you think I should define the type of content for 'Object Type'?
'ObjectType' is used when USERDEFINED is selected, to indicate its value if the other predefined values do not meet your requirement, but I see 'SCREW' is what you need (part of the prefefined list) so 'ObjectType' should be left empty
But I'm curious to know by the experts if the above is correct :>))
I receive 2D DWG of a project I convert to IFC model for quantity takeoff
sometimes the model is more than one part and each of them come with dedicated DWG
is there anywhere I can save the reference drawing in a pset of an element or a group of them?
I think I found an alternative way compared to custom Pset:
Project Overview
> Project Setup
> Documents
click on the +
icon to create a new main document reference container (or folder), like 'drawings'
from there you can edit the folder properties clicking on the pencil
and fill the fields as required to add information to the reference document folder
click on the V
icon to save them, now click on the arrow >
to the left to start loading documents in the folder
from here there are three options:
add a subfolder with relevant documents
add a document reference to the current folder
edit the properties of the selected document reference, click V
when done:
select the element
go to Object Information
> Misc.
> Documents
> click on + Assign Document References
, then select the folder, and click on the arrow >
to the left of the document icon :
select the desired reference (in this case there is only one) by clicking on the +
icon to assign the document refrence to the element
now properly assigned:
the procedure is not that different than the classification assignment
nice one! many thanks
@Moult said:
@steverugi that sounds like a custom pset.
@tim I've always used CLADDING for that.
Thank you! I was thinking of CLADDING as an external element, but I see there is a PSet to nominate IsExternal
Hi @Moult
@steverugi that sounds like a custom pset.
@tim I've always used CLADDING for that.
sorry, I struggle to make sense of the page on IfcCovering available on "standards.buildingsmart.org".
It reads: A covering is an element which covers some part of another element and is fully dependent on that other element.
and Coverings are elements with relationships to the covered element and the space on the other side
..which sounds promising
then it shows two paragraphs on
Coverings can be assigned to
The following guideline shall apply
Please, does anybody know how it works in BlenderBIM? That is, how is an IfcCovering assigned to , for instance, a wall?
Aggregation triggers an error "Cannot aggregate to IfcWall with a body representation", same applies when trying to assign it to an IfcSpace, or at least I wasn't able to.
what's the meaning of coverings that may not have their own shape representation ?
I am a bit disoriented here, any hint pretty please? ;)
@steverugi I am pleased to know it isn't just me who struggles with the writing style of BSi ifc spec, plain English with examples would help me
The documentation seems pretty clear but unfortunately yes it does require a lot of knowledge as to the terminology they use. Here's my attempt at rewriting the docs in simple English :) Also note that IfcRelCoversSpaces and IfcRelCoversBldgElements are deprecated, so I've taken that into account when rewriting the docs.
I've also submitted a PR to buildingSMART to adjust the docs https://github.com/buildingSMART/IFC4.3.x-development/pull/882
A covering (including wall claddings, floorings, insulation, flashings, suspended ceilings, moldings, skirting boards, etc) overs some part of another element and is fully dependent on that other element.
To relate a covering (e.g. cladding) to its "covered element" (e.g. wall), use the the IfcRelAggregates relationship.
To relate a covering to a space (e.g. this room has carpet and a plasterboard ceiling), use the IfcRelContainedInSpatialStructure relationship. This may typically be used in facility management usecases and room data sheets, such as when creating room finishes schedules.
In addition to these relationships, if a covering has geometry that defines its extents and the space it is related to contains space boundaries, then the IfcRelSpaceBoundary relationship should be used to relate the covering to the space. This is typically used for the analysis of spaces, such as energy analysis where it is important to know the exact materials and elements that separate spaces at their boundaries.
Hi @Moult :
thanks a lot for your reply, truly appreciated
I add a few notes in case somebody needs assistance to apply it to BBIM's UI:
The documentation seems pretty clear but unfortunately yes it does require a lot of knowledge as to the terminology they use. Here's my attempt at rewriting the docs in simple English :) Also note that IfcRelCoversSpaces and IfcRelCoversBldgElements are deprecated, so I've taken that into account when rewriting the docs.
I've also submitted a PR to buildingSMART to adjust the docs https://github.com/buildingSMART/IFC4.3.x-development/pull/882
A covering (including wall claddings, floorings, insulation, flashings, suspended ceilings, moldings, skirting boards, etc) overs some part of another element and is fully dependent on that other element.
To relate a covering (e.g. cladding) to its "covered element" (e.g. wall), use the the IfcRelAggregates relationship.
Select covering and (for instance) a wall, go to Object Information
> Object Metadata
> Aggregates
, click on +
and assign a name, useful when there is an opening in the wall needed to be transferred onto the covering, like a window or door.
To relate a covering to a space (e.g. this room has carpet and a plasterboard ceiling), use the IfcRelContainedInSpatialStructure relationship. This may typically be used in facility management usecases and room data sheets, such as when creating room finishes schedules.
Select the covering, go to Object Information
> Object Metadata
> Spatial Container
, click on the pencil, go through the spatial tree and select the designated Space, the covering should automatically shift under the Space container in the outliner.
In addition to these relationships, if a covering has geometry that defines its extents and the space it is related to contains space boundaries, then the IfcRelSpaceBoundary relationship should be used to relate the covering to the space. This is typically used for the analysis of spaces, such as energy analysis where it is important to know the exact materials and elements that separate spaces at their boundaries.
sorry, could you please explain it further here?
if a covering has geometry that defines its extents > are there coverings without geometries?
and the space it is related to contains space boundaries > is it when a space is built using IfcRelSpaceBoundary ? like when a room is functionally divided in two distinct areas that need to be separately identified with two IfcSpace?
to perform the above I use an IfcVirtualElement
as a vertical plan as separator, how does it relate to a covering? could you provide a real life example if you don't mind?
Thank you again for your support and patience
are there coverings without geometries?
Sure. Nothing in IFC needs geometry. Geometry is completely optional. You can totally describe an entire building with all of its floor finishes (for maintenance) and ceiling finishes (for access and maintenance) and skirtings (useful for hospitals) etc without modeling a single thing and it'll be actually enough to build off in a lot of cases without having a single drawing (all hospital jobs here in Aus typically create room data sheets which include data akin to this).
is it when a space is built using IfcRelSpaceBoundary
A space isn't built using IfcRelSpaceBoundary. When you have spaces, you can describe the boundaries between spaces using a space boundary. There are two types of space boundaries: 1st Level and 2nd Level. The 1st Level describes merely what physical (e.g. wall, coverings, flooring, ceiling) (or virtual - e.g. the invisible space between an open plan living room / kitching / dining area) elements define the boundary of the space. I guess it's similar to the "what covering is on this space" but with geometry so you can get more accurate Qtos (exactly how much carpet is in my living areas for sustainability counting - yes this is a real usecase I've encountered). The 2nd Level describes what physical elements form the boundary of a space ... taking into account the neighboring spaces (i.e. the spaces on the other side). This increased granularity is critical for energy analysis when you need to know what two spaces touch, and exactly what's in-between.
If this doesn't sound useful to you, you're probably not the target audience for space boundaries. It's mostly really keen facility managers (for 1st level) and energy simulationists like @Cyril (for 2nd level).
Thanks @Moult :
are there coverings without geometries?
Sure. Nothing in IFC needs geometry. Geometry is completely optional. You can totally describe an entire building with all of its floor finishes (for maintenance) and ceiling finishes (for access and maintenance) and skirtings (useful for hospitals) etc without modeling a single thing and it'll be actually enough to build off in a lot of cases without having a single drawing (all hospital jobs here in Aus typically create room data sheets which include data akin to this).
very interesting topic, of course there are schedules without drawings to detail elements in a particolar context, I didn't know this could be done in IFC, something for me to familiarize with.
is it when a space is built using IfcRelSpaceBoundary
A space isn't built using IfcRelSpaceBoundary.
My bad, I meant IfcVirtualElement
When you have spaces, you can describe the boundaries between spaces using a space boundary. There are two types of space boundaries: 1st Level and 2nd Level. The 1st Level describes merely what physical (e.g. wall, coverings, flooring, ceiling) (or virtual - e.g. the invisible space between an open plan living room / kitching / dining area) elements define the boundary of the space. I guess it's similar to the "what covering is on this space" but with geometry so you can get more accurate Qtos (exactly how much carpet is in my living areas for sustainability counting - yes this is a real usecase I've encountered). The 2nd Level describes what physical elements form the boundary of a space ... taking into account the neighboring spaces (i.e. the spaces on the other side). This increased granularity is critical for energy analysis when you need to know what two spaces touch, and exactly what's in-between.
If this doesn't sound useful to you, you're probably not the target audience for space boundaries. It's mostly really keen facility managers (for 1st level) and energy simulationists like @Cyril (for 2nd level).
Of course it totally sounds useful to me for QTO, very much so.
It would be even more useful if a practical example in BBIM were available, or as usual I do trial-error approach until I find it out myself :)
cheers
Sure. Nothing in IFC needs geometry. Geometry is completely optional.
I'm getting to know the difference between CAD and IFC, in addition to the word semantic:)
Quick question for the community, I have 38 materials that were authored by ArchiCad and exported to IFC.
But there are some items that are important for us to see in order to schedule and do energy analysis with:
Namely the building material physical properties noted in the dialogue from ArchiCad. Does anyone know where I can find these Pset values in Bonsai? @dionmoult said in a PM: "in short material properties include some physics data (e.g. grade of steel , compressive strength of concrete), and all objects have psets for environmental impact (e.g. ClimateChangePerUnit for carbon kgCO2e) for simulations, IFC can natively stored 2nd level space boundaries which can then be used for energy analysis"
But I don't know where I can find these in the Bonsai UI... Can anyone help? Do I need to set up an 'Active Classification Library' with values? per:
@Andyro I see these Psets attached to materials in Bonsai:
Is this an IFC4 file?
Huh. Weird, yes I exported as IFC4. I would have expected to see MassDensity and the like as you show it. So I added more data on IFC4 export, and now I see a list, but no values :/
And when I try to 'search for property' (magnifying glass) I get a .py error:
Is there a database somewhere in Bonsai where I can see the list of values in these Psets?
hi @Andyro
Is there a database somewhere in Bonsai where I can see the list of values in these Psets?
In case you haven't yet please check the Pset page at https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/annex-b3.html
for instance this is the one covering Pset_MaterialThermal
cheers
@Andyro digging a bit:
The blenderbim download 0.0.240602 from the website doesn't show these Material Property Sets.
..but if I install the new Bonsai extension in blender 4.2.1 I can see them, so I guess this has been fixed recently
I suspect ArchiCad is not exporting these values into the IFC, because ArchiCad links elements internally to an xml database called 'Material Catalogue.xml'. I think what we might need to do is recreate this 'Material Catalogue.xml' file in a format Bonsai can read. Attached is what AC uses to apply building physical properties to elements. The xml is formatted like this:
I have a hunch that I may need to link an 'Active Classification Library' per the attaches screenshot. I'm just a little out of my depth here because I don't have a clue what the development arc for Bonsai is wrt how it will handle material/cost/properties from linked databases.
This database was considered for thermal calculations. No idea if there has been further integration.
@brunopostle said:
@Andyro I see these Psets attached to materials in Bonsai:>...
@brunopostle was your IFC imported from Revit or somewhere else? I've tried everything I can think of to get values to appear as you do under your custom Pset - but can't... this is not from a specific element you selected but a kind of meta-attribute for the material itself correct?
@Andyro These are created with IfcOpenShell and Bonsai.
You need to look in your IFC file, each Material and its Psets are structured like this:
#23537=IFCMATERIAL('Insulation',$,$);
[...]
#23541=IFCMATERIALPROPERTIES('Pset_MaterialCommon',$,(#23542),#23537);
#23542=IFCPROPERTYSINGLEVALUE('MassDensity',$,IFCMASSDENSITYMEASURE(100.),$);
[...]
#23543=IFCMATERIALPROPERTIES('Pset_MaterialEnergy',$,(#23544,#23545),#23537);
#23544=IFCPROPERTYSINGLEVALUE('ThermalConductivityTemperatureDerivative',$,IFCREAL(0.1),$);
#23545=IFCPROPERTYSINGLEVALUE('SpecificHeatTemperatureDerivative',$,IFCREAL(0.2),$);
@Andyro The distinction between Attributes and Properties is that Attributes are part of the entity itself. ie. the IfcMaterial above has two Attributes (Description & Category) which are empty (represented by $ & $); Properties are separate entities which attach themselves to the Material or whatever.
Ok thank you! I think I see now that ArchiCad is NOT exporting the values for IFCMASSDENSITYMEASURE, or any named values like ('ThermalConductivityTemperatureDerivative', $, IFCREAL(0.1), $);
So we might need to append this data to our files somehow with these values but the IFC export from AC seems really verbose; with thousands of callouts of the same materials for each element, where we'd hope to write single absolute values for say: #6665=IFCMATERIAL('07 | Rockwool Comfortboard 110 1',$,#6259,$,$); and have those values apply to every instance of that material... so would this need to be written into each line in the $&$ section of every instance, or could we make a table with all the absolute and specific values that apply to all instances/elements?
I also see the same structure for IFCMATERIAL, and IFCMATERIALCONSTITUENT (for ex. composite walls), where I'd imagine if we had a way to write the values to IFCMATERIAL they'd be picked up or relevant to any assembly containing the same IFCMATERIALCONSTITUENT?
PS - we write long material names because that's how we want them picked up in our notes and schedules and automated wall labelling inside Archicad, and probably from Bonsai eventually too. Otherwise contractors tend to use the wrong fasteners, etc.
PPS - ArchiCad writes these values as ArchiCad 'Properties' that cannot be exported to XML, Text or otherwise. So it looks like we'll have to recreate these line-by-line from scratch to match our project templates.
Login or Register to reply.