Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkMarchingCubes Class Reference

#include <vtkMarchingCubes.h>

Inheritance diagram for vtkMarchingCubes:

Inheritance graph
[legend]
Collaboration diagram for vtkMarchingCubes:

Collaboration graph
[legend]
List of all members.

Detailed Description

generate isosurface(s) from volume

vtkMarchingCubes is a filter that takes as input a volume (e.g., 3D structured point set) and generates on output one or more isosurfaces. One or more contour values must be specified to generate the isosurfaces. Alternatively, you can specify a min/max scalar range and the number of contours to generate a series of evenly spaced contour values.

Warning:
This filter is specialized to volumes. If you are interested in contouring other types of data, use the general vtkContourFilter. If you want to contour an image (i.e., a volume slice), use vtkMarchingSquares.
See also:
vtkContourFilter vtkSliceCubes vtkMarchingSquares vtkDividingCubes
Created by:
  • Schroeder, Will
CVS contributions (if > 5%):
  • Schroeder, Will (47%)
  • Lorensen, Bill (30%)
  • Martin, Ken (10%)
CVS logs (CVSweb):
  • .cxx (/Patented/vtkMarchingCubes.cxx)
  • .h (/Patented/vtkMarchingCubes.h)
Tests:
vtkMarchingCubes (Tests)

Definition at line 72 of file vtkMarchingCubes.h.

Public Types

typedef vtkStructuredPointsToPolyDataFilter Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
void SetValue (int i, double value)
void GetValues (double *contourValues)
void SetNumberOfContours (int number)
unsigned long int GetMTime ()
void CreateDefaultLocator ()
double GetValue (int i)
double * GetValues ()
int GetNumberOfContours ()
void GenerateValues (int numContours, double range[2])
void GenerateValues (int numContours, double rangeStart, double rangeEnd)
virtual void SetComputeNormals (int)
virtual int GetComputeNormals ()
virtual void ComputeNormalsOn ()
virtual void ComputeNormalsOff ()
virtual void SetComputeGradients (int)
virtual int GetComputeGradients ()
virtual void ComputeGradientsOn ()
virtual void ComputeGradientsOff ()
virtual void SetComputeScalars (int)
virtual int GetComputeScalars ()
virtual void ComputeScalarsOn ()
virtual void ComputeScalarsOff ()
void SetLocator (vtkPointLocator *locator)
virtual vtkPointLocator * GetLocator ()

Static Public Member Functions

vtkMarchingCubes * New ()
int IsTypeOf (const char *type)
vtkMarchingCubes * SafeDownCast (vtkObject *o)

Protected Member Functions

 vtkMarchingCubes ()
 ~vtkMarchingCubes ()
void Execute ()

Protected Attributes

vtkContourValues * ContourValues
int ComputeNormals
int ComputeGradients
int ComputeScalars
vtkPointLocator * Locator


Member Typedef Documentation

typedef vtkStructuredPointsToPolyDataFilter vtkMarchingCubes::Superclass
 

Reimplemented from vtkStructuredPointsToPolyDataFilter.

Reimplemented in vtkDiscreteMarchingCubes.

Definition at line 76 of file vtkMarchingCubes.h.


Constructor & Destructor Documentation

vtkMarchingCubes::vtkMarchingCubes (   )  [protected]
 

vtkMarchingCubes::~vtkMarchingCubes (   )  [protected]
 


Member Function Documentation

vtkMarchingCubes* vtkMarchingCubes::New (   )  [static]
 

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkAlgorithm.

Reimplemented in vtkDiscreteMarchingCubes.

virtual const char* vtkMarchingCubes::GetClassName (   )  [virtual]
 

Reimplemented from vtkStructuredPointsToPolyDataFilter.

Reimplemented in vtkDiscreteMarchingCubes.

int vtkMarchingCubes::IsTypeOf (  const char *  type  )  [static]
 

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkStructuredPointsToPolyDataFilter.

Reimplemented in vtkDiscreteMarchingCubes.

virtual int vtkMarchingCubes::IsA (  const char *  type  )  [virtual]
 

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkStructuredPointsToPolyDataFilter.

Reimplemented in vtkDiscreteMarchingCubes.

vtkMarchingCubes* vtkMarchingCubes::SafeDownCast (  vtkObject *  o  )  [static]
 

Reimplemented from vtkStructuredPointsToPolyDataFilter.

Reimplemented in vtkDiscreteMarchingCubes.

void vtkMarchingCubes::PrintSelf (  ostream &  os,
vtkIndent  indent
)  [virtual]
 

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkStructuredPointsToPolyDataFilter.

void vtkMarchingCubes::SetValue (  int  i,
double  value
)  [inline]
 

Set a particular contour value at contour number i. The index i ranges between 0<=i<NumberOfContours.

Definition at line 150 of file vtkMarchingCubes.h.

References ContourValues, and vtkContourValues::SetValue().

double vtkMarchingCubes::GetValue (  int  i  )  [inline]
 

Get the ith contour value.

Definition at line 155 of file vtkMarchingCubes.h.

References ContourValues, and vtkContourValues::GetValue().

double * vtkMarchingCubes::GetValues (   )  [inline]
 

Get a pointer to an array of contour values. There will be GetNumberOfContours() values in the list.

Definition at line 162 of file vtkMarchingCubes.h.

References ContourValues, and vtkContourValues::GetValues().

void vtkMarchingCubes::GetValues (  double *  contourValues  )  [inline]
 

Fill a supplied list with contour values. There will be GetNumberOfContours() values in the list. Make sure you allocate enough memory to hold the list.

Definition at line 169 of file vtkMarchingCubes.h.

References ContourValues, and vtkContourValues::GetValues().

void vtkMarchingCubes::SetNumberOfContours (  int  number  )  [inline]
 

Set the number of contours to place into the list. You only really need to use this method to reduce list size. The method SetValue() will automatically increase list size as needed.

Definition at line 175 of file vtkMarchingCubes.h.

References ContourValues, and vtkContourValues::SetNumberOfContours().

int vtkMarchingCubes::GetNumberOfContours (   )  [inline]
 

Get the number of contours in the list of contour values.

Definition at line 180 of file vtkMarchingCubes.h.

References ContourValues, and vtkContourValues::GetNumberOfContours().

void vtkMarchingCubes::GenerateValues (  int  numContours,
double  range[2]
)  [inline]
 

Generate numContours equally spaced contour values between specified range. Contour values will include min/max range values.

Definition at line 187 of file vtkMarchingCubes.h.

References ContourValues, and vtkContourValues::GenerateValues().

void vtkMarchingCubes::GenerateValues (  int  numContours,
double  rangeStart,
double  rangeEnd
)  [inline]
 

Generate numContours equally spaced contour values between specified range. Contour values will include min/max range values.

Definition at line 194 of file vtkMarchingCubes.h.

References ContourValues, and vtkContourValues::GenerateValues().

unsigned long int vtkMarchingCubes::GetMTime (   )  [virtual]
 

Return this object's modified time.

Reimplemented from vtkObject.

virtual void vtkMarchingCubes::SetComputeNormals (  int   )  [virtual]
 

Set/Get the computation of normals. Normal computation is fairly expensive in both time and storage. If the output data will be processed by filters that modify topology or geometry, it may be wise to turn Normals and Gradients off.

virtual int vtkMarchingCubes::GetComputeNormals (   )  [virtual]
 

Set/Get the computation of normals. Normal computation is fairly expensive in both time and storage. If the output data will be processed by filters that modify topology or geometry, it may be wise to turn Normals and Gradients off.

virtual void vtkMarchingCubes::ComputeNormalsOn (   )  [virtual]
 

Set/Get the computation of normals. Normal computation is fairly expensive in both time and storage. If the output data will be processed by filters that modify topology or geometry, it may be wise to turn Normals and Gradients off.

virtual void vtkMarchingCubes::ComputeNormalsOff (   )  [virtual]
 

Set/Get the computation of normals. Normal computation is fairly expensive in both time and storage. If the output data will be processed by filters that modify topology or geometry, it may be wise to turn Normals and Gradients off.

virtual void vtkMarchingCubes::SetComputeGradients (  int   )  [virtual]
 

Set/Get the computation of gradients. Gradient computation is fairly expensive in both time and storage. Note that if ComputeNormals is on, gradients will have to be calculated, but will not be stored in the output dataset. If the output data will be processed by filters that modify topology or geometry, it may be wise to turn Normals and Gradients off.

virtual int vtkMarchingCubes::GetComputeGradients (   )  [virtual]
 

Set/Get the computation of gradients. Gradient computation is fairly expensive in both time and storage. Note that if ComputeNormals is on, gradients will have to be calculated, but will not be stored in the output dataset. If the output data will be processed by filters that modify topology or geometry, it may be wise to turn Normals and Gradients off.

virtual void vtkMarchingCubes::ComputeGradientsOn (   )  [virtual]
 

Set/Get the computation of gradients. Gradient computation is fairly expensive in both time and storage. Note that if ComputeNormals is on, gradients will have to be calculated, but will not be stored in the output dataset. If the output data will be processed by filters that modify topology or geometry, it may be wise to turn Normals and Gradients off.

virtual void vtkMarchingCubes::ComputeGradientsOff (   )  [virtual]
 

Set/Get the computation of gradients. Gradient computation is fairly expensive in both time and storage. Note that if ComputeNormals is on, gradients will have to be calculated, but will not be stored in the output dataset. If the output data will be processed by filters that modify topology or geometry, it may be wise to turn Normals and Gradients off.

virtual void vtkMarchingCubes::SetComputeScalars (  int   )  [virtual]
 

Set/Get the computation of scalars.

virtual int vtkMarchingCubes::GetComputeScalars (   )  [virtual]
 

Set/Get the computation of scalars.

virtual void vtkMarchingCubes::ComputeScalarsOn (   )  [virtual]
 

Set/Get the computation of scalars.

virtual void vtkMarchingCubes::ComputeScalarsOff (   )  [virtual]
 

Set/Get the computation of scalars.

void vtkMarchingCubes::SetLocator (  vtkPointLocator *  locator  ) 
 

Overide the default locator. Useful for changing the number of bins for performance or specifying a more aggressive locator.

virtual vtkPointLocator* vtkMarchingCubes::GetLocator (   )  [virtual]
 

Overide the default locator. Useful for changing the number of bins for performance or specifying a more aggressive locator.

void vtkMarchingCubes::CreateDefaultLocator (   ) 
 

Create default locator. Used to create one when none is specified. The locator is used to merge coincident points.

void vtkMarchingCubes::Execute (   )  [protected, virtual]
 

This method is the old style execute method

Reimplemented from vtkSource.

Reimplemented in vtkDiscreteMarchingCubes.


Member Data Documentation

vtkContourValues* vtkMarchingCubes::ContourValues [protected]
 

Definition at line 138 of file vtkMarchingCubes.h.

Referenced by GenerateValues(), GetNumberOfContours(), GetValue(), GetValues(), SetNumberOfContours(), and SetValue().

int vtkMarchingCubes::ComputeNormals [protected]
 

Definition at line 139 of file vtkMarchingCubes.h.

int vtkMarchingCubes::ComputeGradients [protected]
 

Definition at line 140 of file vtkMarchingCubes.h.

int vtkMarchingCubes::ComputeScalars [protected]
 

Definition at line 141 of file vtkMarchingCubes.h.

vtkPointLocator* vtkMarchingCubes::Locator [protected]
 

Definition at line 142 of file vtkMarchingCubes.h.


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