Questions about the pipe.SetSize Node

This could be a real easy question. I’ve created a dynamo script to change the altered pipe sizes based on an excel design sheet. Currently I’ve done this with resizing the inner diameter. However, that is not ideal.

What is the proper string of information/blocks I need in order to allow me to change it by part size. I’m assuming this is the pipe.Set.Size Node.
I can reformat the items in excel as need to make this work.
I’ve attached my current configuration.

Thank you,

Hi @kbrownEEUYJ,

Using the Pipe.SetSizeByInnerDimension node seems like a good approach to me. Is there something that isn’t working?

As far as the graph goes, it‘s generally best practice to avoid parallel branches so that you don’t create a race condition. So you might consider taking the pipe output from Pipe.SetSizeByInnerDimension and using that as the input for Pipe.SetInverts instead of two branches coming from GetPipeByName.

I’m new to using Dynamo and despite my best efforts I am unable to find an example of this node being used or a better description of it. I am not seeing the logic of how it gets from searching the drawing for the parts list, to picking the parts list, and than picking the right part that my excel output describes. It will no doubt be obvious once I see it. However at this point the setup eludes me, and I don’t feel like I’m making progress.

Also thank you for the comments with regard to best practices. I’m assuming that a race condition will slow down or screw up my inputs. I am finding this script doesn’t move as fast as I like. I made changes to limit the resizing only to parts that changed. However, I’d still like to make this faster. Any comments or suggestions you have are much appreciated.

Thank you,

I think the Pipe.SetSizeByInnerDimension node will just change the size of the pipe within the same part family (i.e. it won’t swap parts). If you are wanting to change to a different part, then you would need a sequence similar to below to get the part sizes, followed by some more nodes to match up the Excel input with the corresponding part size (I’m just picking 12" CMP in this example). So if all you are wanting to do is change the pipe diameter and keep the same part family, then the Pipe.SetSizeByInnerDimension node is much simpler.

1 Like

Thank you, I thought it would be obvious. But a straight string like this without inputs seemed out of place. Now I know my error will be own.

Changing the pipes by the inner diameter I agree is the easiest option. But if I did that I would also have to add in additional routines to update the pipe style past a certain pipe size and make modifications to my labels for it to work properly.

I figured I may as well do it right. I’m going to be passing this off less experienced users and the fewer exceptions I have to explain the more likely they are to get it right and more likely they are to use it.

Thank you for your help.

1 Like