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

vtkGenericCutter Class Reference

#include <vtkGenericCutter.h>

Inheritance diagram for vtkGenericCutter:

Inheritance graph
[legend]
Collaboration diagram for vtkGenericCutter:

Collaboration graph
[legend]
List of all members.

Detailed Description

cut a vtkGenericDataSet with an implicit function or scalar data

vtkGenericCutter is a filter to cut through data using any subclass of vtkImplicitFunction. That is, a polygonal surface is created corresponding to the implicit function F(x,y,z) = value(s), where you can specify one or more values used to cut with.

In VTK, cutting means reducing a cell of dimension N to a cut surface of dimension N-1. For example, a tetrahedron when cut by a plane (i.e., vtkPlane implicit function) will generate triangles. (In comparison, clipping takes a N dimensional cell and creates N dimension primitives.)

vtkGenericCutter is generally used to "slice-through" a dataset, generating a surface that can be visualized. It is also possible to use vtkGenericCutter to do a form of volume rendering. vtkGenericCutter does this by generating multiple cut surfaces (usually planes) which are ordered (and rendered) from back-to-front. The surfaces are set translucent to give a volumetric rendering effect.

This filter has been implemented to operate on generic datasets, rather than the typical vtkDataSet (and subclasses). vtkGenericDataSet is a more complex cousin of vtkDataSet, typically consisting of nonlinear, higher-order cells. To process this type of data, generic cells are automatically tessellated into linear cells prior to isocontouring.

See also:
vtkCutter vtkImplicitFunction vtkClipPolyData vtkGenericDataSet
Created by:
  • Bertel, Francois
CVS contributions (if > 5%):
  • Bertel, Francois (96%)
CVS logs (CVSweb):
  • .h (/GenericFiltering/vtkGenericCutter.h)
  • .cxx (/GenericFiltering/vtkGenericCutter.cxx)
Tests:
vtkGenericCutter (Tests)

Definition at line 68 of file vtkGenericCutter.h.

Public Types

typedef vtkGenericDataSetToPolyDataFilter 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)
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)
unsigned long GetMTime ()
void CreateDefaultLocator ()
virtual void SetCutFunction (vtkImplicitFunction *)
virtual vtkImplicitFunctionGetCutFunction ()
virtual void SetGenerateCutScalars (int)
virtual int GetGenerateCutScalars ()
virtual void GenerateCutScalarsOn ()
virtual void GenerateCutScalarsOff ()
void SetLocator (vtkPointLocator *locator)
virtual vtkPointLocatorGetLocator ()

Static Public Member Functions

int IsTypeOf (const char *type)
vtkGenericCutterSafeDownCast (vtkObject *o)
vtkGenericCutterNew ()

Protected Member Functions

 vtkGenericCutter (vtkImplicitFunction *cf=NULL)
 ~vtkGenericCutter ()
void Execute ()
void UnstructuredGridCutter ()

Protected Attributes

vtkImplicitFunctionCutFunction
vtkPointLocatorLocator
vtkContourValuesContourValues
int GenerateCutScalars


Member Typedef Documentation

typedef vtkGenericDataSetToPolyDataFilter vtkGenericCutter::Superclass
 

Reimplemented from vtkGenericDataSetToPolyDataFilter.

Definition at line 71 of file vtkGenericCutter.h.


Constructor & Destructor Documentation

vtkGenericCutter::vtkGenericCutter vtkImplicitFunction cf = NULL  )  [protected]
 

vtkGenericCutter::~vtkGenericCutter  )  [protected]
 


Member Function Documentation

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

Reimplemented from vtkGenericDataSetToPolyDataFilter.

int vtkGenericCutter::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 vtkGenericDataSetToPolyDataFilter.

virtual int vtkGenericCutter::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 vtkGenericDataSetToPolyDataFilter.

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

Reimplemented from vtkGenericDataSetToPolyDataFilter.

void vtkGenericCutter::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 vtkGenericDataSetToPolyDataFilter.

vtkGenericCutter* vtkGenericCutter::New  )  [static]
 

Construct with user-specified implicit function; initial value of 0.0; and generating cut scalars turned off.

Reimplemented from vtkAlgorithm.

void vtkGenericCutter::SetValue int  i,
double  value
 

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

double vtkGenericCutter::GetValue int  i  ) 
 

Get the ith contour value.

double* vtkGenericCutter::GetValues  ) 
 

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

void vtkGenericCutter::GetValues double *  contourValues  ) 
 

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.

void vtkGenericCutter::SetNumberOfContours int  number  ) 
 

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.

int vtkGenericCutter::GetNumberOfContours  ) 
 

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

void vtkGenericCutter::GenerateValues int  numContours,
double  range[2]
 

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

void vtkGenericCutter::GenerateValues int  numContours,
double  rangeStart,
double  rangeEnd
 

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

unsigned long vtkGenericCutter::GetMTime  )  [virtual]
 

Override GetMTime because we delegate to vtkContourValues and refer to vtkImplicitFunction.

Reimplemented from vtkObject.

virtual void vtkGenericCutter::SetCutFunction vtkImplicitFunction  )  [virtual]
 

Specify the implicit function to perform the cutting.

virtual vtkImplicitFunction* vtkGenericCutter::GetCutFunction  )  [virtual]
 

Specify the implicit function to perform the cutting.

virtual void vtkGenericCutter::SetGenerateCutScalars int   )  [virtual]
 

If this flag is enabled, then the output scalar values will be interpolated from the implicit function values, and not the input scalar data.

virtual int vtkGenericCutter::GetGenerateCutScalars  )  [virtual]
 

If this flag is enabled, then the output scalar values will be interpolated from the implicit function values, and not the input scalar data.

virtual void vtkGenericCutter::GenerateCutScalarsOn  )  [virtual]
 

If this flag is enabled, then the output scalar values will be interpolated from the implicit function values, and not the input scalar data.

virtual void vtkGenericCutter::GenerateCutScalarsOff  )  [virtual]
 

If this flag is enabled, then the output scalar values will be interpolated from the implicit function values, and not the input scalar data.

void vtkGenericCutter::SetLocator vtkPointLocator locator  ) 
 

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

virtual vtkPointLocator* vtkGenericCutter::GetLocator  )  [virtual]
 

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

void vtkGenericCutter::CreateDefaultLocator  ) 
 

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

void vtkGenericCutter::Execute  )  [protected, virtual]
 

This method is the old style execute method

Reimplemented from vtkSource.

void vtkGenericCutter::UnstructuredGridCutter  )  [protected]
 

Actual implementation of the cutter operation.


Member Data Documentation

vtkImplicitFunction* vtkGenericCutter::CutFunction [protected]
 

Definition at line 149 of file vtkGenericCutter.h.

vtkPointLocator* vtkGenericCutter::Locator [protected]
 

Definition at line 150 of file vtkGenericCutter.h.

vtkContourValues* vtkGenericCutter::ContourValues [protected]
 

Definition at line 151 of file vtkGenericCutter.h.

int vtkGenericCutter::GenerateCutScalars [protected]
 

Definition at line 152 of file vtkGenericCutter.h.


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