FamilyInstance.ByPointAndLevel Bug?

My but: Insert a family (Nouveau Attente Elec_H) to the location of another family in a linked file.
The routine works, but I have 2 problems.

  1. The choice of level 0, the family is inserted in level 0 (see image). Yet the value of Z is correct. FamilyInstance.ByPointAndLevel Bug?
  2. I already have families in the project, and I change level routine works for level but erases families from other levels.
    An idea?

I think you need to use geometry translate since you are working with linked elements that probably have different coordinate system


use geometry translate --> how

different coordinate system --> How is that possible?

Why are families already inserted erased?
Is that the same problem? -->

@Alain_Hamel: Not really sure since it’s hard to replicate, but it could be that the level names in your files are just different. The families already inserted stay linked to the graph: they are not erased but rather created in a new location each time you re-run it. To duplicate elements, just use Family Instance By Point in Transaction from Bakery. Another tip that could lie in the thread you mention is to run the graph once, disconnect the Family Instance node, re-run (the objects will disappear from Revit), then undo in Revit (the objects will re-appear but disconnected from the graph, no blue point anymore). Then reconnect, change parameters and re-run.

1 Like

@Yna_Db I have the same issue. could you demo how the transaction from bakery would work for several instance elements?


Hello Tom. If I were to use that node, how can I convert the fmaily instances to OUTPUT acceptable for the geometry INPUT of the first row??



The second tip you give actually works!!!

Its the closest thing I found today on baking the elements and believe i tried everything available in the page.

Only modification is after Ctr+Z, close your definition, and reopen Dynamo and definition. The link is broken HAPPY DAYS <3 <3


Great! Now I fairly have to find who published it first :wink:

Update: I found it finally (!)

I have a solution that works! (By following your ideas)

I have a TEST project for saving changes on the DYNAMO routine
But important, (seems to make the difference) Select Model Element has no memory selection.

  1. Then in my project I open DYNAMO and select my link  RUN
  2. Then close DYNAMO without saving.
  3. I can resume in step 1

(I also solved the level problem)

I have one last problem with the other SetDifference (Electricite.Code) to get the list in the right order

I am also having an issue with place by point and level.

Basically, the placement point is previewing correctly, but the actual elements is located at some irregular distance from that point in the xy-plane.

If I re-run the script, the elements are then positioned correctly.

This issue happens almost all of the time, but every once-in-a-while it places the elements correctly on the first run.

Very strange…

Anyone else experience this? Using Dynamo 2.5 and Revit 2021.

I have another update to this topic, since the error still occurs in Revit 2021.

I use the “Set Location” node at the end of my script with a pass-through from Clockwork.

Regarding the issue where elements are being deleted, this has to do with “zero-touch.” There is a lot of information on how this affects elements. The basic issue is, that if you run the script and place elements, those elements are stored within script and maintained there. In order to avoid this, you have to build a script which works and don’t save after executing. The more simple solution would be to run the script through dynamo.