I know their is a topic about pipe hangers already, but im trying to figure out whats wrong with the code im creating. The graph will correctly lay out the hangers on Level 1 but It wont set the anchor height correctly on Level 2. Do i need to modify the family i made to work off levels? Here is the dyn and the revit family im using.
check out he Z elevation of the point locations and the level elevation subtracting. seems like a math problem. zoom closer to set anchor to take a better look and show elevation results.
yes give it a shot, i address slopped piping separately.you can develop a graph for that task also, but i don’t see much sloped piping. thinking of setting a range to capture only small changes in Z so that you don’t capture straight verticlas.
uh, did it rotate previously with the other hanger? search for family rotation treads in this forum, I have seen others provide solutions better than the method I use…which is a Vector In the direction of the Default hanger orientation checking angle and adjusting at each point. there is a better way I think?
I think we need a cloud drive for these files. ill start with the free dropbox subscription. anyone else interested can e-mail to get access. Be great if we all contribute to make these graphs better or tackle this process with a bit more tools than this forum allows.
To filter the z height differential:
Get z values for end points.
Subtract the two values.
Math.Abs to make a single number. Call this height differential.
Get the length of the line. Call this length.
Divide height differential by length. Call that height length ratio.
Filter elements by height length ratio < X. Included set needs hangers for horizontal systems. Excluded set needs hangers for vertical systems.
uh, dyn is not downloading. ( email me @ wuil@wmedrano.com )Your script is much cleaner looking than mine.
I was also attempting to have dynamo calc the point load at each hanger. I think we can have the hanger detect intersecting pipes between hanger and list total weight at each point, fill up a shared parameter, along with hanger mark. only got a bit started on this approach. Once I get something going we can get another thread going.