I’m working on a workflow to place windows from Rhino / Grasshopper in walls created in Revit. The workflow below works quite well, but the newly introduced element tracking makes the workflow incredibly slow when the project becomes complex.
Can someone explain how the element tracking works, and how I can work with it on complex projects? It seems to me, that the entire file recomputes every time an action is made in Grasshopper. I’m experimenting with projects with 200-300 windows that are scaled in height and width. As a result, Grasshopper is not responding for 5-10 sec. after every action - even if they are not related to the workflow (ex. adding an empty point component).
I have tested the different tracking modes without luck.
Any suggestions, help or insight would be much appreciated!
I’ve noticed that this happens if you have the Revit preview on. As you mention, grasshopper seems to recomputr the whole script when any change is made. Turning off preview somehow fixes it.
Thank you for your response. I tried turning off preview in Revit and Rhino (very impractical ) It doesn’t seem to work for me, unfortunately. (If I’m doing it right, that is.)
I tried to populate a Wall with 300 windows and I see the problem.
‘Add Component’ was written with ‘Components’ in mind, that may or may not be hosted like a piece of furniture on a ‘Floor’, but never tested well with doors and windows that modify the host geometry. This operation is slow and need a different approach.
I think we need two new components for Windows and Doors.
By now I improved the current one a bit in v1.1, now if you use ‘Supersede’ mode it should run at decent speed.
It is inserting 300 windows on the same wall randomly in 600ms.
If you enable ‘Reconstruct’ it will try to move those 300 windows to a new position, and this operations is much slower. I guess because of collisions with windows inserted on previous iteration.
Fantastic, I will definitely test it out! It’s interesting to follow the development of RIR, as people seem to use the components for so many different purposes.