# 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
PMVertex * | collapseTo
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:

- OgreProgressiveMesh.h

Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Feb 12 13:02:16 2006