OGRE-Next  3.0.0
Object-Oriented Graphics Rendering Engine
Ogre::Volume::IsoSurface Class Referenceabstract

Abstract IsoSurface. More...

#include <OgreVolumeIsoSurface.h>

+ Inheritance diagram for Ogre::Volume::IsoSurface:

Public Member Functions

virtual ~IsoSurface ()
 
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...
 

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...
 

Detailed Description

Abstract IsoSurface.

Constructor & Destructor Documentation

◆ ~IsoSurface()

virtual Ogre::Volume::IsoSurface::~IsoSurface ( )
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
cornersThe corners of the cube to triangulate via Marching Cubes.
volumeValuesThe cached volume values, one Vector4 consists of gradient (x, y, z) and density (w). If 0 is given, it will be calculated.
mbThe MeshBuilder to add the triangles to.

Implemented in Ogre::Volume::IsoSurfaceMC.

◆ 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
cornersThe corners of the cube where one side is to be triangulated.
volumeValuesThe cached volume values, one Vector4 consists of gradient (x, y, z) and density (w). If 0 is given, it will be calculated.
indicesThe four corners of the cube (== one side) to triangulate.
maxDistanceThe maximum distance to the surface where triangles are generated.
mbThe MeshBuilder to add the triangles to.

Implemented in Ogre::Volume::IsoSurfaceMC.

Member Data Documentation

◆ MS_CORNERS_BACK

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

To call Marching Squares with a cube on its back.

◆ MS_CORNERS_BOTTOM

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

To call Marching Squares with a cube on its bottom.

◆ MS_CORNERS_FRONT

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

To call Marching Squares with a cube on its front.

◆ MS_CORNERS_LEFT

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

To call Marching Squares with a cube on its left.

◆ MS_CORNERS_RIGHT

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

To call Marching Squares with a cube on its right.

◆ MS_CORNERS_TOP

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

To call Marching Squares with a cube on its top.


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