#include <RadMethod.h>
Inheritance diagram for RadMethod:
Public Members | |||
RadMethod () | |||
virtual | ~RadMethod () | ||
virtual Void | SetScene (scScenePtr scene) | ||
set new scene. | |||
virtual Void | ResetOptions () | ||
called when options have been changed. | |||
virtual Bool | Render () | ||
create the radiosity solution. | |||
virtual Void | RemoveDirect () | ||
remove contribution from direct light sources. | |||
Void | Print (ostream &s) const | ||
Void | Parse (istream &s) | ||
virtual Void | PrintCmds (ostream &s) const | ||
virtual Bool | ParseCmd (StrConst str, istream &s) | ||
virtual Void | Draw (Renderer &r) | ||
virtual Void | DrawMatrix (Renderer &r) | ||
virtual RadElem* | NewMesh () = 0 | ||
Return mesh element for this method. | |||
virtual PatchList* | GetElements () | ||
Return a pointer to a list of leaf elements in the
mesh. | |||
virtual Int | Stage (Int stage) | ||
Gets called at various stages of solution. | |||
virtual Bool | Idle () | ||
For giving up time. | |||
virtual Bool | Pause () | ||
Indicate a pause point. More... | |||
Void | DumpScene () | ||
virtual Void | DumpStats () = 0 | ||
Bool | CheckTime () | ||
Void | WriteSLFile (StrConst filename) | ||
write out mesh directly as sl file. | |||
Void | WriteObjFile (StrConst filename) | ||
write out mesh directly as wavefront obj file. | |||
Void | WriteMRBFile (StrConst filename) | ||
Int | TotalMemoryUse () | ||
return total memory use in KB. | |||
Void | CreateRTGrid (scScenePtr scene) | ||
virtual Void | CreateRTObjects (scScenePtr scene) | ||
Bool | IntersectsWithRay (const Point &start, const Point &end) | ||
virtual RadElem* | ClosestIntersection ( const Point &start, const Vector &direction, Point &hitPoint ) | ||
Void | SetupMesh () | ||
Void | FixMesh () | ||
Void | ConnectMesh () | ||
Void | FindBounds (Point &min, Point &max) | ||
Void | ColourMeshInitial () | ||
Colour the patches according to initial refl/emit. | |||
virtual Void | ColourVertices () | ||
Assign appropriate radiosities to each vertex based on face radiosities. | |||
Void | AssignNormals () | ||
Void | CreatePatches () | ||
Void | Reanimate () | ||
Void | AddQuadTri ( Int numVertices, Int vertices[], Int changed, Decimator *state ) | ||
Void | SetupProps (RadProps *props, Decimator *state) | ||
scScenePtr | GetScene () | ||
RT_Grid* | grid | ||
ray-tracing nested grids. | |||
RT_Object* | object | ||
ray-traced object. | |||
Int | rtID | ||
PatchList | baseElems | ||
base polygons in initial mesh. | |||
RadProps* | props | ||
properties... | |||
Int | numProps | ||
Point | min | ||
Point | max | ||
scene bounds. | |||
FindDecInfo | qtInfo | ||
number of quads/tris in the scene. | |||
PatchList | patches | ||
initial patch list. | |||
PatchStats | stats | ||
stats about the same. | |||
ProgramTimer | timer | ||
used to time operations. | |||
Int | dumpID | ||
ID of last stats dump. | |||
GCLReal | totTime | ||
time of simulation so far. | |||
GCLReal | lastTime | ||
time of last stats dump. | |||
Static Public Members | |||
RadMethod* | NewRadMethod () | ||
Protected Members | |||
scScenePtr | scene | ||
the source GCL scene. | |||
String | sceneName | ||
name of the same. |
Definition at line 42 of file RadMethod.h.
RadMethod::RadMethod () |
Definition at line 55 of file RadMethod.cc.
RadMethod::~RadMethod () [virtual]
|
Definition at line 70 of file RadMethod.cc.
Void RadMethod::AddQuadTri (Int numVertices, Int vertices[], Int changed, Decimator * state) |
Definition at line 173 of file RadMethod.cc.
Void RadMethod::AssignNormals () |
Bool RadMethod::CheckTime () |
Definition at line 639 of file RadMethod.cc.
virtual RadElem* RadMethod::ClosestIntersection (const Point & start, const Vector & direction, Point & hitPoint) [virtual]
|
Void RadMethod::ColourMeshInitial () |
Void RadMethod::ColourVertices () [inline, virtual]
|
Assign appropriate radiosities to each vertex based on face radiosities.
Void RadMethod::ConnectMesh () |
Definition at line 329 of file RadMethod.cc.
Void RadMethod::CreatePatches () |
Definition at line 370 of file RadMethod.cc.
Void RadMethod::CreateRTGrid (scScenePtr scene) |
Definition at line 493 of file RadMethod.cc.
Void RadMethod::CreateRTObjects (scScenePtr scene) [virtual]
|
Definition at line 451 of file RadMethod.cc.
Void RadMethod::Draw (Renderer & r) [virtual]
|
Void RadMethod::DrawMatrix (Renderer & r) [virtual]
|
Reimplemented in HierRad, HProgRad, MatRad, and ProgRad.
Definition at line 716 of file RadMethod.cc.
Void RadMethod::DumpScene () |
Definition at line 617 of file RadMethod.cc.
virtual Void RadMethod::DumpStats () [pure virtual]
|
Void RadMethod::FindBounds (Point & min, Point & max) |
Definition at line 349 of file RadMethod.cc.
Void RadMethod::FixMesh () |
Definition at line 280 of file RadMethod.cc.
PatchList * RadMethod::GetElements () [inline, virtual]
|
scScenePtr RadMethod::GetScene () |
Definition at line 76 of file RadMethod.cc.
Bool RadMethod::Idle () [inline, virtual]
|
Bool RadMethod::IntersectsWithRay (const Point & start, const Point & end) |
Definition at line 529 of file RadMethod.cc.
RadElem * RadMethod::NewMesh () [inline, pure virtual]
|
Return mesh element for this method.
Reimplemented in AnaRad, HierRad, HProgRad, MatRad, and ProgRad.
RadMethod* RadMethod::NewRadMethod () [static]
|
Void RadMethod::Parse (istream & s) |
virtual Bool RadMethod::ParseCmd (StrConst str, istream & s) [virtual]
|
Reimplemented in HierRad.
Bool RadMethod::Pause () [inline, virtual]
|
Indicate a pause point.
Called when we reach a potential pause point.
Definition at line 598 of file RadMethod.cc.
Void RadMethod::Print (ostream & s) const |
virtual Void RadMethod::PrintCmds (ostream & s) const [virtual]
|
Reimplemented in HierRad.
Void RadMethod::Reanimate () |
Void RadMethod::RemoveDirect () [inline, virtual]
|
remove contribution from direct light sources.
Reimplemented in MatRad.
Definition at line 572 of file RadMethod.cc.
Bool RadMethod::Render () [inline, virtual]
|
create the radiosity solution.
Reimplemented in AnaRad, HierRad, HProgRad, MatRad, and ProgRad.
Definition at line 559 of file RadMethod.cc.
Void RadMethod::ResetOptions () [inline, virtual]
|
called when options have been changed.
Reimplemented in HierRad, and HProgRad.
Definition at line 160 of file RadMethod.cc.
Void RadMethod::SetScene (scScenePtr theScene) [inline, virtual]
|
Void RadMethod::SetupMesh () |
Definition at line 230 of file RadMethod.cc.
Void RadMethod::SetupProps (RadProps * props, Decimator * state) |
Int RadMethod::Stage (Int stage) [inline, virtual]
|
Gets called at various stages of solution.
Reimplemented in AnaRad, HierRad, HProgRad, MatRad, and ProgRad.
Definition at line 579 of file RadMethod.cc.
Int RadMethod::TotalMemoryUse () |
return total memory use in KB.
Void RadMethod::WriteMRBFile (StrConst filename) |
Definition at line 886 of file RadMethod.cc.
Void RadMethod::WriteObjFile (StrConst filename) |
Void RadMethod::WriteSLFile (StrConst filename) |
PatchList RadMethod::baseElems |
Int RadMethod::dumpID |
RT_Grid * RadMethod::grid |
GCLReal RadMethod::lastTime |
Point RadMethod::max |
Point RadMethod::min |
Definition at line 150 of file RadMethod.h.
Int RadMethod::numProps |
Definition at line 149 of file RadMethod.h.
RT_Object * RadMethod::object |
PatchList RadMethod::patches |
RadProps * RadMethod::props |
FindDecInfo RadMethod::qtInfo |
Int RadMethod::rtID |
Definition at line 116 of file RadMethod.h.
scScenePtr RadMethod::scene [protected]
|
String RadMethod::sceneName [protected]
|
PatchStats RadMethod::stats |
ProgramTimer RadMethod::timer |
GCLReal RadMethod::totTime |