Allen Cell Discussion Forum

Saving orientation and zoom for 3d Stack


AGAVE is a really good tool for visualization of 3D stacks. I want to save/ use the same values for multiple stacks for their orientation, zoom/view and scale so that they are more easy to compare. Is there a way I can do this? If not is this something that you would be interested in adding to the software?


Hi Pushkar,
Glad you are enjoying AGAVE.

We are definitely interested in getting your suggestions on how best to do this.
There is only one way to apply same settings to several files - this does need some improved user experience. Here is the way to do it for now:

Save to JSON.
The JSON is a text file. You can then make a copy of it, and replace the file path in the JSON file with the other stack.

One caveat is that the thresholding settings (window/level, percentile, isovalue, etc) are relative values and if your intensity ranges vary widely from one image to the next, the thresholding may not be perfectly consistent. I have an upcoming code change that tries to preserve absolute intensity levels across saves.

However, copying the JSON output should get you most of the way to using identical camera angle, lighting etc.
Then you can Load from JSON in the menus.

One thing I have considered is simply using a dialog box when you open a new image, so that you can have a checkbox for “preserve current settings”.


Hi Dan,

Thanks for your reply. The JSON method you suggested worked.

I like the idea of having a dialog box to preserve settings. Another thing that will help is a way to input values instead of sliding bars. For example on the ROI it could have boxes where I can say x = 25 to x = 125. If angle values are displayed and editable that will also help tremendously!

In the next upcoming release, I am including an “Export to Python” feature that will write out a python script that you can then use to render in agave.
It will require you to run agave in server mode: agave --server from the command line. You can then modify the output python script to do a loop, animate parameters, etc. The python module for agave will also include a one line function to render a 360 degree turntable.

So the workflow would be: load data into regular agave GUI, tune settings to the appearance you want, and then export python script, then modify script and run while agave is running in server mode.

Hi Dan,

Nice! That sounds great! Once it is out I would love to try it.

Best Regards,