Class for the generation of the DualGrid.
More...
#include <OgreVolumeDualGridGenerator.h>
|
| | DualGridGenerator (void) |
| | Constructor. More...
|
| |
| void | generateDualGrid (const OctreeNode *root, IsoSurface *is, MeshBuilder *mb, Real maxMSDistance, const Vector3 &totalFrom, const Vector3 &totalTo, bool saveDualCells) |
| | Generates the dualgrid of the given octree root node. More...
|
| |
| DualCell | getDualCell (size_t i) const |
| | Gets a dual cell. More...
|
| |
| size_t | getDualCellCount (void) const |
| | Gets the amount of generated dual cells. More...
|
| |
| Entity * | getDualGrid (SceneManager *sceneManager) |
| | Gets the lazily created entity of the dualgrid debug visualization. More...
|
| |
| void | operator delete (void *ptr) |
| |
| void | operator delete (void *ptr, void *) |
| |
| void | operator delete (void *ptr, const char *, int, const char *) |
| |
| void | operator delete[] (void *ptr) |
| |
| void | operator delete[] (void *ptr, const char *, int, const char *) |
| |
| void * | operator new (size_t sz, const char *file, int line, const char *func) |
| | operator new, with debug line info More...
|
| |
| void * | operator new (size_t sz) |
| |
| void * | operator new (size_t sz, void *ptr) |
| | placement operator new More...
|
| |
| void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
| | array operator new, with debug line info More...
|
| |
| void * | operator new[] (size_t sz) |
| |
|
| void | addDualCell (const Vector3 &c0, const Vector3 &c1, const Vector3 &c2, const Vector3 &c3, const Vector3 &c4, const Vector3 &c5, const Vector3 &c6, const Vector3 &c7) |
| | Adds a dualcell. More...
|
| |
| void | addDualCell (const Vector3 &c0, const Vector3 &c1, const Vector3 &c2, const Vector3 &c3, const Vector3 &c4, const Vector3 &c5, const Vector3 &c6, const Vector3 &c7, Vector4 *values) |
| | Adds a dualcell with precalculated values. More...
|
| |
| void | createBorderCells (const OctreeNode *n0, const OctreeNode *n1, const OctreeNode *n2, const OctreeNode *n3, const OctreeNode *n4, const OctreeNode *n5, const OctreeNode *n6, const OctreeNode *n7) |
| |
| void | edgeProcX (const OctreeNode *n0, const OctreeNode *n1, const OctreeNode *n2, const OctreeNode *n3) |
| | edgeProc with variing X of the nodes, see the paper for edgeProc(). More...
|
| |
| void | edgeProcY (const OctreeNode *n0, const OctreeNode *n1, const OctreeNode *n2, const OctreeNode *n3) |
| | edgeProc with variing Y of the nodes, see the paper for edgeProc(). More...
|
| |
| void | edgeProcZ (const OctreeNode *n0, const OctreeNode *n1, const OctreeNode *n2, const OctreeNode *n3) |
| | edgeProc with variing Z of the nodes, see the paper for edgeProc(). More...
|
| |
| void | faceProcXY (const OctreeNode *n0, const OctreeNode *n1) |
| |
| void | faceProcXZ (const OctreeNode *n0, const OctreeNode *n1) |
| |
| void | faceProcZY (const OctreeNode *n0, const OctreeNode *n1) |
| |
| void | nodeProc (const OctreeNode *n) |
| |
| void | vertProc (const OctreeNode *n0, const OctreeNode *n1, const OctreeNode *n2, const OctreeNode *n3, const OctreeNode *n4, const OctreeNode *n5, const OctreeNode *n6, const OctreeNode *n7) |
| |
Class for the generation of the DualGrid.
Definition at line 67 of file OgreVolumeDualGridGenerator.h.
| Ogre::Volume::DualGridGenerator::DualGridGenerator |
( |
void |
| ) |
|
Adds a dualcell.
- Parameters
-
| c0 | The first corner. |
| c1 | The second corner. |
| c2 | The third corner. |
| c3 | The fourth corner. |
| c4 | The fifth corner. |
| c5 | The sixth corner. |
| c6 | The seventh corner. |
Definition at line 117 of file OgreVolumeDualGridGenerator.h.
Adds a dualcell with precalculated values.
- Parameters
-
| c0 | The first corner. |
| c1 | The second corner. |
| c2 | The third corner. |
| c3 | The fourth corner. |
| c4 | The fifth corner. |
| c5 | The sixth corner. |
| c6 | The seventh corner. |
| c7 | The eighth corner. |
| values | The (possible) values at the corners. |
Definition at line 142 of file OgreVolumeDualGridGenerator.h.
References Ogre::Volume::IsoSurface::addMarchingCubesTriangles(), Ogre::Volume::IsoSurface::addMarchingSquaresTriangles(), Ogre::Volume::OctreeNode::getFrom(), Ogre::Volume::OctreeNode::getTo(), Ogre::Volume::IsoSurface::MS_CORNERS_BACK, Ogre::Volume::IsoSurface::MS_CORNERS_BOTTOM, Ogre::Volume::IsoSurface::MS_CORNERS_FRONT, Ogre::Volume::IsoSurface::MS_CORNERS_LEFT, Ogre::Volume::IsoSurface::MS_CORNERS_RIGHT, Ogre::Volume::IsoSurface::MS_CORNERS_TOP, Ogre::Vector3::x, Ogre::Vector3::y, and Ogre::Vector3::z.
edgeProc with variing X of the nodes, see the paper for edgeProc().
Direction of parameters: Z+, Y around the clock (n0, n3, n7, n4 for example of the parent cell)
- Parameters
-
| n0 | The first node. |
| n1 | The second node. |
| n2 | The third node. |
| n3 | The fourth node. |
edgeProc with variing Y of the nodes, see the paper for edgeProc().
Direction of parameters: X+, Z around the clock (n0, n1, n2, n3 for example of the parent cell)
- Parameters
-
| n0 | The first node. |
| n1 | The second node. |
| n2 | The third node. |
| n3 | The fourth node. |
edgeProc with variing Z of the nodes, see the paper for edgeProc().
Direction of parameters: X+, Y around the clock (n7, n6, n2, n3 for example of the parent cell)
- Parameters
-
| n0 | The first node. |
| n1 | The second node. |
| n2 | The third node. |
| n3 | The fourth node. |
Generates the dualgrid of the given octree root node.
- Parameters
-
| root | The octree root node. |
| is | To contour the dualcells. |
| mb | To store the triangles of the contour. |
| maxMSDistance | The maximum distance to the isosurface where to generate skirts. |
| totalFrom | The global from. |
| totalTo | The global to. |
| saveDualCells | Whether to save the generated dualcells of the generated dual cells. |
| DualCell Ogre::Volume::DualGridGenerator::getDualCell |
( |
size_t |
i | ) |
const |
| size_t Ogre::Volume::DualGridGenerator::getDualCellCount |
( |
void |
| ) |
const |
Gets the lazily created entity of the dualgrid debug visualization.
- Parameters
-
| sceneManager | The scenemanager creating the entity. |
- Returns
- The entity. Might be null if no dualcells are available.
| void Ogre::Volume::DualGridGenerator::nodeProc |
( |
const OctreeNode * |
n | ) |
|
|
protected |
template<class Alloc >
| void* Ogre::AllocatedObject< Alloc >::operator new |
( |
size_t |
sz, |
|
|
const char * |
file, |
|
|
int |
line, |
|
|
const char * |
func |
|
) |
| |
|
inherited |
template<class Alloc >
| void* Ogre::AllocatedObject< Alloc >::operator new[] |
( |
size_t |
sz, |
|
|
const char * |
file, |
|
|
int |
line, |
|
|
const char * |
func |
|
) |
| |
|
inherited |
| VecDualCell Ogre::Volume::DualGridGenerator::mDualCells |
|
protected |
| Entity* Ogre::Volume::DualGridGenerator::mDualGrid |
|
protected |
| size_t Ogre::Volume::DualGridGenerator::mDualGridI |
|
staticprotected |
| Real Ogre::Volume::DualGridGenerator::mMaxMSDistance |
|
protected |
| OctreeNode const* Ogre::Volume::DualGridGenerator::mRoot |
|
protected |
| bool Ogre::Volume::DualGridGenerator::mSaveDualCells |
|
protected |
| Vector3 Ogre::Volume::DualGridGenerator::mTotalFrom |
|
protected |
| Vector3 Ogre::Volume::DualGridGenerator::mTotalTo |
|
protected |
The documentation for this class was generated from the following file: