VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkContourGrid Class Reference

generate isosurfaces/isolines from scalar values (specialized for unstructured grids) More...

#include <vtkContourGrid.h>

Inheritance diagram for vtkContourGrid:
Inheritance graph
[legend]
Collaboration diagram for vtkContourGrid:
Collaboration graph
[legend]

List of all members.

Public Types

typedef vtkPolyDataAlgorithm Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkContourGridNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
unsigned long GetMTime ()
void CreateDefaultLocator ()
void SetValue (int i, double value)
double GetValue (int i)
doubleGetValues ()
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 ()
void SetLocator (vtkIncrementalPointLocator *locator)
virtual
vtkIncrementalPointLocator
GetLocator ()
virtual void SetGenerateTriangles (int)
virtual int GetGenerateTriangles ()
virtual void GenerateTrianglesOn ()
virtual void GenerateTrianglesOff ()
void SetOutputPointsPrecision (int precision)
int GetOutputPointsPrecision () const

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkContourGridSafeDownCast (vtkObjectBase *o)
static vtkContourGridNew ()

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkContourGrid ()
 ~vtkContourGrid ()
virtual int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int FillInputPortInformation (int port, vtkInformation *info)

Protected Attributes

vtkContourValuesContourValues
int ComputeNormals
int ComputeGradients
int ComputeScalars
int GenerateTriangles
vtkIncrementalPointLocatorLocator
int UseScalarTree
int OutputPointsPrecision
vtkScalarTreeScalarTree
vtkEdgeTableEdgeTable

Detailed Description

generate isosurfaces/isolines from scalar values (specialized for unstructured grids)

vtkContourGrid is a filter that takes as input datasets of type vtkUnstructuredGrid 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().

Warning:
For unstructured data or structured grids, normals and gradients are not computed. Use vtkPolyDataNormals to compute the surface normals of the resulting isosurface.
See also:
vtkMarchingContourFilter vtkMarchingCubes vtkSliceCubes vtkDividingCubes vtkMarchingSquares vtkImageMarchingCubes
Tests:
vtkContourGrid (Tests)

Definition at line 63 of file vtkContourGrid.h.


Member Typedef Documentation

Reimplemented from vtkPolyDataAlgorithm.

Reimplemented in vtkSMPContourGridManyPieces, and vtkSMPContourGrid.

Definition at line 66 of file vtkContourGrid.h.


Constructor & Destructor Documentation


Member Function Documentation

static int vtkContourGrid::IsTypeOf ( const char *  name) [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 vtkPolyDataAlgorithm.

Reimplemented in vtkSMPContourGridManyPieces, and vtkSMPContourGrid.

virtual int vtkContourGrid::IsA ( const char *  name) [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 vtkPolyDataAlgorithm.

Reimplemented in vtkSMPContourGridManyPieces, and vtkSMPContourGrid.

Reimplemented from vtkPolyDataAlgorithm.

Reimplemented in vtkSMPContourGridManyPieces, and vtkSMPContourGrid.

virtual vtkObjectBase* vtkContourGrid::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkPolyDataAlgorithm.

Reimplemented in vtkSMPContourGridManyPieces, and vtkSMPContourGrid.

Reimplemented from vtkPolyDataAlgorithm.

Reimplemented in vtkSMPContourGridManyPieces, and vtkSMPContourGrid.

void vtkContourGrid::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 vtkPolyDataAlgorithm.

Reimplemented in vtkSMPContourGridManyPieces, and vtkSMPContourGrid.

static vtkContourGrid* vtkContourGrid::New ( ) [static]

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

Reimplemented from vtkPolyDataAlgorithm.

Reimplemented in vtkSMPContourGridManyPieces, and vtkSMPContourGrid.

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

Methods to set / get contour values.

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

Definition at line 183 of file vtkContourGrid.h.

Get the ith contour value.

Definition at line 189 of file vtkContourGrid.h.

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

Definition at line 196 of file vtkContourGrid.h.

void vtkContourGrid::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 204 of file vtkContourGrid.h.

void vtkContourGrid::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 212 of file vtkContourGrid.h.

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

Definition at line 218 of file vtkContourGrid.h.

void vtkContourGrid::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 225 of file vtkContourGrid.h.

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

unsigned long vtkContourGrid::GetMTime ( ) [virtual]

Modified GetMTime Because we delegate to vtkContourValues

Reimplemented from vtkObject.

virtual void vtkContourGrid::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 vtkContourGrid::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 vtkContourGrid::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 vtkContourGrid::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 vtkContourGrid::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.

Deprecated:
ComputeGradients is not used so these methods don't affect anything (VTK 6.0).

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.

Deprecated:
ComputeGradients is not used so these methods don't affect anything (VTK 6.0).
virtual void vtkContourGrid::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.

Deprecated:
ComputeGradients is not used so these methods don't affect anything (VTK 6.0).
virtual void vtkContourGrid::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.

Deprecated:
ComputeGradients is not used so these methods don't affect anything (VTK 6.0).
virtual void vtkContourGrid::SetComputeScalars ( int  ) [virtual]

Set/Get the computation of scalars.

virtual int vtkContourGrid::GetComputeScalars ( ) [virtual]

Set/Get the computation of scalars.

virtual void vtkContourGrid::ComputeScalarsOn ( ) [virtual]

Set/Get the computation of scalars.

virtual void vtkContourGrid::ComputeScalarsOff ( ) [virtual]

Set/Get the computation of scalars.

virtual void vtkContourGrid::SetUseScalarTree ( int  ) [virtual]

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

virtual int vtkContourGrid::GetUseScalarTree ( ) [virtual]

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

virtual void vtkContourGrid::UseScalarTreeOn ( ) [virtual]

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

virtual void vtkContourGrid::UseScalarTreeOff ( ) [virtual]

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

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

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

virtual void vtkContourGrid::SetGenerateTriangles ( int  ) [virtual]

If this is enabled (by default), the output will be triangles otherwise, the output will be the intersection polygons WARNING: if the cutting function is not a plane, the output will be 3D poygons, which might be nice to look at but hard to compute with downstream.

If this is enabled (by default), the output will be triangles otherwise, the output will be the intersection polygons WARNING: if the cutting function is not a plane, the output will be 3D poygons, which might be nice to look at but hard to compute with downstream.

virtual void vtkContourGrid::GenerateTrianglesOn ( ) [virtual]

If this is enabled (by default), the output will be triangles otherwise, the output will be the intersection polygons WARNING: if the cutting function is not a plane, the output will be 3D poygons, which might be nice to look at but hard to compute with downstream.

virtual void vtkContourGrid::GenerateTrianglesOff ( ) [virtual]

If this is enabled (by default), the output will be triangles otherwise, the output will be the intersection polygons WARNING: if the cutting function is not a plane, the output will be 3D poygons, which might be nice to look at but hard to compute with downstream.

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

Set/get the desired precision for the output types. See the documentation for the vtkAlgorithm::DesiredOutputPrecision enum for an explaination of the available precision settings.

Set/get the desired precision for the output types. See the documentation for the vtkAlgorithm::DesiredOutputPrecision enum for an explaination of the available precision settings.

virtual int vtkContourGrid::RequestData ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

This is called by the superclass. This is the method you should override.

Reimplemented from vtkPolyDataAlgorithm.

Reimplemented in vtkSMPContourGrid, and vtkSMPContourGridManyPieces.

virtual int vtkContourGrid::FillInputPortInformation ( int  port,
vtkInformation info 
) [protected, virtual]

Fill the input port information objects for this algorithm. This is invoked by the first call to GetInputPortInformation for each port so subclasses can specify what they can handle.

Reimplemented from vtkPolyDataAlgorithm.


Member Data Documentation

Definition at line 163 of file vtkContourGrid.h.

Definition at line 164 of file vtkContourGrid.h.

Definition at line 165 of file vtkContourGrid.h.

Definition at line 166 of file vtkContourGrid.h.

Definition at line 167 of file vtkContourGrid.h.

Definition at line 169 of file vtkContourGrid.h.

Definition at line 170 of file vtkContourGrid.h.

Definition at line 171 of file vtkContourGrid.h.

Definition at line 172 of file vtkContourGrid.h.

Definition at line 173 of file vtkContourGrid.h.


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