#include <FractalMount.h>
Inheritance diagram for FractalMount:
Public Member Functions | |
FractalMount (const SDS &proto, unsigned factor, unsigned mn=21, double xc=-0.4, double yc=-0.4, double w=0.8) | |
SceneGraphObject::OID | appendModel (Parser &parser, const Matrix4 *m=NULL) |
SceneGraphObject::OID | appendObject (SceneGraphObject *primitive) |
SceneGraphObject::OID | appendLight (LightSource *light) |
void | build (void) |
bool | haveLight (void) const |
Group * | root (void) |
virtual void | __debug (void) |
Protected Member Functions | |
void | _create_lights (void) |
AutoPtr< Material > ** | _create_crystal_materials (unsigned &) |
AutoPtr< Material > ** | _create_mount_materials (unsigned &) |
void | _create_spheres (const Vector4 &, AutoPtr< Material > **, unsigned) |
void | _grow_mountain (double, int, int, int, double, double, double, double, AutoPtr< Material > **, unsigned) |
Protected Attributes | |
unsigned | _factor |
double | _roughness |
unsigned | _mountainNo |
double | _xCorner |
double | _yCorner |
double | _width |
SceneGraphObject::OID | _lastOID |
Group | _sceneGraph |
bool | _haveLight |
Definition at line 20 of file FractalMount.h.
|
Number of triangular polygons = 2 * 4^(factor)
factor # triangles # spheres 0 1 4 1 8 4 2 32 4 3 128 4 4 512 4 5 2048 4 6 8192 4 7 32768 4 8 131072 4 9 524288 4 10 2097152 4
Definition at line 230 of file FractalMount.cc. References FractalMount::_create_crystal_materials(), FractalMount::_create_lights(), FractalMount::_create_mount_materials(), FractalMount::_create_spheres(), FractalMount::_factor, FractalMount::_grow_mountain(), FractalMount::_mountainNo, FractalMount::_roughness, FractalMount::_width, FractalMount::_xCorner, FractalMount::_yCorner, and Scene::build(). |
|
Used only for debugging. Definition at line 63 of file Scene.cc. References Scene::_sceneGraph. |
|
Definition at line 14 of file FractalMount.cc. Referenced by FractalMount::FractalMount(). |
|
Definition at line 8 of file FractalMount.cc. References Scene::appendLight(). Referenced by FractalMount::FractalMount(). |
|
Definition at line 47 of file FractalMount.cc. References FractalMount::_roughness. Referenced by FractalMount::FractalMount(). |
|
Definition at line 65 of file FractalMount.cc. References Scene::_lastOID, and Scene::appendObject(). Referenced by FractalMount::FractalMount(). |
|
Definition at line 119 of file FractalMount.cc. References FractalMount::_width, FractalMount::_xCorner, and FractalMount::_yCorner. Referenced by FractalMount::FractalMount(). |
|
Appends a light source to the scene.
Definition at line 53 of file Scene.cc. References Scene::_haveLight, Scene::_lastOID, and Scene::_sceneGraph. Referenced by CornellBox::_build_lights(), SphereFlake::_create_lights(), and FractalMount::_create_lights(). |
|
Appends model to the scene.
Definition at line 7 of file Scene.cc. References Scene::_lastOID, and Scene::_sceneGraph. |
|
Appends single object to the scene.
Definition at line 32 of file Scene.cc. References Scene::_lastOID, and Scene::_sceneGraph. Referenced by CornellBox::_build_sphere_flake(), CornellBox::_build_walls(), SphereFlake::_create_spheres(), FractalMount::_create_spheres(), CornellBox::addCrystalicSphere(), CornellBox::addMirrorSphere(), and SphereFlake::SphereFlake(). |
|
Prepares the scene for manipulation. There is no guarantee that the scene is realy created until the build() method is called. After the build() call the scene is created. Nevertheless, you _can_ still append additional primitives and/or models. Definition at line 65 of file Scene.h. Referenced by FractalMount::FractalMount(), and SphereFlake::SphereFlake(). |
|
|
|
|
Definition at line 22 of file FractalMount.h. Referenced by FractalMount::FractalMount(). |
|
Definition at line 22 of file Scene.h. Referenced by Scene::appendLight(). |
|
|
Definition at line 24 of file FractalMount.h. Referenced by FractalMount::FractalMount(). |
|
Definition at line 23 of file FractalMount.h. Referenced by FractalMount::_create_mount_materials(), and FractalMount::FractalMount(). |
|
Definition at line 21 of file Scene.h. Referenced by Scene::__debug(), Scene::appendLight(), Scene::appendModel(), and Scene::appendObject(). |
|
Definition at line 27 of file FractalMount.h. Referenced by FractalMount::_grow_mountain(), and FractalMount::FractalMount(). |
|
Definition at line 25 of file FractalMount.h. Referenced by FractalMount::_grow_mountain(), and FractalMount::FractalMount(). |
|
Definition at line 26 of file FractalMount.h. Referenced by FractalMount::_grow_mountain(), and FractalMount::FractalMount(). |