Hi all,
I am currently working with these Planting families which consist in a simple 3D “lollipop”. Inside of each “lollipop” there is a Cad block nested for each elevation (Back, Front, Left, Right), as you see in the following image.
The problem comes out when Lollipops appear in section. When the section line is perfectly oriented with the elevations lollipops turn into cad blocks and everything is displayed correctly.
On the other hand whenever the section is not perfectly aligned with elevations the result is the following.
Blocks are not displayed and so far have been placed manually by my colleagues. I am not sure wether it is possible to solve this issue directly in the family settings. At the moment my solution would be to grab that same CAD block inside of the family and place it in the diagonal section at the given family coordinates. This leads us to problem n. 2, How do I grab in dynamo that cad block from the lollipop family?
I hope I was clear enough, thanks very much in advance
Alessandro
I don’t think that would work.
What you can potentially do is batch rotate these trees so they have either their front/back or left/right plane parallel to the section line
1 Like
Instead of rotating the trees, I would place a detail family instance in the view, at the location of the 3D element in the view, then hide the 3ad element…
2 Likes
@jacob.small Which is exactly my point, but how do I grab the cad blocks from inside each planting family in dynamo? this is the bit I am struggling with
Can’t tell you how without one of the families, and I don’t have time to build a specific codebase/workflow this week.
The general process would be something like this.
For each family in the library:
- Make a new detail family and start a transaction in it
- Open the existing family
- Get the curve elements in the existing family which you want to bring out by some filter, and pull the geometry from them
- Get the transform needed to move from the plane which the curves are on to the XY plane
- Transform the curve geometry by the transform
- Make a detail curve of the desired style in the new detail family
- Commit the transaction in the new family
- save the family and close it
- close the family from the library
- Dispose of all variables to clear the memory
Best to do this as a loop in Python node to prevent having to keep [ N * 2 documents, M 2 curve elements, M4 geometry elements, N transactions] in memory concurrently.
1 Like
Thanks Jacob, I will take a look at this workflow, I hope I’ll be able to follow each step.
In any case I am attaching a sample family to this post if you or anyone wants to give it a try
LND_PL_Platanus-occidentalis.rfa (4.8 MB)
1 Like