Which Software to create lists of quantities of the used building materials

Hi there
I am a consultant for sustainable buildings. To make life cycle assessments and therefore to quantify the used building materials, people in my office use the measure tool of a PDF reader, which reminds me of the Stone Age.

I would like to improve that practise and as we always get an IFC file, I would like to use a Software to take out the quantities of the used building materials. Are there any recommendations which software, best would be freeware, to use, that can easily create lists (compared to eg. the lists in Revit)?

Thanks you!

Hi Luca,

This is exactly the sort of thing I thought we would use IFC for.

However, after doing a lot of reading, research and messing about with various IFC libraries my conclusion is that IFC is so complicated it is only feasible to use it as an exchange format, i.e. to transfer information between two different systems.

Data exchange was actually the main design purpose behind IFC (and it has problems all of it’s own) but I had high hopes that we would be able to use it directly. It is possible, but it is not easy and IMO it rarely worth the effort.

I am sorry to be so negative but if you search for real-world examples of IFC processing you will see what I mean.

Cheers,
Derek.

Hi Derek

Thank you for your evaluation. For me this should be a key feature to not only use IFC files as an exchange format but also to be able to drag informations out of it.
I did try it with Solibri Office and it worked quite well though. It is possible to filter materials and read out quantities. I could also export it to Excel.
So it is not as bad as it seems but also not entirely perfect.

Cheers
Luca

I think your experience is dependent on the quality of the IFC export. With a properly structured and exported file, you should be able to query quantities based on materials or material layers.

I guess it depends on your definition of “data exchange”. When the previous ISG developed the Coordination View 2.0 and Reference View 1.4, one of the intents was to be able to read quantities from the IFC model file, independent of a “native” BIM-authoring tool.

Again, depends on the quality of the file. This is dependent on the model author setting it up correctly in their software, making sure the IFC mappings are correct, and then exporting properly based on the appropriate MVD and options. I thought we nailed this down for IFC2x3 CV2.0 and IFC4 RV1.4 software certifications. But that doesn’t mean a user can’t muck it up.

What is that?

MVD = Model View Definition. Because the IFC schema is so large, an MVD specifies a subset of the schema used to export/transmit model data. An MVD will usually specify the type of geometry allowed (e.g., BREP vs. CSG) and certain domain features (e.g., structural analysis model or MEP/building services model).

You can see a catalog of MVDs here.

Software certified to support certain MVDs (for IFC2x3 and IFC4) can be found here.

Thank you for those links.

I will try to convince our customers to use them. Currently we get more of less random exports from Revit that contain all kinds of different elements with no consistency at all.

Unless @angel.velez says otherwise, those Revit users should get good results if they are using the latest couple of versions of Revit, exporting to IFC2x3 (CV2.0) or IFC4 (RV1.4) and using all the default values of families and the IFC mapping table to export properly and consistently. Revit is certified for export of those.

If things are missing from the IFC export, then they may be missing from the Revit model or have been improperly (re)mapped. At some point, they may have to rely on Autodesk support resources to get to the heart of any issues.

I know there is an option to export via a “generic MVD”, but unless you really know what you are doing IFC- and Revit-wise, it’s rolling the dice.

Agreed. If you are finding issues in the latest versions, send me an email and we can discuss.

The author of the Revit model should activate “Export base quantities” with the IFC export on the “Property Sets” tab. And preferable (with recent Revit 2023 or 2024 versions and an up-to-date exporter) also the “Export material property sets”.

That said, the exact quantities per material are not exported this way.

What you can derive from the exported IFC is e.g. the NetSideArea #307 of a wall, e.g. from the IfcElementQuantity (which is a set of quantities):

#301=IFCQUANTITYLENGTH('Height',$,$,2999.9999999871293);
#302=IFCQUANTITYLENGTH('Length',$,$,6830.0000000000027);
#303=IFCQUANTITYLENGTH('Width',$,$,369.99999999999994);
#304=IFCQUANTITYAREA('GrossFootprintArea',$,$,2.5270999999999884);
#305=IFCQUANTITYVOLUME('GrossVolume',$,$,7.5812999999674773);
#306=IFCQUANTITYAREA('GrossSideArea',$,$,20.489999999912101);
#307=IFCQUANTITYAREA('NetSideArea',$,$,20.489999999912101);
#308=IFCQUANTITYVOLUME('NetVolume',$,$,7.5812999999674835);
#309=IFCELEMENTQUANTITY('0qp_x20PzdpMcqFde$A9Dt',#18,'BaseQuantities',$,$,(#301,#302,#303,#304,#305,#306,#307,#308));

The thickness of material layers #270 (IfcMaterialLayerSet), e.g. 10cm for the last layer #269 referring to material #257:

#257=IFCMATERIAL('C3A_pleisterwerk_wandbekleding');
#265=IFCMATERIALLAYER(#228,90.,$);
#266=IFCMATERIALLAYER(#233,30.,$);
#267=IFCMATERIALLAYER(#241,100.,$);
#268=IFCMATERIALLAYER(#249,140.,$);
#269=IFCMATERIALLAYER(#257,10.,$);
#270=IFCMATERIALLAYERSET((#265,#266,#267,#268,#269),'Basic Wall:C3A_21_WA_LB_spm 90-30-100-140-10');

and the density of each material (e.g. for material #257)

#880=IFCPROPERTYSINGLEVALUE('Name',$,IFCLABEL('pleisterwerk - gips'),$);
#881=IFCPROPERTYSINGLEVALUE('Description',$,IFCLABEL('Plaster of Paris'),$);
#882=IFCPROPERTYSINGLEVALUE('Keywords',$,IFCLABEL('thermal:solid'),$);
#883=IFCPROPERTYSINGLEVALUE('Type',$,IFCLABEL('Solid'),$);
#884=IFCPROPERTYSINGLEVALUE('SubClass',$,IFCLABEL('Plaster'),$);
#885=IFCPROPERTYSINGLEVALUE('Source',$,IFCLABEL('Autodesk'),$);
#886=IFCPROPERTYSINGLEVALUE('Density',$,IFCMASSDENSITYMEASURE(1300.),$);
#887=IFCPROPERTYSINGLEVALUE('Emissivity',$,IFCREAL(0.90000000000000002),$);
#888=IFCPROPERTYSINGLEVALUE('Behavior',$,IFCLABEL('Isotropic'),$);
#889=IFCPROPERTYSINGLEVALUE('TransmitsLight',$,IFCBOOLEAN(.F.),$);
#890=IFCPROPERTYSINGLEVALUE('Permeability',$,IFCVAPORPERMEABILITYMEASURE(0.),$);
#891=IFCPROPERTYSINGLEVALUE('ElectricalResistivity',$,IFCREAL(2000000.0000000002),#64);
#892=IFCEXTENDEDMATERIALPROPERTIES(#257,(#769,#880,#881,#882,#883,#884,#885,#886,#887,#888,#889,#890,#891),$,'Thermal');

These numbers can then be used to make a reasonable guess on the available material quantity. Beware of the units in your model, though. I’m not aware of a direct way to export material quantities. I’ve tested with a Material Takeoff Schedule to be included with the IFC export, but this skipped over the individual material properties, alas.

If the user has modelled each material as a separate element, you can use the element quantities directly.