Divide a duct to a length not greater than 3.92 ft

Some one have one idea?

Are you wanting to separate out ducts less than that length or actually split the model element?

Hi Josue.

Can you be more specific with your question.

Split all the ducts in sections no more than 49".Captura

Hi J_Josue_Correa

I’m having the same problem and i will thank a lot if somebody know how it can do it.

Have you a solution already?

Thanks a lot in advance

here you go…
DuctByLength.dyn (20.6 KB)

same solution as for

1 Like

If someone should be interested, then is here the solution for splitting ducts into segments and adding union fittings as joints.
DuctByLengthUnion.dyn (37.0 KB)

For alternative solution see here
-> Split Geometry At a given length


And you end up with unconnected ducts/unions.

Try to use this solution then… It used @T_Pover node “MEPFitting.ByMEPCurves”

DuctByLengthUnionConnected.dyn (33.2 KB)


Hi Erfajo,
I am new to revit and dynamo and if I ask any stupid question please dont mind. I tried your DuctByLengthUnionConnected.dyn and it worked like a charm. We use 1400 lengths for duct and I changed your code slightly.

. When I run dynamo. it makes the first duct peace to be 1401 and the rest to 1400. The problem is when i re-run the code, it will try to break the first peace again as it is larger than 1400 and tries to put a joining peace. How do I change the code to make sure all elements are 1400 long.

Secondly, If i replace the first two nodes with a select model element node, it works great for the first pass and if i draw new ducts and try to re-run the code it. it will undo the first pass (joint the elements it split in the first run) and splits the elements selected. Can you please advice me what changes I have to make to fix it.

CheersDuctByLengthUnionConnectedSelectElement.dyn (33.2 KB)
DuctByLengthUnionConnected.dyn (33.5 KB)

If you have a length of 1401 mm, then it will try to split it. The easy answer would be to ask you to shorten the length with 1 mm. The other option would be to implement some kind of “acceptable” oversize.
In the case with elements split by first run of the script, then you could include to set a Yes/No parameter, an let your script evaluate only those new ducts “Not” marked yet.
The way you describe the script, then the later solution would also solve the first issue.

1 Like

Thanks Erfajo

Hi ,

  1. Why I’m getting first item as 1400 and remaining to be 1395
  2. Ducts got Splitted from the Elbows/Joints
  3. Archilab node didn’t work for me so I added Tool.eraser by steamnode

Duct split.dyn (74.3 KB)

Please start a new post. If needed then refer to this topic.

I did. Duct/Pipe Split