#include <vtkRectilinearGridToTetrahedra.h>
vtkRectilinearGridToTetrahedra forms a mesh of Tetrahedra from a vtkRectilinearGrid. The tetrahedra can be 5 per cell, 6 per cell, or a mixture of 5 or 12 per cell. The resulting mesh is consistent, meaning that there are no edge crossings and that each tetrahedron face is shared by two tetrahedra, except those tetrahedra on the boundary. All tetrahedra are right handed.
Note that 12 tetrahedra per cell means adding a point in the center of the cell.
In order to subdivide some cells into 5 and some cells into 12 tetrahedra: SetTetraPerCellTo5And12(); Set the Scalars of the Input RectilinearGrid to be 5 or 12 depending on what you want per cell of the RectilinearGrid.
If you set RememberVoxelId, the scalars of the tetrahedron will be set to the Id of the Cell in the RectilinearGrid from which the tetrahedron came.
Definition at line 64 of file vtkRectilinearGridToTetrahedra.h.
Public Types | |
typedef vtkUnstructuredGridAlgorithm | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | SetTetraPerCellTo5 () |
void | SetTetraPerCellTo6 () |
void | SetTetraPerCellTo12 () |
void | SetTetraPerCellTo5And12 () |
virtual void | SetTetraPerCell (int) |
virtual int | GetTetraPerCell () |
virtual void | SetRememberVoxelId (int) |
virtual int | GetRememberVoxelId () |
virtual void | RememberVoxelIdOn () |
virtual void | RememberVoxelIdOff () |
void | SetInput (const double Extent[3], const double Spacing[3], const double tol=0.001) |
void | SetInput (const double ExtentX, const double ExtentY, const double ExtentZ, const double SpacingX, const double SpacingY, const double SpacingZ, const double tol=0.001) |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkRectilinearGridToTetrahedra * | SafeDownCast (vtkObject *o) |
static vtkRectilinearGridToTetrahedra * | New () |
Protected Member Functions | |
vtkRectilinearGridToTetrahedra () | |
~vtkRectilinearGridToTetrahedra () | |
int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
virtual int | FillInputPortInformation (int, vtkInformation *) |
Protected Attributes | |
int | RememberVoxelId |
int | TetraPerCell |
Reimplemented from vtkUnstructuredGridAlgorithm.
Definition at line 67 of file vtkRectilinearGridToTetrahedra.h.
vtkRectilinearGridToTetrahedra::vtkRectilinearGridToTetrahedra | ( | ) | [protected] |
vtkRectilinearGridToTetrahedra::~vtkRectilinearGridToTetrahedra | ( | ) | [inline, protected] |
Definition at line 113 of file vtkRectilinearGridToTetrahedra.h.
virtual const char* vtkRectilinearGridToTetrahedra::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkUnstructuredGridAlgorithm.
static int vtkRectilinearGridToTetrahedra::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 vtkUnstructuredGridAlgorithm.
virtual int vtkRectilinearGridToTetrahedra::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 vtkUnstructuredGridAlgorithm.
static vtkRectilinearGridToTetrahedra* vtkRectilinearGridToTetrahedra::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkUnstructuredGridAlgorithm.
void vtkRectilinearGridToTetrahedra::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 vtkUnstructuredGridAlgorithm.
static vtkRectilinearGridToTetrahedra* vtkRectilinearGridToTetrahedra::New | ( | ) | [static] |
Form 5 Tetrahedra per cube. Do not RememberVoxelId.
Reimplemented from vtkUnstructuredGridAlgorithm.
void vtkRectilinearGridToTetrahedra::SetTetraPerCellTo5 | ( | ) | [inline] |
Set the method to divide each cell (voxel) in the RectilinearGrid into tetrahedra.
Definition at line 76 of file vtkRectilinearGridToTetrahedra.h.
void vtkRectilinearGridToTetrahedra::SetTetraPerCellTo6 | ( | ) | [inline] |
Set the method to divide each cell (voxel) in the RectilinearGrid into tetrahedra.
Definition at line 77 of file vtkRectilinearGridToTetrahedra.h.
void vtkRectilinearGridToTetrahedra::SetTetraPerCellTo12 | ( | ) | [inline] |
Set the method to divide each cell (voxel) in the RectilinearGrid into tetrahedra.
Definition at line 78 of file vtkRectilinearGridToTetrahedra.h.
void vtkRectilinearGridToTetrahedra::SetTetraPerCellTo5And12 | ( | ) | [inline] |
Set the method to divide each cell (voxel) in the RectilinearGrid into tetrahedra.
Definition at line 79 of file vtkRectilinearGridToTetrahedra.h.
virtual void vtkRectilinearGridToTetrahedra::SetTetraPerCell | ( | int | ) | [virtual] |
Set the method to divide each cell (voxel) in the RectilinearGrid into tetrahedra.
virtual int vtkRectilinearGridToTetrahedra::GetTetraPerCell | ( | ) | [virtual] |
Set the method to divide each cell (voxel) in the RectilinearGrid into tetrahedra.
virtual void vtkRectilinearGridToTetrahedra::SetRememberVoxelId | ( | int | ) | [virtual] |
Should the tetrahedra have scalar data indicating which Voxel they came from in the vtkRectilinearGrid?
virtual int vtkRectilinearGridToTetrahedra::GetRememberVoxelId | ( | ) | [virtual] |
Should the tetrahedra have scalar data indicating which Voxel they came from in the vtkRectilinearGrid?
virtual void vtkRectilinearGridToTetrahedra::RememberVoxelIdOn | ( | ) | [virtual] |
Should the tetrahedra have scalar data indicating which Voxel they came from in the vtkRectilinearGrid?
virtual void vtkRectilinearGridToTetrahedra::RememberVoxelIdOff | ( | ) | [virtual] |
Should the tetrahedra have scalar data indicating which Voxel they came from in the vtkRectilinearGrid?
void vtkRectilinearGridToTetrahedra::SetInput | ( | const double | Extent[3], | |
const double | Spacing[3], | |||
const double | tol = 0.001 | |||
) |
This function for convenience for creating a Rectilinear Grid If Spacing does not fit evenly into extent, the last cell will have a different width (or height or depth). If Extent[i]/Spacing[i] is within tol of an integer, then assume the programmer meant an integer for direction i.
void vtkRectilinearGridToTetrahedra::SetInput | ( | const double | ExtentX, | |
const double | ExtentY, | |||
const double | ExtentZ, | |||
const double | SpacingX, | |||
const double | SpacingY, | |||
const double | SpacingZ, | |||
const double | tol = 0.001 | |||
) |
This function for convenience for creating a Rectilinear Grid If Spacing does not fit evenly into extent, the last cell will have a different width (or height or depth). If Extent[i]/Spacing[i] is within tol of an integer, then assume the programmer meant an integer for direction i.
int vtkRectilinearGridToTetrahedra::RequestData | ( | vtkInformation * | request, | |
vtkInformationVector ** | inputVector, | |||
vtkInformationVector * | outputVector | |||
) | [protected, virtual] |
This is called by the superclass. This is the method you should override.
Reimplemented from vtkUnstructuredGridAlgorithm.
virtual int vtkRectilinearGridToTetrahedra::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 vtkUnstructuredGridAlgorithm.
int vtkRectilinearGridToTetrahedra::RememberVoxelId [protected] |
Definition at line 117 of file vtkRectilinearGridToTetrahedra.h.
int vtkRectilinearGridToTetrahedra::TetraPerCell [protected] |
Definition at line 118 of file vtkRectilinearGridToTetrahedra.h.