1

I am looking for a way to get dimensions of walls for example from an IFC file. I tried using Xbim and IfcOpenShell with no luck. How does Revit get dimensions for each entity like length, area and volume.

How can I achieve this?

2 Answers2

1

It's not clear what code you've tried so far - if you're able to post something up, and explain what you expect, people may be able to help more. Make sure you're clear on what dimensions you need, and how accurate the data needs to be. (i.e. what does the 'Area' of a wall include? Does it include openings, or windows/doors? Which side of a wall are you looking at - inside/outside, side, top etc?)

If you're using XBIM there's an example on finding the Area and Volume of spaces/rooms, which could serve as a good starting point.

It's worth noting there are multiple means of establishing these quantities from IFC which largely fall into two approaches:

1) You acquire the pre-calculated data from the semantic data. This is the approach the XBIM sample uses.

In this scenario Revit (or any other authoring tool) is assumed to have already made the dimensions/quantities available during export, following conventions in the IFC schema. i.e. http://www.buildingsmart-tech.org/ifc/IFC2x4/rc2/html/schema/ifcproductextension/lexical/ifcelementquantity.htm

2) You calculate the quantities from the raw geometry. This is much more involved. You'd need to calculate the solid geometry from the Ifc Representation (which XBIM.Geometry can do), before doing the calculations to work out the dimensions. If your walls are 'regular' rectangular extruded solids that's pretty simple; but if they're not it's going to be more complex. Depending on what you're doing you may be able to use bounding box representation to simplify calculating dimensions, but areas & volumes are going to be off.

Andy Ward
  • 324
  • 2
  • 7
0

Revit is a BIM software that creates and manages a building information model. Within Revit, most elements are parametrically defined. For instance, a wall's height is defined by its lower and upper levels and optional offsets up and down from those levels. Therefore, Revit automatically knows the wall's height from its parametrical definition. That answers the first part of your question.

To answer the second part of your question, I would say that you can achieve that by implementing your own BIM management software.

That sounds like rather a daunting task to me.

Maybe that is not exactly what you are after.

Jeremy Tammik
  • 7,333
  • 2
  • 12
  • 17