Catenary

a is a constant that helps alter the height. It is not the height variable.

That’s the reason I said it’s a manual process that adjusts the height.

However, if you are using the definition I posted earlier, feed in 9 (not 4.5) for width.

Determining a is an algebraic problem. Need an equation to solve for a (I wasn’t able to)

i am looking for a way to replace a script that i have used int he past in 3ds max for catanary that would take a excel table of xyz locations and calculate a long run of catanarys using the values of tension in N, Density N/m Gravity, would anyone be willing to help with this. i have the max script with the equations. i was trying to start with the tools above but i am new to dynamo and need help here is a link to the script i am trying to replace https://autodesk.box.com/s/yl7ose5z33njqaitey0uhq2i298uuohb

Hi Vikram,

How would you manipulate this script so that you can feed it a list of p1’s, p2’s, and a’s and lace longest?

The above definition, slightly altered, should work fine with lists …
catenary-20180119.dyn (6.5 KB)

l=Line.ByStartPointEndPoint(p1,p2);
x=(-l.Length/2)..(l.Length/2)..0.1;
z=a*Math.Cosh(x/a);
p3=Point.ByCoordinates(x,0,z);
p4=p3.Translate(Vector.ZAxis(),-List.FirstItem(p3<1>).Z);

or=l.PointAtParameter(0.5);
vx=Vector.ByTwoPoints(or,l.PointAtParameter(1));
vy=Vector.ByTwoPoints(or,or.Translate(Vector.YAxis(),1));
cs=CoordinateSystem.ByOriginVectors(or,vx,vy);
p5=p4.Transform(cs);
6 Likes

Works great! Thanks!

1 Like

Hello Vikram,
I have a question about a z offset that seems to be occurring when I create a series of curves using the above definition. I am selecting two curves in Revit, dividing them and using those points for P1 and P2. However the end of the curves do not coincide with the points on the line and increase in the z as they progress. Could you take a look at the image and advise on how to get the curves to be consistent with the line points? Thanks

Cantenary.rfa (408 KB) catenary-20180119 3.dyn (20.9 KB)

Hi Vikram,
It is possible to obtain the catenary between two points given a length of the rope. It doesnt work for me with th given script.
Thanks

The catenary.dyn link doesn’t seem to be working…can someone repost it please?

Thanks!

In this post there is a working one

1 Like

Got it - thanks Marcel!

Sorry for the newbie question: how do you now get it to output/generate a nurbs curve/line to/in Revit? Do I need to create a node “Line by Points”?

To have Dynamo geometry to Revit geometry you need to create a Model Line.
https://dictionary.dynamobim.com/2/#/Revit/Elements/ModelCurve/Create/ByCurve