A vertex in the progressive mesh, holds info like collapse cost etc. More...
#include <OgreProgressiveMesh.h>
Public Types | |
| enum | BorderStatus { BS_UNKNOWN = 0, BS_NOT_BORDER, BS_BORDER } |
| typedef SmallVector< PMVertex *, 8 > | NeighborList |
| typedef SmallVector < PMTriangle *, 8 > | FaceList |
Public Member Functions | |
| PMVertex () | |
| void | setDetails (size_t index, const Vector3 &pos, const Vector3 &normal, const Vector2 &uv) |
| bool | isNearEnough (PMVertex *other) const |
| void | removeIfNonNeighbor (PMVertex *n) |
| void | initBorderStatus (void) |
| bool | isManifoldEdgeWith (PMVertex *v) |
| Set mBorderStatus to BS_BORDER if this vertex is on the edge of an open geometry patch. | |
| void | notifyRemoved (void) |
| void | calculateNormal () |
Public Attributes | |
| Vector3 | position |
| Vector3 | normal |
| Vector2 | uv |
| size_t | index |
| BorderStatus | mBorderStatus |
| bool | removed |
| bool | toBeRemoved |
| Real | collapseCost |
| PMVertex * | collapseTo |
| NeighborList | neighbor |
| FaceList | face |
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 273 of file OgreProgressiveMesh.h.
| typedef SmallVector<PMTriangle *, 8> Ogre::ProgressiveMesh::PMVertex::FaceList |
Definition at line 277 of file OgreProgressiveMesh.h.
| typedef SmallVector<PMVertex *, 8> Ogre::ProgressiveMesh::PMVertex::NeighborList |
Definition at line 276 of file OgreProgressiveMesh.h.
Definition at line 275 of file OgreProgressiveMesh.h.
| Ogre::ProgressiveMesh::PMVertex::PMVertex | ( | ) |
Definition at line 280 of file OgreProgressiveMesh.h.
| void Ogre::ProgressiveMesh::PMVertex::calculateNormal | ( | ) |
| void Ogre::ProgressiveMesh::PMVertex::initBorderStatus | ( | void | ) |
| bool Ogre::ProgressiveMesh::PMVertex::isManifoldEdgeWith | ( | PMVertex * | v | ) |
Set mBorderStatus to BS_BORDER if this vertex is on the edge of an open geometry patch.
| bool Ogre::ProgressiveMesh::PMVertex::isNearEnough | ( | PMVertex * | other | ) | const |
| void Ogre::ProgressiveMesh::PMVertex::notifyRemoved | ( | void | ) |
| void Ogre::ProgressiveMesh::PMVertex::removeIfNonNeighbor | ( | PMVertex * | n | ) |
| void Ogre::ProgressiveMesh::PMVertex::setDetails | ( | size_t | index, |
| const Vector3 & | pos, | ||
| const Vector3 & | normal, | ||
| const Vector2 & | uv | ||
| ) |
Definition at line 301 of file OgreProgressiveMesh.h.
Definition at line 302 of file OgreProgressiveMesh.h.
Definition at line 305 of file OgreProgressiveMesh.h.
Definition at line 295 of file OgreProgressiveMesh.h.
Definition at line 297 of file OgreProgressiveMesh.h.
Definition at line 304 of file OgreProgressiveMesh.h.
Definition at line 292 of file OgreProgressiveMesh.h.
Definition at line 291 of file OgreProgressiveMesh.h.
Definition at line 298 of file OgreProgressiveMesh.h.
Definition at line 299 of file OgreProgressiveMesh.h.
Definition at line 293 of file OgreProgressiveMesh.h.
Copyright © 2012 Torus Knot Software Ltd

This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Wed Mar 7 2012 19:27:15