Grasshopper display error


(Tim Messer) #1

I have the following display error occurring in my file, however I have the solver locked so I am unsure as to why this error is occurring.

I think it is the number of wires I have and a memory issue, is there a way to assign more memory required for wires to grasshopper?

After I get the last error I get teh red screen of death, I don’t always get it but I get it about every second time I open the project.

image

image

image


(David Rutten) #2

The canvas is still redrawing even with a locked solver, and this error is because of canvas painting.

Wires are drawn one after the other, so even though it will take a longer time to draw lots of wires, it shouldn’t take more memory. Unless of course there’s a bug in that code.

Unfortunately the ‘Out of memory’ error is what GDI+ almost always says when something goes wrong, it doesn’t necessarily mean that you are out of memory, although it may be true as well. The problem is that GDI allocates a fixed amount of memory for certain operations and if something weird happens that small amount may run out. You cannot change this amount, it is hard-coded by the operating system.

Most often when GDI starts to fail it is because things are drawn too far away from the origin. You can try and move all your objects to be centred on (0,0), or in general reduce the size/extent of the file.

I would like to have the file as well so I can do some testing here. Either find a bug, or maybe come up with some ways to try and solve these problems.

ps. you can exit the ‘red-canvas’ state via the View or Display menu. There should be a new item in there after the display has gone into ultra-paranoid mode. But save your file first if you made changes.


(Tim Messer) #3

David,
you were were on the money in your assumptions.

problem file view:

after moving groups back to a closer arrgamnt to the 0,0 and the file now behaves on open

thanks for the help


(David Rutten) #4

Glad to hear it, but you may want to look into some file organising. Did you know you can break up files into smaller pieces and have data flow from one to the other using the Data Output and Data Input components? It caches the exchange data as files on the disk, so you don’t even need to load/solve the early parts of a network in order to work on the later ones.


(Tim Messer) #5

Thanks david, normally most of the file are in Clusters, this is just the unclustered setup because I am doing some bulk rewiring. However I will look into data output and ata input as per your suggestion as I haven’t dealt with these before.