FamilyInstance.ByGeometry - Multiple Entities
This is a great node. Period!
- I would like it to put multiple geometries in one family if we feed a list of geometries.
- Input for origin of the family so the family has a decent origin and the node later translates the instance into the correct location in the project. (I think you're working on this one)
Again this is great thinking and coding Dimitar!
Thank you, Mehmet.
It is possible to put multiple geometries inside the same family with the current implementation of the node. However, they have to be heterogeneous (all surfaces or all solids) and that is purely thanks to the forgiving nature of Dynamo's (and to extension Revit's) shape manager.
In Dynamo you can create discontinuous poly-surfaces and "poly-solids" that will be treated as a single entity:


I've used this method a few times already without any major repercussions ( as of yet :) ). You will not be able to edit the shape of the family manually and you will not be able to get correct volumes for the poly-surfaces. Their material areas might also be off, depending on the complexity of the surfaces. "Poly-solids" however seem to report their volume and areas correctly.

I was thinking about doing sat import multiple times when in the famdoc. So we can have individual geometries in the same family.
I'm trying to modify your code but I have to spend some time to understand the operations in the famdoc.
Very inspiring node!
https://www.youtube.com/watch?v=a_1m1S3Mwrw
Good job !
As always, great work.. Two questions / suggestions: 1. Is it possible to assign multiple materials to the multiple geometries put into the family instance(s)? This would make creation of bespoke families containing >1 material much easier. 2. Is it possible to allow referencing an .rfa instead of an .rft? I currently use a Generic Model master template that has every parameter/material I may want to use, but an .rfa would streamline updates to the master (since the user wouldn't have to save a copy of an .rfa and rename the extension each time a change is made down the pipe.). -Best
Hi @Curty102,
Thanks. This node has actually been converted and will be available with Dynamo 1.3 by default. (it's already available in the dailies as "FamilyType.ByGeometry")
Both options are possible from the context of the API. However I feel that, adding any more inputs and complexity to the current node would deter an already fragile workflow. Because the whole process is ran entirely in the background, I can't rely on Dynamo's built-in associative lacing and have to handle all of that in my script. Ensuring that the user always provides a matching list of inputs or replicating the inputs automatically will be a challenge.
It sounds like you have a very specific task in mind, that might be handled better by a workflow specifically designed around it.
https://www.youtube.com/watch?v=a_1m1S3Mwrw
Hi all,
ist there a way to get the *.dyn from the video above? Currently I´m working on a scrypt to convert multiple solids to familyinstances. When I do this, I only get a high number of family types with only one instance. In the video there´s only one family type for multiple individual instances.
Thanks for your help.
Best regards
Did someone manage to getmultiple solids into one family.. i am dying out here please help
Did someone manage to getmultiple solids into one family.. i am dying out here please help
Hello, i'm new here but today i tested the Node FamilyInstance.ByGeometry, i had the same issue, to create a single generic model composed by multiple solids. I have Revit 2021. I used the node Solid.ByUnion which is a native dynamo node, i placed the list with all my solids in input and i connected the single solid output into "Geometry" input of the Spring Node. It worked. I have a single family, a generic model, composed by multiple and disconnected solids.
@DamianoDP Hey, would you please share a screenshot of your Dynamo script, and{or the sources if you are using pytho code?
The thing is, the FamilyInstance.ByGeometry node (and other ondes using SAT import in code behind) got somewhat broken in Revit 2022.1. I've tried kind of your method of using Solid.ByUnion as a workaround, but that is a Dynamo node and returns Autodesk.DesignScript.Geometry.Solid not Autodesk.Revit.DB.Solid which other nodes in dynamo need. I'm not sure how to correctly wire the script together to end up with a new FamilyInstance of consolidated solids.
@DamianoDP Hey, would you please share a screenshot of your Dynamo script, and{or the sources if you are using pytho code?
The thing is, the
FamilyInstance.ByGeometrynode (and other ondes using SAT import in code behind) got somewhat broken in Revit 2022.1. I've tried kind of your method of usingSolid.ByUnionas a workaround, but that is a Dynamo node and returnsAutodesk.DesignScript.Geometry.SolidnotAutodesk.Revit.DB.Solidwhich other nodes in dynamo need. I'm not sure how to correctly wire the script together to end up with a new FamilyInstance of consolidated solids.
Hello, I can not provide you the script because it has stopped working, I was using Revit 2021, and with that everything was working perfectly, sadly in revit 2022 is not working anymore and I have created manually my solids :( (But if you are still working in 2021 I go search the working 2021 files hoping I have not deleted them)
Hello, I can not provide you the script because it has stopped working, I was using Revit 2021, and with that everything was working perfectly, sadly in revit 2022 is not working anymore and I have created manually my solids :( (But if you are still working in 2021 I go search the working 2021 files hoping I have not deleted them)
Hey,
it seems to be all the same problem - Document.Import imports Mesh instead of Solid in Revit 2022.1.
I tried to describe the problem in following Revit API Forums thread and am hoping for finding a workaround to sort this problem out. I'm primarily a programmer and am not that much experienced in Revit. I'd appreciate support or further information on that forum to hopefully drive attention to it.
https://forums.autodesk.com/t5/revit-api-forum/document-import-of-sat-file-behavior-changes-in-2022-1-imports/td-p/10833349
Hello
I have upgraded to Revit/Dynamo 2023, and the Family.Instance.ByGeometry seems to be working now, I gave up on Revit 2022. However, I am trying now to create a single Revit family with multiple geometries (Solids) with materials assigned. Has anyone else got this to work or can suggest a method?
Thank you! Tim
Hello,
I have just now tried to create a family using Family.Instance.ByGeometry in R2023 on a little complex geometry (bridge) - without any success :-( - the family is in the project, but is "empty". The solid geometry is missing.
So I assume, it is not "solved" yet?
But correct me, if am I wrong ;-)