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

vtkContourFilter Class Reference

#include <vtkContourFilter.h>

Inheritance diagram for vtkContourFilter:

Inheritance graph
[legend]
Collaboration diagram for vtkContourFilter:

Collaboration graph
[legend]
List of all members.

Detailed Description

generate isosurfaces/isolines from scalar values

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

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

If the input data is structured, consider using a filter that is optimized for structured data. These can be found in the patented classes of vtk.

Warning:
For unstructured data or structured grids, normals and gradients are not computed. Use vtkPolyDataNormals to compute the surface normals.
See also:
vtkMarchingContourFilter vtkKitwareContourFilter vtkMarchingCubes vtkSliceCubes vtkDividingCubes vtkMarchingSquares vtkImageMarchingCubes
Created by:
  • Schroeder, Will
CVS contributions (if > 5%):
  • Schroeder, Will (40%)
  • Martin, Ken (16%)
  • Law, Charles (15%)
  • Henderson, Amy (11%)
  • Lorensen, Bill (7%)
CVS logs (CVSweb):
  • .h (/Graphics/vtkContourFilter.h)
  • .cxx (/Graphics/vtkContourFilter.cxx)
Examples:
vtkContourFilter (Examples)
Tests:
vtkContourFilter (Tests)

Definition at line 81 of file vtkContourFilter.h.

Public Types

typedef vtkDataSetToPolyDataFilter Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
unsigned long GetMTime ()
void CreateDefaultLocator ()
void SetValue (int i, double value)
double GetValue (int i)
double * GetValues ()
void GetValues (double *contourValues)
void SetNumberOfContours (int number)
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 ()
virtual void SetUseScalarTree (int)
virtual int GetUseScalarTree ()
virtual void UseScalarTreeOn ()
virtual void UseScalarTreeOff ()
virtual void SetScalarTree (vtkScalarTree *)
virtual vtkScalarTreeGetScalarTree ()
void SetLocator (vtkPointLocator *locator)
virtual vtkPointLocatorGetLocator ()
virtual char * GetInputScalarsSelection ()
virtual void SelectInputScalars (const char *fieldName)

Static Public Member Functions

int IsTypeOf (const char *type)
vtkContourFilterSafeDownCast (vtkObject *o)
vtkContourFilterNew ()

Protected Member Functions

 vtkContourFilter ()
 ~vtkContourFilter ()
virtual void ReportReferences (vtkGarbageCollector *)
virtual void RemoveReferences ()
void Execute ()
virtual void SetInputScalarsSelection (const char *)

Protected Attributes

vtkContourValuesContourValues
int ComputeNormals
int ComputeGradients
int ComputeScalars
vtkPointLocatorLocator
int UseScalarTree
vtkScalarTreeScalarTree
char * InputScalarsSelection


Member Typedef Documentation

typedef vtkDataSetToPolyDataFilter vtkContourFilter::Superclass
 

Reimplemented from vtkDataSetToPolyDataFilter.

Reimplemented in vtkKitwareContourFilter.

Definition at line 84 of file vtkContourFilter.h.


Constructor & Destructor Documentation

vtkContourFilter::vtkContourFilter  )  [protected]
 

vtkContourFilter::~vtkContourFilter  )  [protected]
 


Member Function Documentation

virtual const char* vtkContourFilter::GetClassName  )  [virtual]
 

Reimplemented from vtkDataSetToPolyDataFilter.

Reimplemented in vtkKitwareContourFilter.

int vtkContourFilter::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 vtkDataSetToPolyDataFilter.

Reimplemented in vtkKitwareContourFilter.

virtual int vtkContourFilter::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 vtkDataSetToPolyDataFilter.

Reimplemented in vtkKitwareContourFilter.

vtkContourFilter* vtkContourFilter::SafeDownCast vtkObject o  )  [static]
 

Reimplemented from vtkDataSetToPolyDataFilter.

Reimplemented in vtkKitwareContourFilter.

void vtkContourFilter::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 vtkDataSetToPolyDataFilter.

Reimplemented in vtkKitwareContourFilter.

vtkContourFilter* vtkContourFilter::New  )  [static]
 

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

Reimplemented from vtkAlgorithm.

Reimplemented in vtkKitwareContourFilter.

void vtkContourFilter::SetValue int  i,
double  value
[inline]
 

Methods to set / get contour values.

Definition at line 195 of file vtkContourFilter.h.

References ContourValues, and vtkContourValues::SetValue().

double vtkContourFilter::GetValue int  i  )  [inline]
 

Get the ith contour value.

Definition at line 200 of file vtkContourFilter.h.

References ContourValues, and vtkContourValues::GetValue().

double * vtkContourFilter::GetValues  )  [inline]
 

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

Definition at line 207 of file vtkContourFilter.h.

References ContourValues, and vtkContourValues::GetValues().

void vtkContourFilter::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 214 of file vtkContourFilter.h.

References ContourValues, and vtkContourValues::GetValues().

void vtkContourFilter::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 220 of file vtkContourFilter.h.

References ContourValues, and vtkContourValues::SetNumberOfContours().

int vtkContourFilter::GetNumberOfContours  )  [inline]
 

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

Definition at line 225 of file vtkContourFilter.h.

References ContourValues, and vtkContourValues::GetNumberOfContours().

void vtkContourFilter::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 232 of file vtkContourFilter.h.

References ContourValues, and vtkContourValues::GenerateValues().

void vtkContourFilter::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 239 of file vtkContourFilter.h.

References ContourValues, and vtkContourValues::GenerateValues().

unsigned long vtkContourFilter::GetMTime  )  [virtual]
 

Modified GetMTime Because we delegate to vtkContourValues

Reimplemented from vtkObject.

virtual void vtkContourFilter::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 vtkContourFilter::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 vtkContourFilter::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 vtkContourFilter::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 vtkContourFilter::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 vtkContourFilter::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 vtkContourFilter::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 vtkContourFilter::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 vtkContourFilter::SetComputeScalars int   )  [virtual]
 

Set/Get the computation of scalars.

virtual int vtkContourFilter::GetComputeScalars  )  [virtual]
 

Set/Get the computation of scalars.

virtual void vtkContourFilter::ComputeScalarsOn  )  [virtual]
 

Set/Get the computation of scalars.

virtual void vtkContourFilter::ComputeScalarsOff  )  [virtual]
 

Set/Get the computation of scalars.

virtual void vtkContourFilter::SetUseScalarTree int   )  [virtual]
 

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

virtual int vtkContourFilter::GetUseScalarTree  )  [virtual]
 

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

virtual void vtkContourFilter::UseScalarTreeOn  )  [virtual]
 

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

virtual void vtkContourFilter::UseScalarTreeOff  )  [virtual]
 

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

virtual void vtkContourFilter::SetScalarTree vtkScalarTree  )  [virtual]
 

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

virtual vtkScalarTree* vtkContourFilter::GetScalarTree  )  [virtual]
 

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

void vtkContourFilter::SetLocator vtkPointLocator locator  ) 
 

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

virtual vtkPointLocator* vtkContourFilter::GetLocator  )  [virtual]
 

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

void vtkContourFilter::CreateDefaultLocator  ) 
 

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

virtual char* vtkContourFilter::GetInputScalarsSelection  )  [virtual]
 

If you want to contour by an arbitrary array, then set its name here. By default this in NULL and the filter will use the active scalar array.

virtual void vtkContourFilter::SelectInputScalars const char *  fieldName  )  [inline, virtual]
 

If you want to contour by an arbitrary array, then set its name here. By default this in NULL and the filter will use the active scalar array.

Definition at line 164 of file vtkContourFilter.h.

virtual void vtkContourFilter::ReportReferences vtkGarbageCollector  )  [protected, virtual]
 

Reimplemented from vtkSource.

virtual void vtkContourFilter::RemoveReferences  )  [protected, virtual]
 

Reimplemented from vtkSource.

void vtkContourFilter::Execute  )  [protected, virtual]
 

This method is the old style execute method

Reimplemented from vtkSource.

Reimplemented in vtkKitwareContourFilter.

virtual void vtkContourFilter::SetInputScalarsSelection const char *   )  [protected, virtual]
 


Member Data Documentation

vtkContourValues* vtkContourFilter::ContourValues [protected]
 

Definition at line 177 of file vtkContourFilter.h.

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

int vtkContourFilter::ComputeNormals [protected]
 

Definition at line 178 of file vtkContourFilter.h.

int vtkContourFilter::ComputeGradients [protected]
 

Definition at line 179 of file vtkContourFilter.h.

int vtkContourFilter::ComputeScalars [protected]
 

Definition at line 180 of file vtkContourFilter.h.

vtkPointLocator* vtkContourFilter::Locator [protected]
 

Definition at line 181 of file vtkContourFilter.h.

int vtkContourFilter::UseScalarTree [protected]
 

Definition at line 182 of file vtkContourFilter.h.

vtkScalarTree* vtkContourFilter::ScalarTree [protected]
 

Definition at line 183 of file vtkContourFilter.h.

char* vtkContourFilter::InputScalarsSelection [protected]
 

Definition at line 185 of file vtkContourFilter.h.


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