FamilyInstance.ByGeometry don't take action

Hey Community ;
I have a Dynomo script which creates columns from CAD lines by the number of their edges. All columns has unique layers according to their edges like 4 edged column layer, 5….30 edged column layer. The problem is columns created in revit2023 but not in 2024. I know that some nodes have changed and lots of my scripts didn’t worked on 2024. I managed to install Migration Assistant for dynamo and it allow me to use old scripts by changing the old nodes . In this particular script all the nodes are comptible to 2024.

The node is FamilyInstance.ByGeometry . As an alternative BrepShape.ByGeometry or DirectShape.ByGeometry nodes creates columns but can not assign material name




Create Column_Structure Wall_2023_11_13-3.dyn (149.9 KB)

What is the full warning text? You may want to put a watch node on canvas so you can copy the contents (right click on the watch node after the object is created).

My guess based on the bit of the warning we can see, is you need to pick a different family template.

Family instance.bygeometry node gives a result like this

Traceback (most recent call last):
file “”, line155, in NewForm_background
Exception: Instance of a level-based family cannot be created without a valid reference level

Looks like your template isn’t finding the level, or the instance isn’t being created with the level. Try a generic model template for the time being and see if that works. If so you’ve narrowed it down.

The other option would be to try utilizing the FamilyType.ByGeometry node, and then make an instance of the family after it is created, all of which can be done with out of the box nodes.

Could you please check the related files.


test_2023_11_15.rvt (5.9 MB)
Create Column_Structure Wall_2023_11_17.dyn (186.8 KB)

I have deactivated 146 and 149. lines according to error message in Family instance.bygeometry node. Than it created columns but if try to create rectangular ones at the same time it doesnt create generic ones.