Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Ogre::ProgressiveMesh::PMVertex Class Reference

A vertex in the progressive mesh, holds info like collapse cost etc. More...

#include <OgreProgressiveMesh.h>

List of all members.

Public Types

typedef std::set< PMVertex * > NeighborList
typedef std::set< PMVertex * > DuplicateList
typedef std::set< PMTriangle * > FaceList

Public Member Functions

 PMVertex ()
void setDetails (const Vector3 &v, size_t index)
void removeIfNonNeighbor (PMVertex *n)
bool isBorder (void)
bool isManifoldEdgeWith (PMVertex *v)
 true if this vertex is on the edge of an open geometry patch

void notifyRemoved (void)

Public Attributes

Vector3 position
size_t index
NeighborList neighbor
FaceList face
Real collapseCost
PMVertexcollapseTo
bool removed
bool toBeRemoved
bool seam


Detailed Description

A vertex in the progressive mesh, holds info like collapse cost etc.

This vertex can actually represent several vertices in the final model, because vertices along texture seams etc will have been duplicated. In order to properly evaluate the surface properties, a single common vertex is used for these duplicates, and the faces hold the detail of the duplicated vertices.

Definition at line 155 of file OgreProgressiveMesh.h.


Member Typedef Documentation

typedef std::set<PMVertex *> Ogre::ProgressiveMesh::PMVertex::DuplicateList
 

Definition at line 167 of file OgreProgressiveMesh.h.

typedef std::set<PMTriangle *> Ogre::ProgressiveMesh::PMVertex::FaceList
 

Definition at line 169 of file OgreProgressiveMesh.h.

typedef std::set<PMVertex *> Ogre::ProgressiveMesh::PMVertex::NeighborList
 

Definition at line 166 of file OgreProgressiveMesh.h.


Constructor & Destructor Documentation

Ogre::ProgressiveMesh::PMVertex::PMVertex  ) 
 


Member Function Documentation

bool Ogre::ProgressiveMesh::PMVertex::isBorder void   ) 
 

bool Ogre::ProgressiveMesh::PMVertex::isManifoldEdgeWith PMVertex v  ) 
 

true if this vertex is on the edge of an open geometry patch

void Ogre::ProgressiveMesh::PMVertex::notifyRemoved void   ) 
 

void Ogre::ProgressiveMesh::PMVertex::removeIfNonNeighbor PMVertex n  ) 
 

void Ogre::ProgressiveMesh::PMVertex::setDetails const Vector3 v,
size_t  index
 


Member Data Documentation

Real Ogre::ProgressiveMesh::PMVertex::collapseCost
 

Definition at line 172 of file OgreProgressiveMesh.h.

PMVertex* Ogre::ProgressiveMesh::PMVertex::collapseTo
 

Definition at line 173 of file OgreProgressiveMesh.h.

FaceList Ogre::ProgressiveMesh::PMVertex::face
 

Definition at line 170 of file OgreProgressiveMesh.h.

size_t Ogre::ProgressiveMesh::PMVertex::index
 

Definition at line 165 of file OgreProgressiveMesh.h.

NeighborList Ogre::ProgressiveMesh::PMVertex::neighbor
 

Definition at line 168 of file OgreProgressiveMesh.h.

Vector3 Ogre::ProgressiveMesh::PMVertex::position
 

Definition at line 164 of file OgreProgressiveMesh.h.

bool Ogre::ProgressiveMesh::PMVertex::removed
 

Definition at line 174 of file OgreProgressiveMesh.h.

bool Ogre::ProgressiveMesh::PMVertex::seam
 

Definition at line 177 of file OgreProgressiveMesh.h.

bool Ogre::ProgressiveMesh::PMVertex::toBeRemoved
 

Definition at line 175 of file OgreProgressiveMesh.h.


The documentation for this class was generated from the following file:

Copyright © 2000-2005 by The OGRE Team
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Mar 12 14:41:52 2006