The target of this project is to provide a preview for volume rendering in the browser.
In future it will be integrated in the current workflow of experiments and therefore in the reconstruction process

Felix Schultze f08304ed72 Set line width to 160 9 năm trước cách đây
imageprocessing f586f67596 Bloat images not crop to be squared 9 năm trước cách đây
loadtests f586f67596 Bloat images not crop to be squared 9 năm trước cách đây
misc 6511f25cca Add diagrams to backend 9 năm trước cách đây
static 7bb617d5eb Apply continous styling 9 năm trước cách đây
templates b65e5cea77 Move decision, if volume is renderable to models.py 9 năm trước cách đây
visualization f586f67596 Bloat images not crop to be squared 9 năm trước cách đây
volumes b65e5cea77 Move decision, if volume is renderable to models.py 9 năm trước cách đây
.gitignore 5c4cdbe895 Add wildcards to .gitignore, Fix grunt file deploying after git move 9 năm trước cách đây
Gruntfile.js 6339f33bfa better mem during preprocessing and enhanced tesrresults 9 năm trước cách đây
README.md 6339f33bfa better mem during preprocessing and enhanced tesrresults 9 năm trước cách đây
clouds.jpg fc9b044017 Initial commit with version 0.0.7 9 năm trước cách đây
manage.py f586f67596 Bloat images not crop to be squared 9 năm trước cách đây
package.json 1ed5af0dbc 0.0.11 9 năm trước cách đây
setup.cfg f08304ed72 Set line width to 160 9 năm trước cách đây
startDev.sh 49838a8a27 Changed used python version to python2 9 năm trước cách đây

README.md

volume-visualization

The target of this project is to provide a preview for volume rendering in the browser. In future it will be integrated in the current workflow of experiments and therefore in the reconstruction process

installation

Please install requirements first.

Example for OpenSuse and with package manager 'zypper':

zypper-packages:

python >= 2.7 python-numpy python-numpy-devel mongodb memcached libmemcached-devel libtiff-devel libjpeg8-devel

pip-packages:

blinker >= 1.3.0 python-memcached Django >= 1.7.3 six scipy Pillow >= 2.6.0 scikit-image tifffile mongoengine mongodbforms (from git repo: pip intall git+http://git.ipe.kit.edu/schultze/django-mongodbforms.git)

Import the mongodbdatabase

In general, please refer to the mongodb homepage.

Untar the package 'misc/dump/volume_visualization.mongodb.tar.gz' Then run 'mongorestore --db volume_visualization dump/volume_visualization/' Note that, with this dump, it is not possible to use zooming. For zooming, the original datas are needed, and that are far too big to store it in the git repository.

Configure memcached

At some point we need to cache some generated images in the memcached cache. So we have to increase the number of allowed value size. In OpenSuse, open "/etc/sysconfig/memcached" and add "-I 15M" to the configuration. Start or restart the memcached service

Configure the application properly

Go to 'visualization/' Copy the 'settings_env.py.dev' file to 'settings_env.py'. Review the configuration options and put in yours.

Start running the server

Be sure, that your local mongodb server is running

Just do a 'python manage.py runserver' For more options, please refer to the original Django documentation

Developing JS

sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/nodejs/openSUSE_13.1/ Node.js sudo zypper in nodejs nodejs-devel npm

After that, please install 'grunt' via 'sudo npm install -g grunt-cli' You are ready to go developing JS for the application.

Just use Grunt, e.g. 'grunt watch' (in a separate terminal) All 3D relevant files will be packaged together to one JS file.

Deploying on servers

Currently there exist different servers and on that servers, different stages.

Available servers:

  • (1) ipepdvcompute3.ipe.kit.edu
  • (2) anka-visualize.anka.kit.edu

Both servers provide a staging and a prod environment

To deploy the application on a server, grunt can be used with its deploy target. As options --env and --server are mandatory Possible values for --env: 'staging', 'prod' Possible values for --server: 'compute3', 'anka' where 'compute3' refers to server (1) and 'anka' to server (2)

E.g. so if you want to deploy to ipepdvcompute3.ipe.kit.edu on prod env: grunt deploy --env=prod --server=compute3#

Please refer to Grundfile.js for more information