How to place a profile family in the revit project

Hi everyone,
I have an array of points (coordinates extract from dwg file), where i placed an adaptive component (family) in order to represent the element that i want to.

The thing is, there is an overlap between sections. I would like to have it as a sweep or a loft beetwen elements, but i do not know how to do it.

If someone can suggest a way to fix this issue using addaptive families or even better, a way to make a sweep from a family profile (all the tutorials that i have seen to do this, start from a profile designed in the drawing, but not from a .rfa file), i will be very greatfull.

Thank you

Why not extract the profile and sweep that?

However, if that’s not what you want, you could use Element.Solids and Solid.ByUnion to create one big object, or Solid.Difference to keep the objects separate but get rid of the overlap. This is assuming the gap on the outside is not a problem.
Or am I misunderstanding what you’re looking to accomplish?

There’s a lot of recent information here

Although Dynamo is not mentioned, the quirks of using this method are explained in detail.
Try to mimic this in Dynamo.

If you do not sucseed at first go, we will help you make the script

Getting rid of the seams is easy, you just make a little void form, cut it and all seams disappear

1 Like

I kinda already made it whoops guess I’ll just post the result for now to give a chance for learning :joy:

In the centre is the geometry, on the left kinda what’s in the original post but unioned, on the right extracted profile and sweep~

1 Like

the option in the right is exactly what i want it to looks like. How can i do the extraction? is there a node or something? I am trying ti use the element.curves node in order to do the sweep, but it generates an empty list

It kind of depends on what you have to work with; you could just use Select Face and get the curves from that to get your profile, or if that’s not an option, it’ll take a bit more.
Element.Solids to get the, well, solid. Topology.Edges and Edge.CurveGeometry.
You’ll likely need to filter the list of curves down some more so that you only have the one face you want for your profile. For example, take the start and end points and check if they’re on the axis you want.

The profile will have some other perimeter and loops on the inside. You may need to sweep them separately and subtract them form each other. Since I’m leaving in 10 minutes, I’ll post my solution below, but try to work it out for yourself if you can before peaking at it :smiley:

plorp.dyn (83.6 KB)

…excuse the file names, it’s been a long day :joy:

1 Like

thank you so much! I am looking at your script, do you know if there is a way of, instead of creating the geometry like you did in dynamo, to take the geometry of a revit profile, and place it? i have tried the “select face” node also this morning to do what you suggest, but i did not succed. Maybe is a problem of the family? I attach you adaptive component. Thank you againconducts 1.rfa|attachment (416 KB)

1 Like

If you have an instance of the family in your Revit Project (I assume that’s where you want it?), you can use Select Model Element, certainly.
I don’t think you can select an object from a different file than the one you’re working in so you would have to have an instance of it somewhere in other to get the geometry in Dynamo, though feel free to correct me on that if anyone knows how to!
Of course, once you’re got your final geometry into the project, you can simply delete the instance :slight_smile:

I’m messing around in the .rfa you attached and I haven’t really run into trouble, except I notice I made the assumption it’d be centred at [0,0] only it’s looking like it’s not in at least one axis? Not a huge deal, it still works, but it’ll be a little off-centre.
plorpfam.dyn (41.5 KB)

Of course, this is probably not that useful since I doubt you want to fix the family geometry to be a particular shape, but it works in the rfa just fine, small adjustments notwithstanding :slight_smile:

1 Like

Hi @S239147,

Maybe the link below can help you.

I don’t know if the node still has issues, if so a possible workaround can be found here.

Kind regards,

Found the VRIM package by @Elisabetta_Caterina




nice it works for you!!! :slight_smile:


Not sure if this is quite what you were after, but it gets all the profiles in the projects, apologies if it’s not useful…


Guys thank you all for your help, it has been very useful.
Anyway i am still having some issues representing my objects in the way that i want to. I tried to use the method that Avz provided on his script (to whom i am specially grateful for taking the time to explain me how to proceed), which worked great for a single nurbcurve, but if i want to use it for more than one (because i need it to work with several polylines at a time) it has a pretty weird behaivour, representing the elements sometimes rotated and sometimes with other issues. I also need to create a family from this geometry, so i tried to did this using the node “Srpings.Familyinstance.Bygeometry”, but again, troubles come, the family elements are generated but not in the right place (for several polylines).


I attach de Dynamo script here Estrusione_polifora piu tratti.dyn (120.8 KB)
and an example of the array of points LAT.txt (4.7 KB)

Having all this problems, made me come back to the solution with addaptive components. This works nice, but in curve paths, i have gaps/overlaps, which i would like to fill/erase

this is the dynamo script for the last one Posizionamento delle polifore.dyn (69.0 KB)

and the revit family conducts 1.rfa (416 KB)

Thank you everyone, and sorry for making this so long.

a trick from 9 years ago

The method I used aligns the orientation to the curvature of the path, which could cause some erratic behaviour if there’s some distortions in the line, so maybe that’s not what you need.
Would you prefer the conduits always remain Z-aligned, for example? That would be simple enough:

I do notice in the file you attached, a few of the paths are in “reverse” order, which will cause the alignment to flip so the conduits will be upside-down (and possibly offset?) in relation to the others. While it’s possible to build some logic to correct this, it might be more sensible to correct the data…?

I hope this helps!

Avz, thanks for your response, i have tried what you suggested, changing the dynamo script, and also reordering the data that i had, but the results are not good.

I am still trying with adaptives components, if i get to solve this problem i let you know, in the meanwhile i listen to any advice you have, thank you all.