rename Python module from 'raytracer' to 'pyrit'
improve Python binding:
- new objects: Container, Octree, KdTree, Shape,
Pixmap, Sampler, DefaultSampler
- all shapes are now subclasses of Shape
- clean, remove redundant Getattr's
- Raytracer render method now just wraps C++ method
without doing any additional work
adjust all demos for changes in Python binding, remove PIL dependency
add demo_PIL.py as a example of pyrit + PIL usage
render_nff.py now either loads file given as a argument
or reads input from stdin otherwise
fix bug in pixmap float to char conversion
Classes-------vector.h -- vector of three scalars, also used for colourmatrix.h -- matrix class, currently not usedquaternion.h -- quaternion class for camera rotationcontainer.h -- container for shapes, base class for octree and kd-treeoctree.h -- Octree space subdivision structure for acceleration of ray-shape intersection searchkdtree.h -- KdTree space subdivision structurescene.h -- scene objects: Ray, Light, Camera and shapesraytracer.h -- ray tracer classcommon.h -- Float definition (float/double) and some helper functionsContainer Usage---------------(Container|Octree|KdTree) top;scene.setTop(top) // top object in hierarchytop.optimize() // build optimization structureRework camera-------------Sampler - generate points in screen planeCamera - transform point from sampler to a ray