Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

vtkMarchingContourFilter Class Reference

generate isosurfaces/isolines from scalar values. More...

#include <vtkMarchingContourFilter.h>

Inheritance diagram for vtkMarchingContourFilter:

Inheritance graph
[legend]
Collaboration diagram for vtkMarchingContourFilter:

Collaboration graph
[legend]
List of all members.

Public Methods

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
void SetValue (int i, float value)
float GetValue (int i)
float * GetValues ()
void GetValues (float *contourValues)
void SetNumberOfContours (int number)
int GetNumberOfContours ()
void GenerateValues (int numContours, float range[2])
void GenerateValues (int numContours, float rangeStart, float rangeEnd)
unsigned long GetMTime ()
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 ()
virtual void SetUseScalarTree (int)
virtual int GetUseScalarTree ()
virtual void UseScalarTreeOn ()
virtual void UseScalarTreeOff ()
void SetLocator (vtkPointLocator *locator)
virtual vtkPointLocatorGetLocator ()
void CreateDefaultLocator ()
void SetLocator (vtkPointLocator &locator)

Static Public Methods

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

Protected Methods

 vtkMarchingContourFilter ()
 ~vtkMarchingContourFilter ()
 vtkMarchingContourFilter (const vtkMarchingContourFilter &)
void operator= (const vtkMarchingContourFilter &)
void Execute ()
void StructuredPointsContour (int dim)
void ImageContour (int dim)
void DataSetContour ()

Protected Attributes

vtkContourValuesContourValues
int ComputeNormals
int ComputeGradients
int ComputeScalars
vtkPointLocatorLocator
int UseScalarTree
vtkScalarTreeScalarTree

Detailed Description

generate isosurfaces/isolines from scalar values.

Date:
2000/12/10 20:09:16
Revision:
1.10

vtkMarchingContourFilter is a filter that takes as input any dataset and generates on output isosurfaces and/or isolines. The exact form of the output depends upon the dimensionality of the input data. Data consisting of 3D cells will generate isosurfaces, data consisting of 2D cells will generate isolines, and data with 1D or 0D cells will generate isopoints. Combinations of output type are possible if the input dimension is mixed.

This filter will identify special dataset types (e.g., structured points) and use the appropriate specialized filter to process the data. For examples, if the input dataset type is a volume, this filter will create an internal vtkMarchingCubes instance and use it. This gives much better performance.

To use this filter you must specify one or more contour values. You can either use the method SetValue() to specify each contour value, or use GenerateValues() to generate a series of evenly spaced contours. It is also possible to accelerate the operation of this filter (at the cost of extra memory) by using a vtkScalarTree. A scalar tree is used to quickly locate cells that contain a contour surface. This is especially effective if multiple contours are being extracted. If you want to use a scalar tree, invoke the method UseScalarTreeOn().

Warning:
For unstructured data or structured grids, normals and gradients are not computed. This calculation will be implemented in the future. In the mean time, use vtkPolyDataNormals to compute the surface normals.
See also:
vtkMarchingCubes vtkSliceCubes vtkDividingCubes vtkMarchingSquares vtkImageMarchingCubes
Examples:
vtkMarchingContourFilter (examples)

Definition at line 105 of file vtkMarchingContourFilter.h.


Constructor & Destructor Documentation

vtkMarchingContourFilter::vtkMarchingContourFilter   [protected]
 

vtkMarchingContourFilter::~vtkMarchingContourFilter   [protected]
 

vtkMarchingContourFilter::vtkMarchingContourFilter const vtkMarchingContourFilter &    [inline, protected]
 

Definition at line 174 of file vtkMarchingContourFilter.h.


Member Function Documentation

virtual const char* vtkMarchingContourFilter::GetClassName   [virtual]
 

Return the class name as a string. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataSetToPolyDataFilter.

int vtkMarchingContourFilter::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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataSetToPolyDataFilter.

virtual int vtkMarchingContourFilter::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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataSetToPolyDataFilter.

vtkMarchingContourFilter* vtkMarchingContourFilter::SafeDownCast vtkObject   o [static]
 

Will cast the supplied object to vtkObject* is this is a safe operation (i.e., a safe downcast); otherwise NULL is returned. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataSetToPolyDataFilter.

void vtkMarchingContourFilter::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 vtkSource.

vtkMarchingContourFilter* vtkMarchingContourFilter::New   [static]
 

Construct object with initial range (0,1) and single contour value of 0.0.

Reimplemented from vtkPolyDataSource.

void vtkMarchingContourFilter::SetValue int    i,
float    value
[inline]
 

Methods to set / get contour values.

Definition at line 197 of file vtkMarchingContourFilter.h.

float vtkMarchingContourFilter::GetValue int    i [inline]
 

Get the ith contour value.

Definition at line 201 of file vtkMarchingContourFilter.h.

float * vtkMarchingContourFilter::GetValues   [inline]
 

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

Definition at line 206 of file vtkMarchingContourFilter.h.

void vtkMarchingContourFilter::GetValues float *    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 212 of file vtkMarchingContourFilter.h.

void vtkMarchingContourFilter::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 218 of file vtkMarchingContourFilter.h.

int vtkMarchingContourFilter::GetNumberOfContours   [inline]
 

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

Definition at line 222 of file vtkMarchingContourFilter.h.

void vtkMarchingContourFilter::GenerateValues int    numContours,
float    range[2]
[inline]
 

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

Definition at line 227 of file vtkMarchingContourFilter.h.

void vtkMarchingContourFilter::GenerateValues int    numContours,
float    rangeStart,
float    rangeEnd
[inline]
 

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

Definition at line 232 of file vtkMarchingContourFilter.h.

unsigned long vtkMarchingContourFilter::GetMTime   [virtual]
 

Modified GetMTime Because we delegate to vtkContourValues

Reimplemented from vtkObject.

virtual void vtkMarchingContourFilter::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 vtkMarchingContourFilter::GetComputeNormals   [virtual]
 

virtual void vtkMarchingContourFilter::ComputeNormalsOn   [virtual]
 

virtual void vtkMarchingContourFilter::ComputeNormalsOff   [virtual]
 

virtual void vtkMarchingContourFilter::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 vtkMarchingContourFilter::GetComputeGradients   [virtual]
 

virtual void vtkMarchingContourFilter::ComputeGradientsOn   [virtual]
 

virtual void vtkMarchingContourFilter::ComputeGradientsOff   [virtual]
 

virtual void vtkMarchingContourFilter::SetComputeScalars int    [virtual]
 

Set/Get the computation of scalars.

virtual int vtkMarchingContourFilter::GetComputeScalars   [virtual]
 

virtual void vtkMarchingContourFilter::ComputeScalarsOn   [virtual]
 

virtual void vtkMarchingContourFilter::ComputeScalarsOff   [virtual]
 

virtual void vtkMarchingContourFilter::SetUseScalarTree int    [virtual]
 

Enable the use of a scalar tree to accelerate contour extraction.

virtual int vtkMarchingContourFilter::GetUseScalarTree   [virtual]
 

virtual void vtkMarchingContourFilter::UseScalarTreeOn   [virtual]
 

virtual void vtkMarchingContourFilter::UseScalarTreeOff   [virtual]
 

void vtkMarchingContourFilter::SetLocator vtkPointLocator   locator
 

Set / get a spatial locator for merging points. By default, an instance of vtkMergePoints is used.

virtual vtkPointLocator* vtkMarchingContourFilter::GetLocator   [virtual]
 

void vtkMarchingContourFilter::CreateDefaultLocator void   
 

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

void vtkMarchingContourFilter::SetLocator vtkPointLocator   locator [inline]
 

For legacy compatibility. Do not use.

Definition at line 167 of file vtkMarchingContourFilter.h.

void vtkMarchingContourFilter::operator= const vtkMarchingContourFilter &    [inline, protected]
 

Definition at line 175 of file vtkMarchingContourFilter.h.

void vtkMarchingContourFilter::Execute   [protected, virtual]
 

Reimplemented from vtkSource.

void vtkMarchingContourFilter::StructuredPointsContour int    dim [protected]
 

void vtkMarchingContourFilter::ImageContour int    dim [protected]
 

void vtkMarchingContourFilter::DataSetContour   [protected]
 


Member Data Documentation

vtkContourValues* vtkMarchingContourFilter::ContourValues [protected]
 

Definition at line 179 of file vtkMarchingContourFilter.h.

int vtkMarchingContourFilter::ComputeNormals [protected]
 

Definition at line 180 of file vtkMarchingContourFilter.h.

int vtkMarchingContourFilter::ComputeGradients [protected]
 

Definition at line 181 of file vtkMarchingContourFilter.h.

int vtkMarchingContourFilter::ComputeScalars [protected]
 

Definition at line 182 of file vtkMarchingContourFilter.h.

vtkPointLocator* vtkMarchingContourFilter::Locator [protected]
 

Definition at line 183 of file vtkMarchingContourFilter.h.

int vtkMarchingContourFilter::UseScalarTree [protected]
 

Definition at line 184 of file vtkMarchingContourFilter.h.

vtkScalarTree* vtkMarchingContourFilter::ScalarTree [protected]
 

Definition at line 185 of file vtkMarchingContourFilter.h.


The documentation for this class was generated from the following file:
Generated on Wed Nov 21 12:52:53 2001 for VTK by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001