So, I made a script that calculates the airflow needed per air terminal, chooses the appropriate air terminal and places it in a room. However, when I run it, sometimes it works great, placing new instances every time, but sometimes it takes the instances it placed in the previous run and just moves them. It feels like a bug since the first time the instances are used in the workflow is in the FamilyInstance.ByPoint when they are placed, so there is no reason to use the previous iteration of the algorithm, unless there is something leftover in the cache. Did someone encounter this problem or possibly found a workaround?
you need to cut and paste the elements after each run or use bakery node to bake your elements to create a new elements in each new run.
Thanks for the answer!
I did manage to work that out, however when I try installing Bakery I have to uninstall Clockwork and vice versa. Not even manually placing Bakery in the Dynamo folder didn’t help. Any idea how to solve that?
You could also use the Dynamo Player, then each run acts as if Dynamo is closed and opened again, this way no “old” instances will be replaced or moves by your next run.
I am actually running it through Dynamo Player and still get the same thing now and then. I guess something pretty weird is happening, I hope to be able to install the Bakery package, seems that it could be solution. Thank you for the answer
This sounds like element binding, search up Jacob Small on this site or on Autodesk University, he has very good material explaining how it works.
The runs will reference the same element ID, which is why the subsequent iterations are just moving them. To cleanly do a new run, you’d need to close out of the dyn (preferably without saving), re-open, and re-run. Or, use Dynamo Player for that process instead.
Close - if you save in between runs the bindings get saved to the file and subsequent runs would have the same issue. To avoid adding bindings do not save.