I receive multiple models from multiple designers that use various modeling techniques, worksets, protocol, standards, etc. I am painstakingly working on a Dynamo script that can be run on “any” model and identify the exterior face of all/any elements that make up the building skin and return the area of each of those. I need the script to identify the element as exterior by its physical location, not by the element’s data (ie an exterior wall could be just a generic wall, modeler may not have used the exterior wall element) Any help from any in the this community would be greatly appreciated.
Get a bounding box for the entire model and scale it up 2x about the centroid.
Create a series of room separation lines at the limits of this bounding box.
Place a room 1 unit away from the maximum point at each level.
Get the bounding elements for each room.
This may miss some small walls (IE a stone base around a foundation) but it should get most, and would allow you to query the length or area.
Getting the geometry of the ‘outside’ room might allow for a “does Intersect” test as another means, but would be VERY slow.