Insert pipe sleeve at wall intersection with rotation and size


#1

I’ve been making some headway on a script to insert a pipe sleeve at any pipe penetration of a fire rated wall from a linked model. I’ve been able to get it to automatically select the linked model and all of the walls in it, then filter it down to only show the Fire rated walls. Next I select all of the horizontal pipes in my model, then I find any intersections of those elements. Then I insert the pipe sleeve at that point.

But I’ve hit a roadblock; I can’t seem to figure out how to get the pipe sleeve to rotate to the same orientation of the pipe. I’m also trying to get the pipe size and wall width and apply them to the sleeve. I have been able to pull the orientation of the pipes but I have not been able to get the angles to properly assign to the sleeves.


Automate placing Pipe Accessory (Valves)
#2

Here are two nodes from custom packages that might help


#3

Can you show where you’re getting the pipe orientation? From there you usually have to compare the pipe direction (vector) with the zero rotation angle (usually the positive x-axis) to find the angle of rotation. The nice thing about this case is your pipe sleeve is probably non-directional and only needs to be aligned to the correct angle so you shouldn’t have to mess with positive/negative values.

As for getting pipe size and wall width, you’ll probably need to use a Geometry.DoesIntersect node as well. That way you can filter out which pipe intersects which wall and get the parameters that way.


#4

And also you could take a look at these nodes from Bakery:


#5

Thank you everyone for pointing me in the right direction! I was finally able to finish it up with your suggestions.

I ended up using the following packages:
Archi-lab Grimshaw
Clockwork
Bakery
and I think I have something from Springs

So, here’s what it does:

  1. Automatically find 1 and 2 hour fire rated walls in a linked model.
  2. Select all horizontal pipes in the current model.
  3. Clash for insertion point and filter out any pipes that do not intersect.
  4. Insert a pipe sleeve at clash point.
  5. Set rotation of sleeve to match pipe.
  6. Set diameter of sleeve to outside diameter of pipe.
  7. Set sleeve length equal to wall thickness.


Pipe Tags with Auto Leaders
#6

Hi @Jona

Could you mark the post as solved. You’re welcome!


#7

Is there a DYN you can share? I am hoping to adapt this for vertical pipes through floors.


#8

Here you go. Let me know if it works for you.

Walls Pipes intersection.dyn (138.3 KB)