Biomechanical Joint Model
 Author: Anderson Maciel

marchingCubes Class Reference

#include <marching_cubes.h>

Collaboration diagram for marchingCubes:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 marchingCubes (vector< Primitive * > primitives, REAL resolution)
vector< VECgetVertices () const
vector< VECgetNormals () const
vector< TrianglegetTriangles () const

Private Member Functions

idx3 findSeedVoxel ()
int polygonise (GridCell &cube)
void computeVoxelFieldValues (GridCell &cell, const idx3 &id)
void constructSurface (list< idx3 > &voxlist)

Private Attributes

vector< VECvertlist
vector< VECnormlist
vector< Triangletrilist
const vector< Primitive * > primlist
VEC LL
VEC UR
REAL res
HashMap< Voxelsurf
HashMap< Edgeedges

Detailed Description

Definition at line 57 of file marching_cubes.h.


Constructor & Destructor Documentation

marchingCubes::marchingCubes vector< Primitive * >  primitives,
REAL  resolution
 

Definition at line 313 of file marching_cubes.cpp.

References constructSurface(), LinAlg::epsilon, BBox::extendBy(), findSeedVoxel(), BBox::getMax(), BBox::getMin(), LL, primlist, BBox::scale(), trilist, UR, and vertlist.

Here is the call graph for this function:


Member Function Documentation

void marchingCubes::computeVoxelFieldValues GridCell cell,
const idx3 id
[private]
 

Definition at line 203 of file marching_cubes.cpp.

References Voxel::field_values, and Voxel::X.

Referenced by constructSurface().

void marchingCubes::constructSurface list< idx3 > &  voxlist  )  [private]
 

Definition at line 247 of file marching_cubes.cpp.

References computeVoxelFieldValues(), LinAlg::idx3::i, LinAlg::idx3::j, LinAlg::idx3::k, LL, polygonise(), res, surf, and UR.

Referenced by marchingCubes().

Here is the call graph for this function:

idx3 marchingCubes::findSeedVoxel  )  [private]
 

Definition at line 38 of file marching_cubes.cpp.

References Ray::D, LinAlg::infinity, LL, Ray::O, Ray::P, primlist, REAL, res, Ray::segment, Ray::t, and UR.

Referenced by marchingCubes().

vector<VEC> marchingCubes::getNormals  )  const [inline]
 

Definition at line 63 of file marching_cubes.h.

References normlist.

Referenced by drawVoxelisation(), SaveIsoSurf2Trig(), and saveToPLY().

vector<Triangle> marchingCubes::getTriangles  )  const [inline]
 

Definition at line 64 of file marching_cubes.h.

References trilist.

Referenced by drawVoxelisation(), SaveIsoSurf2Trig(), and saveToPLY().

vector<VEC> marchingCubes::getVertices  )  const [inline]
 

Definition at line 62 of file marching_cubes.h.

References vertlist.

Referenced by drawVoxelisation(), SaveIsoSurf2Trig(), and saveToPLY().

int marchingCubes::polygonise GridCell cube  )  [private]
 

Definition at line 109 of file marching_cubes.cpp.

References cubeEdges, Edge::done, edges, edgeTable, faceTable, GridCell::indices, normlist, GridCell::p, primlist, GridCell::val, and vertlist.

Referenced by constructSurface().


Member Data Documentation

HashMap<Edge> marchingCubes::edges [private]
 

Definition at line 80 of file marching_cubes.h.

Referenced by polygonise().

VEC marchingCubes::LL [private]
 

Definition at line 76 of file marching_cubes.h.

Referenced by constructSurface(), findSeedVoxel(), and marchingCubes().

vector<VEC> marchingCubes::normlist [private]
 

Definition at line 73 of file marching_cubes.h.

Referenced by getNormals(), and polygonise().

const vector<Primitive*> marchingCubes::primlist [private]
 

Definition at line 75 of file marching_cubes.h.

Referenced by findSeedVoxel(), marchingCubes(), and polygonise().

REAL marchingCubes::res [private]
 

Definition at line 77 of file marching_cubes.h.

Referenced by constructSurface(), and findSeedVoxel().

HashMap<Voxel> marchingCubes::surf [private]
 

Definition at line 79 of file marching_cubes.h.

Referenced by constructSurface().

vector<Triangle> marchingCubes::trilist [private]
 

Definition at line 74 of file marching_cubes.h.

Referenced by getTriangles(), and marchingCubes().

VEC marchingCubes::UR [private]
 

Definition at line 76 of file marching_cubes.h.

Referenced by constructSurface(), findSeedVoxel(), and marchingCubes().

vector<VEC> marchingCubes::vertlist [private]
 

Definition at line 73 of file marching_cubes.h.

Referenced by getVertices(), marchingCubes(), and polygonise().


The documentation for this class was generated from the following files:
Generated on Thu Dec 1 10:14:31 2005 for COME - Biomechanical Joint Model by  doxygen 1.4.5