Adding pipe insulation

I’m trying to find (or build) a solution for adding pipe insulation based on two parameters: system type and pipe size. There are a few discussions around this topic but I just wasn’t able to find anything working. This function would be a great addition to Revit standard tools actually… Any thoughts?

1 Like

Hi Ivanm,

Can you post your work from Dynamo so far? Then I can see your thoughts and maybe guide you in the right direction.

Kind regards :slight_smile:

1 Like

Seeing as this has been asked before a few times I thought I’d add it to my MEPover package:


Thank you Christian. So far i don’t really have anything logical. I found some bits and pieces but hoping that more advanced users could guide me through this journey. I found a block that deletes all the insulation which i think would be the the right start…

T_Pover, could you please explain what code above is doing?

Well the node is pretty straight forward, it just adds insulation to the selected pipes/ducts. All the other logic (filtering by system type and size) you will have to set up as input to this node. I guess you should first figure out what you want to do: what insulation type should be added to which pipes? Define your criteria and work from there.

Let’s say for all S-MPS (steam) system pipes ø4" and greater I want to create 4" thick insulation for smaller than 4" I want 2" of insulation. How do i filter it? What is the proper way to sort by multiple conditions (IFs) in Dynamo?

Take a look at “FilterByBoolMask” and “String.Contains”. FilterByBoolMask filters the true and false statement you’ll get from String.Contains.

In “String.Contains” you could filter it by the System Name X and afterwards use “Greater than or equals” to get the correct pipe size.

1 Like

ok, first of all I need to delete all insulation in the file.

then i want to read an excel spredsheet and create lists

now i’m not sure how to filter elements by each system type and “apply” insualtion…

That will get you the insulation thickness based on system type and pipe diameter.

Nick, is there a way to deal with lists to get the same results? Following your example i would need to create chunks of code per each system type and diameter… what i’m trying to do is read this info from Spreadsheet and create generic logic for every type… maybe i need loop of something :slight_smile:

It’ll work with lists. You’ll just need to play with the lacing a bit and maybe use levels on curtain nodes.

Ok, thanks for hints!

Please start a new post with images of what you’ve tried and where you’re running into issues.

Hi Nick

Here are some screenshots. I followed up ivanm’s work, and modified that a bit.
I could finaly manage to add insulation on certain dimensions pipes with certain insulation thicknesses.
But with pipe fittings I cannot do it. I am trying to cling to any pipe fittings parameter.(I could do with “Diameter” for pipes), but have no success so far. If you could take a look please, what could be changed in script so it could work.
ss 1-4 pipe insulation, ss 5-7 pipe fittings insulation.

Please let me know if I could upload some information. Thanks!

Thank you Christian !
But I am really focused to solve the situation over here so that Dynamo finds in “Size” parameter, substring “76”. It should not be difficult, I just dont know how to connect that area properly.

@dmit0108 My last response may have been unclear. Please post all of this information as a new thread. New questions require new threads and this one is already 3 years old anyway.

Check out this video about adding insulation type and thickness according to pipe system type. Thank you for python codes @T_Pover