NL3D::CHrcTrav Class Reference

#include <hrc_trav.h>

Inheritance diagram for NL3D::CHrcTrav:

NL3D::CTraversal

Detailed Description

The hierarchy traversal.

NB: see CScene for 3d conventions (orthonormal basis...)

Author:
Lionel Berenguier

Nevrax France

Date:
2000

Definition at line 55 of file hrc_trav.h.

Public Types

enum  TVisibility { Show = 0, Hide, Herit, VisibilityCount }
 The visibility flag. In the root case, Herit means Show. More...


Public Member Functions

 CHrcTrav ()
 Constructor.

ITrav/ITravScene Implementation.
void traverse ()

Data Fields

std::vector< CTransformShape * > _MovingObjects
sint64 CurrentDate
CSceneScene


Member Enumeration Documentation

enum NL3D::CHrcTrav::TVisibility
 

The visibility flag. In the root case, Herit means Show.

Enumeration values:
Show 
Hide 
Herit 
VisibilityCount 

Definition at line 59 of file hrc_trav.h.

00060         {
00061                 Show=0,         // The model is shown in hte hierarchy
00062                 Hide,           // The model is hidden in hte hierarchy
00063                 Herit,          // The model herit the visibilty from his father
00064 
00065                 VisibilityCount
00066         };


Constructor & Destructor Documentation

NL3D::CHrcTrav::CHrcTrav  )  [inline]
 

Constructor.

Definition at line 71 of file hrc_trav.h.

00072         {
00073                 // NB: Now, models update is done before ALL traversals.
00074                 // Hence, we must inc the value before scene rendering. This is equivalent to start with 1, and inc at end of traverse().
00075                 CurrentDate= 1;
00076         }


Member Function Documentation

void NL3D::CHrcTrav::traverse  ) 
 

Definition at line 41 of file hrc_trav.cpp.

References _MovingObjects, NL3D::CScene::getRoot(), H_AUTO, and NL3D::CTransform::traverseHrc().

Referenced by NL3D::CScene::render().

00042 {
00043         H_AUTO( NL3D_TravHRC );
00044 
00045         _MovingObjects.clear();
00046 
00047         // Traverse the graph.
00048         if(Scene->getRoot())
00049                 Scene->getRoot()->traverseHrc();
00050 
00051         // Inc the date.
00052         // NB: Now, models update is done before ALL traversals.
00053         // Hence, we must inc the value before scene rendering. This is equivalent to start with 1, and inc at end of traverse().
00054         CurrentDate++;
00055 }


Field Documentation

std::vector<CTransformShape*> NL3D::CHrcTrav::_MovingObjects
 

Definition at line 88 of file hrc_trav.h.

Referenced by traverse(), NL3D::CClipTrav::traverse(), and NL3D::CTransform::updateWorld().

sint64 NL3D::CHrcTrav::CurrentDate
 

Definition at line 92 of file hrc_trav.h.

Referenced by NL3D::CMeshMultiLod::renderCoarseMesh(), NL3D::CWaterModel::traverseRender(), NL3D::CTransform::update(), and NL3D::CTransform::updateWorld().

CScene* NL3D::CTraversal::Scene [inherited]
 

Definition at line 55 of file trav_scene.h.

Referenced by NL3D::CScene::CScene(), NL3D::CMeshMRMSkinnedGeom::profileSceneRender(), NL3D::CMeshMRMGeom::profileSceneRender(), and NL3D::CMeshGeom::profileSceneRender().


The documentation for this class was generated from the following files:
Generated on Tue Mar 16 06:47:11 2004 for NeL by doxygen 1.3.6