Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions

SoLODMeshSurface Class Reference

List of all members.

Public Member Functions

void insertColumns (bool beforeexisting, int nr)
void insertRowsBefore (int nr)
void turnOnOwnValidation (bool yn)
void touch (int, int, bool undef)
void generatePrimitives (SoAction *)
void computeBBox (SoAction *, SbBox3f &, SbVec3f &)
void rayPick (SoRayPickAction *)
void GLRender (SoGLRenderAction *)
void getBoundingBox (SoGetBoundingBoxAction *action)
int getIndex (int, int) const
 SoLODMeshSurface ()
int nrRows () const

Static Public Member Functions

static void initClass ()

Public Attributes

SoMFVec3f coordinates
SoMFInt32 materialIndex
SoMFShort meshStyle
SoSFShort nrColumns
SoSFShort resolution
SoSFBool wireframe
SoSFFloat wireframeLift
SbRWMutex writemutex

Protected Member Functions

 ~SoLODMeshSurface ()
SbBool shouldGLRender (SoGLRenderAction *)
bool isMaterialNonDefault () const
bool isMeshStyleNonDefault () const
void notify (SoNotList *)
void adjustNrOfParts ()
void setPartRelations ()
bool completeRowStart (int &)
bool completeRowEnd (int)

Protected Attributes

SbList
< MeshSurfImpl::MeshSurfacePart * > 
parts
bool useownvalidation
int nrcolparts
int sidesize

Private Member Functions

 SO_NODE_HEADER (SoLODMeshSurface)

Detailed Description

A class for displaying mesh-surfaces with LOD functionality

meshStyle

0 ------ Auto - the tesselation is based on the data |/| |X\/X| |X/| |/XX\| ------

1 ------ || |X| |XX| |XXX\| ------

2 ------ |XXX/| |XX/X| |X/XX| |/XXX| ------

3 ------ |\ | |X\ | |XX\ | |XXX\| ------

4 ------ | /| | /X| | /XX| |/XXX| ------

5 ------ || | | | | | \| ------

6 ------ |XXX/| |XX/ | |X/ | |/ | ------

7 ------ | | | | | | | | ------


Constructor & Destructor Documentation

SoLODMeshSurface::SoLODMeshSurface (  ) 
SoLODMeshSurface::~SoLODMeshSurface (  )  [protected]

Member Function Documentation

void SoLODMeshSurface::adjustNrOfParts (  )  [protected]
bool SoLODMeshSurface::completeRowEnd ( int   )  [protected]
bool SoLODMeshSurface::completeRowStart ( int &   )  [protected]
void SoLODMeshSurface::computeBBox ( SoAction *  ,
SbBox3f &  ,
SbVec3f &   
)
void SoLODMeshSurface::generatePrimitives ( SoAction *   )  [inline]
void SoLODMeshSurface::getBoundingBox ( SoGetBoundingBoxAction *  action  ) 
int SoLODMeshSurface::getIndex ( int  ,
int   
) const
void SoLODMeshSurface::GLRender ( SoGLRenderAction *   ) 
static void SoLODMeshSurface::initClass (  )  [static]
void SoLODMeshSurface::insertColumns ( bool  beforeexisting,
int  nr 
)

Inserts nr columns before or after the current mesh. The function will fill the new space with -1s and will not trigger a invalidation of caches. if not neccessary.

void SoLODMeshSurface::insertRowsBefore ( int  nr  ) 

Inserts nr rows before the current mesh. The function will fill the new space with -1s and will not trigger a invalidation of caches.

bool SoLODMeshSurface::isMaterialNonDefault (  )  const [protected]
bool SoLODMeshSurface::isMeshStyleNonDefault (  )  const [protected]
void SoLODMeshSurface::notify ( SoNotList *   )  [protected]
int SoLODMeshSurface::nrRows (  )  const
void SoLODMeshSurface::rayPick ( SoRayPickAction *   ) 
void SoLODMeshSurface::setPartRelations (  )  [protected]
SbBool SoLODMeshSurface::shouldGLRender ( SoGLRenderAction *   )  [protected]
SoLODMeshSurface::SO_NODE_HEADER ( SoLODMeshSurface   )  [private]
void SoLODMeshSurface::touch ( int  ,
int  ,
bool  undef 
)
void SoLODMeshSurface::turnOnOwnValidation ( bool  yn  ) 

Member Data Documentation

SbList<MeshSurfImpl::MeshSurfacePart*> SoLODMeshSurface::parts [protected]
int SoLODMeshSurface::sidesize [protected]