Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

HierElem Class Reference

#include <HierMesh.h>

Inheritance diagram for HierElem:

NbRadElem RadElem HRMeshElem AnaGrid HaarElem

Collaboration diagram for HierElem:

List of all members.


Public Members

 HierElem ()
virtual ~HierElem ()
virtual Void SetParent (HierElem &parent)
virtual HierElem* New ()
Bool HasChildren ()
Void FreeChildren ()
Void Draw (Renderer &r)
virtual Void DrawLeaf (Renderer &r)
Void DrawQuad (Renderer &r, RenderStyle start, Int code, RadElem *mid)
Void DrawTri (Renderer &r, RenderStyle start, Int code, RadElem *mid)
Void ProjQuad (Renderer &r, RenderStyle start, Int code, RadElem *mid)
Void ProjTri (Renderer &r, RenderStyle start, Int code, RadElem *mid)
Void Reanimate (RadElem *parent)
Void ConnectNeighbours ()
Void Subdivide ()
Void SetColour (const Colour &c)
Void ColourVertices (Int weights[])
Push element radiosities to vertices.

RadElemFindContainer (Coord &coord)
Find the elem containing this coord.

Void CreatePatches (PatchList &patches)
Split Elem into patches s.t. area < maxPatchSize.

Void CreateElements (PatchList &elements, IndexList &eltParents, Int parent)
GCLReal RadError ()
Int CalcMidCode (RadElem *mid)
Void CollectLeaves (PatchList &leaves)
Void SplitElement (Int &numElems, HierElemPtr subElems[5])
Void CorrectLeaves ()
Void Print (ostream &s)
Void PrintRec (ostream &s)
virtual Void PrintSelf (ostream &s)
Void Parse (istream &s)
virtual Void ParseSelf (istream &s)
Void PrintID (ostream &s)
StrConst Name ()
GCLReal MemoryUse ()
HierElem*& NbFace (Int i)
HierElem* child [4]
HierElem* parent
Int level
UInt32 treeCode


Detailed Description

Definition at line 24 of file HierMesh.h.


Constructor & Destructor Documentation

HierElem::HierElem ()

Definition at line 73 of file HierMesh.cc.

HierElem::~HierElem () [virtual]

Definition at line 82 of file HierMesh.cc.


Member Function Documentation

Int HierElem::CalcMidCode (RadElem * mid)

Definition at line 1086 of file HierMesh.cc.

Void HierElem::CollectLeaves (PatchList & leaves)

Definition at line 1310 of file HierMesh.cc.

Void HierElem::ColourVertices (Int weights[]) [virtual]

Push element radiosities to vertices.

Reimplemented from RadElem.

Definition at line 343 of file HierMesh.cc.

Void HierElem::ConnectNeighbours ()

Definition at line 107 of file HierMesh.cc.

Void HierElem::CorrectLeaves ()

If a mesh is balanced, the elements might not correspond to actual leaf nodes. We must do a pseudo-push to correct for this before t-meshing. This should only be called on *solution* leaves.

Definition at line 1292 of file HierMesh.cc.

Void HierElem::CreateElements (PatchList & elements, IndexList & eltParents, Int parent)

Definition at line 1039 of file HierMesh.cc.

Void HierElem::CreatePatches (PatchList & patches) [virtual]

Split Elem into patches s.t. area < maxPatchSize.

Reimplemented from RadElem.

Reimplemented in HRMeshElem.

Definition at line 1022 of file HierMesh.cc.

Void HierElem::Draw (Renderer & r) [virtual]

Reimplemented from RadElem.

Reimplemented in HRMeshElem.

Definition at line 831 of file HierMesh.cc.

Void HierElem::DrawLeaf (Renderer & r) [virtual]

Definition at line 771 of file HierMesh.cc.

Void HierElem::DrawQuad (Renderer & r, RenderStyle style, Int code, RadElem * mid)

Definition at line 490 of file HierMesh.cc.

Void HierElem::DrawTri (Renderer & r, RenderStyle style, Int code, RadElem * mid)

Definition at line 584 of file HierMesh.cc.

RadElem * HierElem::FindContainer (Coord & coord) [virtual]

Find the elem containing this coord.

Reimplemented from RadElem.

Definition at line 930 of file HierMesh.cc.

Void HierElem::FreeChildren ()

Definition at line 97 of file HierMesh.cc.

Bool HierElem::HasChildren () [inline]

Definition at line 34 of file HierMesh.h.

GCLReal HierElem::MemoryUse () [virtual]

Reimplemented from RadElem.

Definition at line 1071 of file HierMesh.cc.

StrConst HierElem::Name () [virtual]

Reimplemented from RadElem.

Reimplemented in HaarElem.

Definition at line 885 of file HierMesh.cc.

HierElem *& HierElem::NbFace (Int i) [inline]

Definition at line 82 of file HierMesh.h.

HierElem * HierElem::New () [inline, virtual]

Reimplemented in HaarElem.

Definition at line 31 of file HierMesh.h.

Void HierElem::Parse (istream & s) [virtual]

Reimplemented from RadElem.

Definition at line 900 of file HierMesh.cc.

Void HierElem::ParseSelf (istream & s) [virtual]

Reimplemented in HaarElem.

Definition at line 895 of file HierMesh.cc.

Void HierElem::Print (ostream & s) [virtual]

Reimplemented from RadElem.

Reimplemented in HaarElem, and HRMeshElem.

Definition at line 890 of file HierMesh.cc.

Void HierElem::PrintID (ostream & s)

Definition at line 857 of file HierMesh.cc.

Void HierElem::PrintRec (ostream & s)

Definition at line 870 of file HierMesh.cc.

Void HierElem::PrintSelf (ostream & s) [virtual]

Reimplemented in HaarElem.

Definition at line 865 of file HierMesh.cc.

Void HierElem::ProjQuad (Renderer & r, RenderStyle style, Int code, RadElem * mid)

Definition at line 630 of file HierMesh.cc.

Void HierElem::ProjTri (Renderer & r, RenderStyle style, Int code, RadElem * mid)

Definition at line 724 of file HierMesh.cc.

GCLReal HierElem::RadError ()

Definition at line 987 of file HierMesh.cc.

Void HierElem::Reanimate (RadElem * par) [virtual]

Reimplemented from RadElem.

Definition at line 314 of file HierMesh.cc.

Void HierElem::SetColour (const Colour & c)

Reimplemented from RadElem.

Definition at line 1058 of file HierMesh.cc.

Void HierElem::SetParent (HierElem & itsParent) [virtual]

Reimplemented in HaarElem.

Definition at line 333 of file HierMesh.cc.

Void HierElem::SplitElement (Int & numElems, HierElemPtr subElems[5])

Eliminate T-vertices from this triangle by triangulating it. This is normally done on the fly in the drawing code, but we also need to do it when writing out a conformant mesh after calculations.

Definition at line 1138 of file HierMesh.cc.

Void HierElem::Subdivide ()

Definition at line 202 of file HierMesh.cc.


Member Data Documentation

HierElem * HierElem::child[4]

Definition at line 86 of file HierMesh.h.

Int HierElem::level

Definition at line 88 of file HierMesh.h.

HierElem * HierElem::parent

Definition at line 87 of file HierMesh.h.

UInt32 HierElem::treeCode

Definition at line 89 of file HierMesh.h.


The documentation for this class was generated from the following files:
Generated at Sat Aug 5 00:26:56 2000 for Radiator by doxygen 1.1.0 written by Dimitri van Heesch, © 1997-2000