#include <OgreEdgeListBuilder.h>
Public Member Functions | |
EdgeListBuilder () | |
virtual | ~EdgeListBuilder () |
void | addVertexData (const VertexData *vertexData) |
Add a set of vertex geometry data to the edge builder. | |
void | addIndexData (const IndexData *indexData, size_t vertexSet=0, RenderOperation::OperationType opType=RenderOperation::OT_TRIANGLE_LIST) |
Add a set of index geometry data to the edge builder. | |
EdgeData * | build (void) |
Builds the edge information based on the information built up so far. | |
void | log (Log *l) |
Debugging method. | |
Protected Types | |
typedef std::vector< const VertexData * > | VertexDataList |
typedef std::vector< Geometry > | GeometryList |
typedef std::vector< CommonVertex > | CommonVertexList |
typedef std::map< Vector3, size_t, vectorLess > | CommonVertexMap |
Map for identifying common vertices. | |
typedef std::multimap< std::pair< size_t, size_t >, std::pair< size_t, size_t > > | EdgeMap |
Edge map, used to connect edges. | |
Protected Member Functions | |
void | buildTrianglesEdges (const Geometry &geometry) |
size_t | findOrCreateCommonVertex (const Vector3 &vec, size_t vertexSet, size_t indexSet, size_t originalIndex) |
Finds an existing common vertex, or inserts a new one. | |
void | connectOrCreateEdge (size_t vertexSet, size_t triangleIndex, size_t vertIndex0, size_t vertIndex1, size_t sharedVertIndex0, size_t sharedVertIndex1) |
Connect existing edge or create a new edge - utility method during building. | |
Protected Attributes | |
GeometryList | mGeometryList |
VertexDataList | mVertexDataList |
CommonVertexList | mVertices |
EdgeData * | mEdgeData |
CommonVertexMap | mCommonVertexMap |
EdgeMap | mEdgeMap |
Classes | |
struct | CommonVertex |
A vertex can actually represent several vertices in the final model, because vertices along texture seams etc will have been duplicated. More... | |
struct | Geometry |
A set of indexed geometry data. More... | |
struct | geometryLess |
Comparator for sorting geometries by vertex set. More... | |
struct | vectorLess |
Comparator for unique vertex list. More... |
Definition at line 157 of file OgreEdgeListBuilder.h.
|
Definition at line 234 of file OgreEdgeListBuilder.h. |
|
Map for identifying common vertices.
Definition at line 241 of file OgreEdgeListBuilder.h. |
|
Edge map, used to connect edges. Note we allow many triangles on an edge, after connected an existing edge, we will remove it and never used again. Definition at line 246 of file OgreEdgeListBuilder.h. |
|
Definition at line 233 of file OgreEdgeListBuilder.h. |
|
Definition at line 232 of file OgreEdgeListBuilder.h. |
|
|
|
|
|
Add a set of index geometry data to the edge builder.
|
|
Add a set of vertex geometry data to the edge builder.
|
|
Builds the edge information based on the information built up so far.
|
|
|
|
Connect existing edge or create a new edge - utility method during building.
|
|
Finds an existing common vertex, or inserts a new one.
|
|
Debugging method.
|
|
Definition at line 242 of file OgreEdgeListBuilder.h. |
|
Definition at line 239 of file OgreEdgeListBuilder.h. |
|
Definition at line 247 of file OgreEdgeListBuilder.h. |
|
Definition at line 236 of file OgreEdgeListBuilder.h. |
|
Definition at line 237 of file OgreEdgeListBuilder.h. |
|
Definition at line 238 of file OgreEdgeListBuilder.h. |
Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Jul 8 15:20:38 2007