Check by Rooms if a Wall is External

I tried what i thought of last night and it works!
Because we make individual walls i can filter out the walls that are room boundary and the walls that aren’t.

When i have all the walls that aren’t room bounding means they are External.

Then i check if the Non Bounding walls intersect with wall that have room bounding, if they do then i know is the wall that belongs to the IsExternal.

Everyone thanks for thinking with me for this solution.

If anyone is interesting in this script let me know and i will share it with you guys!

1 Like

This topic has been solved at post 12:

For the rest, quite a few results show up in the forum:

I have a few questions both to ensure you have the right solution and so that myself and others can learn some more here:

Isn’t this another means of saying ‘rely on the draftsman to not make a mistake?’ (Asking this to ensure you’ve got the right solution for your workflow)

(Asking these for educational purposes):
Do you lave the stud layers of interior walls as room bounding as well, even though the gypsum will be the bounding elements?

What other software post Revit are you leveraging which works better with the separated walls?

What is the time savings post 20% extra time spent?

Lastly, please share the script and a small sample model so everyone can understand how this method works for you.

1 Like

@jacob.small
We have strict rules on what rooms we created and how we name them.
Based on this list which is available in the template a draftsman give the room a name. So i know all the possible names for at least the Exterior Rooms for example (Balcony, Terrace and so on)

And the results from Dynamo i will make visual for the draftsman aswell. I first make a seperation based on this script to see what should be classed as External and what as Internal. Then i make a check if they used the right walls for the right location. We have a library with walls where a draftsman picks a wall. (This is for the Dutch market)

So based on those two results i can compare them and see if there is a wall placed at the wrong location.

And like i said before we draft single walls, but for you to understand this is for different co-makers. For Example (Limestone, Insulation and brick). But for stud wall with gympsum we draft this as one wall (because it will be made by one co-maker)

We use Vico Office and Solibri.

I work at a general contractor and what we noticed is that a calculator does a lot of extra / “double” work and to get the right quantities we have to check the models in Solibri / Revit to make sure it’s consistent.

We learned from experience the lower quality of the IFC gives a 30-40% result of quantities we can use in Vico, if we “upgrade” the model with more detailled information we can get upto 80%. And then we just ask the calculator for example how long will it take you to determine this or that quantity, if a drafsman can do it quicker we put it in the model.

Hope it all makes sense what im trying to explain, i have to be honest its a very specific work flow for our company and we are trying to improve every day step by step.

I will finish my example project and im happily to share it with you guys, so we all can learn from it. And any feed back would be nice.

Lastly, thanks for you response and help trying to make this work.

We will be happy to take a look at this when we have time for that.

First of all, i fully agree with @jacob.small 's statement regarding automation. Also, (personally) i do not think Revit’s semantics (and moddelling constraints) are currently specifc enough for these kind of checks. That being said, i’m really interested if people are somehow enriching their models with ontologys (though i do not really know that much about the practice).

@fverwoert
Regarding the green/blue walls: Since you are dutch i guessed you’d want your walls to be subsumed in accordance with IFC2x3 and Nl-SfB (also the BIM Basic IDM), in which case the innerl leaf of an ‘external’ wall should be. Thats why some of those walls were green. Still, you are limited to a maximum of 2 bounding walls per section.The fact remains that you’re limited to just raising the general quality of the model through visual checks, and automation is out of the question. (and are somewhat depended one the draftsman results e.g. checking 'bounding wall’s boxes)

Since we’re active in the same country a within the same discipline, i’m especially interested in what you are trying to achieve. I’ve fiddled around with it a bit, and made two ways to achieve a result. (note: i’m not saying this is a finished script, just made a simple concept.)

I’ve made some screenshots below! :slight_smile:

First i tried using just one layer,
The first step would be checking the requirement: “Every wall must bound 2 rooms” Dynamo-script: "P. Boundry Check. The upside is that it requires less work and could be more trustworthy then using multiple layer. The downside however is that it’s harder to use for co-worker purposes (and draftman-erros may still occur).
The second check _Dynamo-script: "P. Envelope Check._shows the envelope-script whe using single walls (according to IFC2x3-definition of Pset_Wallcommon.IsExternal).

Next, i’ve tried @fverwoert 's method, using multiple layers

The first step would be checking the requirement: _“Every (room bounding) wall bounds at least 1 room, but does not bound multiple rooms except when only interior or only exterior rooms are involved.” Dynamo-script: "R. Boundry Check. The upside to this requirement is not having to split every wall, the downside is it will be more eligible for errors.
The second check _Dynamo-script: "R. Envelope Check._shows the envelope-script whe using multiple walls (according to IFC2x3-definition of Pset_Wallcommon.IsExternal).

Even though these methods are not idiot proof, it can detect a lot more anomalys then when using nothing.

P. Boundry Check.dyn (20.1 KB)
P. Envelope Check.dyn (17.3 KB)
R. Envelope Check.dyn (21.1 KB)
R. Boundry Check.dyn (36.9 KB)

3 Likes

How was this script executed?