Convert model line to model element

Hi everyone,

I try to model post tensionning tendon on Revit. I have the idea to extract from Autocad 3D curves of tendons profile and transform this to a revit element. I have succeded to convert 3D line to Revit model lines (you can see that on the picture bellow). Now I have no idea to convert these line to a family instance (and which family ?). I think pipes family are flexible enough to do this work in the first time. On a second time I want to create a family based on Generic model adaptative template.

Have you an Idea to do that ?

Thanks !

There are plenty of similar questions in the forum already. Try searching for other examples. Once you know the placement type of your family (point, line, adaptive, etc.) it should become pretty straight forward.

A map:

Element.Geometry to get the curve geometry of the model curves.
Curve.PointAtParameter with cross product lacing and parameters [0,1] to get both endpoints as a listed order.
AdaptiveComponent.ByPoints to place your adaptive family.

Thank you for your answers.

@JacobSmall My tendon profile is composed of lines and segments of a circle, can this work with your method? I can collect every start/end point but with only point coordinates, this will not necessarily give me the right profile (there are infinite possibilities). Isn’t there a way to make an element follow a line whatever its shape? This way, with an adaptive family composed of two adaptive points it should work right?
I think there’s something I don’t understand.

If you have arcs then you’ll need 3 or more points (depending on how complex your curves are) to define the shape, but the concept mostly holds true. Building a family which you can manually place first is the way to start here. Generally speaking if you can’t yet do it well manually for all likely conditions then you won’t be able to do it computationally.

1 Like

Thank your informations @JacobSmall. I’m agree with you, it’s better if I start to try it manually and then develop dynamo sript. But I’d like to understand how to attribute the good coordonate at the good adaptative point ? this works automatically with the node AdaptiveComponent.ByPoints ? If I have too many point on my adaptative family can it be a problem ? If you have a link or a reference where I can learn the adaptative family contstruction I’ll be grateful.

There are several good AU classes and YouTube videos in the topic, but I don’t really have a favorite.

1 Like


I have succeeded to do manually and by using dynamo and it works great ! I have just a problem to get the middle point of arcs (and not the center of the circle arc). Do you hnow how I can get this point coordinate easily ? I think it exist a way to fox it because this point is known by autocad and also by revit when I convert 3D autocad line to revit model lines.

Thank you

If you have uniform rational curves, then Curve.PointAtParameter will do the trick.

1 Like