Ogre::Volume::IsoSurface Class Referenceabstract

Abstract IsoSurface. More...

`#include <OgreVolumeIsoSurface.h>`

Inheritance diagram for Ogre::Volume::IsoSurface:
[legend]

## Public Member Functions

virtual | ~IsoSurface (void)
virtual void | addMarchingCubesTriangles (const Vector3 *corners, const Vector4 *volumeValues, MeshBuilder *mb) const =0
| Adds triangles to a MeshBuilder via Marching Cubes. More...
virtual void | addMarchingSquaresTriangles (const Vector3 *corners, const Vector4 *volumeValues, const size_t *indices, const Real maxDistance, MeshBuilder *mb) const =0
| Adds triangles to a MeshBuilder via Marching Squares. 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)

## Static Public Attributes

static const size_t | MS_CORNERS_BACK [4]
| To call Marching Squares with a cube on its back. More...
static const size_t | MS_CORNERS_BOTTOM [4]
| To call Marching Squares with a cube on its bottom. More...
static const size_t | MS_CORNERS_FRONT [4]
| To call Marching Squares with a cube on its front. More...
static const size_t | MS_CORNERS_LEFT [4]
| To call Marching Squares with a cube on its left. More...
static const size_t | MS_CORNERS_RIGHT [4]
| To call Marching Squares with a cube on its right. More...
static const size_t | MS_CORNERS_TOP [4]
| To call Marching Squares with a cube on its top. More...

## Protected Member Functions

| IsoSurface (const Source *src)
| Constructor. More...

## Protected Attributes

const Source * | mSrc
| To get the isovalue and normal. More...

## Static Protected Attributes

static const Real | ISO_LEVEL
| The value where our isosurface is. More...

## Detailed Description

Abstract IsoSurface.

Definition at line 40 of file OgreVolumeIsoSurface.h.

## Constructor & Destructor Documentation

## IsoSurface()

Ogre::Volume::IsoSurface::IsoSurface | ( | const Source * | src | ) |

explicit protected

Constructor.

Parameters

  src | The source to use.

## ~IsoSurface()

virtual Ogre::Volume::IsoSurface::~IsoSurface | ( | void |  | ) |

virtual

## Member Function Documentation

## addMarchingCubesTriangles()

virtual void Ogre::Volume::IsoSurface::addMarchingCubesTriangles | ( | const Vector3 * | corners,
|  | const Vector4 * | volumeValues,
|  | MeshBuilder * | mb
| ) |  | const

pure virtual

Adds triangles to a MeshBuilder via Marching Cubes.

Parameters

  corners | The corners of the cube to triangulate via Marching Cubes.
  volumeValues | The cached volume values, one Vector4 consists of gradient (x, y, z) and density (w). If 0 is given, it will be calculated.
  mb | The MeshBuilder to add the triangles to.

Implemented in Ogre::Volume::IsoSurfaceMC.

Referenced by Ogre::Volume::DualGridGenerator::addDualCell().

## addMarchingSquaresTriangles()

virtual void Ogre::Volume::IsoSurface::addMarchingSquaresTriangles | ( | const Vector3 * | corners,
|  | const Vector4 * | volumeValues,
|  | const size_t * | indices,
|  | const Real | maxDistance,
|  | MeshBuilder * | mb
| ) |  | const

pure virtual

Adds triangles to a MeshBuilder via Marching Squares.

Parameters

  corners | The corners of the cube where one side is to be triangulated.
  volumeValues | The cached volume values, one Vector4 consists of gradient (x, y, z) and density (w). If 0 is given, it will be calculated.
  indices | The four corners of the cube (== one side) to triangulate.
  maxDistance | The maximum distance to the surface where triangles are generated.
  mb | The MeshBuilder to add the triangles to.

Implemented in Ogre::Volume::IsoSurfaceMC.

Referenced by Ogre::Volume::DualGridGenerator::addDualCell().

## operator delete() [1/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr | ) |

inherited

Definition at line 96 of file OgreMemoryAllocatedObject.h.

## operator delete() [2/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | void * |
| ) |  |

inherited

Definition at line 102 of file OgreMemoryAllocatedObject.h.

## operator delete() [3/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |
| ) |  |

inherited

Definition at line 108 of file OgreMemoryAllocatedObject.h.

## operator delete[]() [1/2]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr | ) |

inherited

Definition at line 113 of file OgreMemoryAllocatedObject.h.

## operator delete[]() [2/2]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |
| ) |  |

inherited

Definition at line 119 of file OgreMemoryAllocatedObject.h.

## operator new() [1/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz,
|  | const char * | file,
|  | int | line,
|  | const char * | func
| ) |  |

inherited

operator new, with debug line info

Definition at line 68 of file OgreMemoryAllocatedObject.h.

## operator new() [2/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz | ) |

inherited

Definition at line 73 of file OgreMemoryAllocatedObject.h.

## operator new() [3/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz,
|  | void * | ptr
| ) |  |

inherited

placement operator new

Definition at line 79 of file OgreMemoryAllocatedObject.h.

## operator new[]() [1/2]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz,
|  | const char * | file,
|  | int | line,
|  | const char * | func
| ) |  |

inherited

array operator new, with debug line info

Definition at line 86 of file OgreMemoryAllocatedObject.h.

## operator new[]() [2/2]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz | ) |

inherited

Definition at line 91 of file OgreMemoryAllocatedObject.h.

## Member Data Documentation

## ISO_LEVEL

const Real Ogre::Volume::IsoSurface::ISO_LEVEL

static protected

The value where our isosurface is.

Definition at line 45 of file OgreVolumeIsoSurface.h.

## MS_CORNERS_BACK

const size_t Ogre::Volume::IsoSurface::MS_CORNERS_BACK[4]

static

To call Marching Squares with a cube on its back.

Definition at line 62 of file OgreVolumeIsoSurface.h.

Referenced by Ogre::Volume::DualGridGenerator::addDualCell().

## MS_CORNERS_BOTTOM

const size_t Ogre::Volume::IsoSurface::MS_CORNERS_BOTTOM[4]

static

To call Marching Squares with a cube on its bottom.

Definition at line 74 of file OgreVolumeIsoSurface.h.

Referenced by Ogre::Volume::DualGridGenerator::addDualCell().

## MS_CORNERS_FRONT

const size_t Ogre::Volume::IsoSurface::MS_CORNERS_FRONT[4]

static

To call Marching Squares with a cube on its front.

Definition at line 59 of file OgreVolumeIsoSurface.h.

Referenced by Ogre::Volume::DualGridGenerator::addDualCell().

## MS_CORNERS_LEFT

const size_t Ogre::Volume::IsoSurface::MS_CORNERS_LEFT[4]

static

To call Marching Squares with a cube on its left.

Definition at line 65 of file OgreVolumeIsoSurface.h.

Referenced by Ogre::Volume::DualGridGenerator::addDualCell().

## MS_CORNERS_RIGHT

const size_t Ogre::Volume::IsoSurface::MS_CORNERS_RIGHT[4]

static

To call Marching Squares with a cube on its right.

Definition at line 68 of file OgreVolumeIsoSurface.h.

Referenced by Ogre::Volume::DualGridGenerator::addDualCell().

## MS_CORNERS_TOP

const size_t Ogre::Volume::IsoSurface::MS_CORNERS_TOP[4]

static

To call Marching Squares with a cube on its top.

Definition at line 71 of file OgreVolumeIsoSurface.h.

Referenced by Ogre::Volume::DualGridGenerator::addDualCell().

## mSrc

const Source* Ogre::Volume::IsoSurface::mSrc

protected

To get the isovalue and normal.

Definition at line 48 of file OgreVolumeIsoSurface.h.

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

- OgreVolumeIsoSurface.h

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.