Hello Community,
I am trying to create a script that allows me to convert in-place elements into families. I was able to succeed using the FamilyInstance.ByGeometry node from the Spring package, but it loses the originality of the geometry and converts the family geometry into freeform geometry.
Later, I changed the general approach. I tried to implement the Group method, which practically makes more sense to me, as manually it allows me to achieve what I want.
The manual process is as follows:
To follow the above process, I tried the methods below, but with no luck.
-
I tried to create a group for the in-place element, but the issue I faced is that I don’t know how to activate Edit In-Place and enter the in-place environment using Dynamo.
-
I also tried to select the geometries inside the in-place edit environment, but I faced problems there as well. Dynamo seems to have difficulty distinguishing between the normal Revit environment and the environment inside an in-place edit.
I believe I am making a simple mistake somewhere. If someone could guide me on the first step, I can try to progress further.
This isn’t really good practice in my opinion.
If it is what i think it is what your a doing then this method is a bit ‘hacky’ AFAIK.
PS
If those In Place Families should be loadable Families the should have
started as such in my opinion.
1 Like
In place family editor cannot be used with the API.
The solution will be to either convert to Freeform geometry, or get more complex with how you build the families and create extrusions or some such form in new family documents based on a programmatic analysis of the in place geometry. The later option is not an easy lift, and a robust solution that covers all form types may be a significant lift.
Why are you shifting from in place families, and what got you in such a situation?
I see..
I will give a thought on creating geometry using dynamo in family enviornment.
There is a As built modeling project using PCS Data, therefore we created inplace elements. Now due to standardization process we manually convert inplace elements into family. To get rid of the manually conversation giving time for script.
Thank you so much for a new direction @jacob.small and @bvs1982
I don’t know what PCS is, but hopefully the project team will know better for next time, and will bring that data or portions thereof directly into the family environment for modeling purposes next time.
Fortunately if all families are simple extrusions in plan you can likely make a fairly easy graph to extract the top and bottom surfaces, and then use the curve loops of the bottom face and distance between the top and bottom face to build extrusion forms. The good news here is you can build that Python in a new family based on a solid built entirely in Dynamo. With that hard part done the only remaining difficulty is starting a new family document and creating the forms there instead of in the active family document. Once that’s done you can move onto producing the loadable families with form included from a selected in-place family in the project environment, and then swapping the in-place family for the loadable family.
I would caution to be sure that you’re not swapping in loadable families where system families (i.e. walls, floors, roofs, etc.) should be used based on categorization as you likely won’t pass the standardization for similar reasons to in-place families.
I was wondering the same.
@SagarShah
Any insight / more information on this?