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.
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?
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
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 again (416 KB)
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
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
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).
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
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…?
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.