PlanTopology Area

Hello Everyone

Happy holidays. :smiley:
In our office, we model a lot of as-built structures from point clouds, and we base our invoices on the model’s footprint area. We work this area out by drawing filled regions over the external edges of the building, which is quite a task as we will be modelling many such projects in the future.
Is there a way through Dynamo or the Revit API to work out the model’s area based on the visible elements in a plan view without using a lot of geometry?
Thanks for your help.

@Alban_de_Chasteigner @GavinCrump @jacob.small

1 Like

Assuming your floors cover the whole area, you could try taking all floors and getting their top faces, flattening them to the xy plane, unioning them, getting their perimeter curve loops and finding the one with the largest enclosed area. Assuming your building is a single enclosable shape to its floor edges roughly, you could then get that area from the isolated edges as a patch.

Can’t think of a way to do this without using geometry. Area is a consequence of surfaces so you’d always need to end up with geometry to measure that I think.

2 Likes

It’s a relative value, so I would just work with math here.

  1. Bring the pts file into your bulk processor of choice.
  2. Slice the points by Z value segments based on known floor heights.
  3. Get the min X and Y value of the points in each slice. This would be the min point for the floor plate.
  4. Get the max X and Y value of the points in each slice.
  5. Get delta of the X and Y values, and multiply the two to get an approximate area of each plate.

Note that you can segment the pts file into quadrants if you have an oddly shaped building, but likely I’d just work with the raw data of each scan as the act of merging scans indicates an added degree of complexity which your modeling will have to account for, and number of scans is likely a good way to approximate that complexity.

5 Likes

Ah yes I misread, good pickup that it’s just points at that point.

@bayowindapo Jacob’s approach is solid here.

1 Like
2 Likes

Hi Everyone,

Thank you so much for the suggestions!
I will go through them soon and revert.
Much appreciated!!

Hi Jacob

Thanks for the suggestion.
It is a much better idea to work with the points file data rather than the Revit model.
However, quite a few buildings we will be modelling have oddly shaped footprints, so the solution must consider this. We will be modelling almost a thousand structures.
I am investigating if a combination of the sastrugi package by @Ewan_Opie and the open3d libraries from @RMohareb’s post can create a mesh from points filtered by level. The idea is to pull the area from the formed mesh.
I wonder if this could work?

Thank you.

1 Like

It might. But I wouldn’t spend the effort. It is a fairly significant lift to do all that just for bidding, and when coupled with the reality that you will have real area values readily attainable from the eventual Revit model when done… I would put in the effort elsewhere.

2 Likes

Agreed. Thank you.