VTK
|
cut a vtkGenericDataSet with an implicit function or scalar data More...
#include <vtkGenericCutter.h>
Inherits vtkPolyDataAlgorithm.
Public Types | |
typedef vtkPolyDataAlgorithm | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkGenericCutter * | NewInstance () const |
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 vtkImplicitFunction * | GetCutFunction () |
virtual void | SetGenerateCutScalars (int) |
virtual int | GetGenerateCutScalars () |
virtual void | GenerateCutScalarsOn () |
virtual void | GenerateCutScalarsOff () |
void | SetLocator (vtkIncrementalPointLocator *locator) |
virtual vtkIncrementalPointLocator * | GetLocator () |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkGenericCutter * | SafeDownCast (vtkObjectBase *o) |
static vtkGenericCutter * | New () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkGenericCutter (vtkImplicitFunction *cf=NULL) | |
~vtkGenericCutter () | |
int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
int | FillInputPortInformation (int, vtkInformation *) |
Protected Attributes | |
vtkImplicitFunction * | CutFunction |
vtkIncrementalPointLocator * | Locator |
vtkContourValues * | ContourValues |
int | GenerateCutScalars |
vtkPointData * | InternalPD |
vtkPointData * | SecondaryPD |
vtkCellData * | SecondaryCD |
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.
Definition at line 61 of file vtkGenericCutter.h.
typedef vtkPolyDataAlgorithm vtkGenericCutter::Superclass |
Definition at line 64 of file vtkGenericCutter.h.
|
protected |
|
protected |
|
static |
|
virtual |
|
static |
|
protectedvirtual |
vtkGenericCutter* vtkGenericCutter::NewInstance | ( | ) | const |
void vtkGenericCutter::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) |
|
static |
Construct with user-specified implicit function; initial value of 0.0; and generating cut scalars turned off.
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 | ( | ) |
Override GetMTime because we delegate to vtkContourValues and refer to vtkImplicitFunction.
|
virtual |
Specify the implicit function to perform the cutting.
|
virtual |
Specify the implicit function to perform the cutting.
|
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 |
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 |
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 |
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 | ( | vtkIncrementalPointLocator * | locator | ) |
Specify a spatial locator for merging points. By default, an instance of vtkMergePoints is used.
|
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.
|
protected |
Actual implementation of the cutter operation.
|
protected |
Actual implementation of the cutter operation.
|
protected |
Definition at line 143 of file vtkGenericCutter.h.
|
protected |
Definition at line 144 of file vtkGenericCutter.h.
|
protected |
Definition at line 145 of file vtkGenericCutter.h.
|
protected |
Definition at line 146 of file vtkGenericCutter.h.
|
protected |
Definition at line 149 of file vtkGenericCutter.h.
|
protected |
Definition at line 150 of file vtkGenericCutter.h.
|
protected |
Definition at line 151 of file vtkGenericCutter.h.