#include <vtkBoxClipDataSet.h>
Clipping means that is actually 'cuts' through the cells of the dataset, returning tetrahedral cells inside of the box. The output of this filter is an unstructured grid.
This filter can be configured to compute a second output. The second output is the part of the cell that is clipped away. Set the GenerateClippedData boolean on if you wish to access this output data.
The vtkBoxClipDataSet will triangulate all types of 3D cells (i.e, create tetrahedra). This is necessary to preserve compatibility across face neighbors.
To use this filter,you can decide if you will be clipping with a box or a hexahedral box. 1) Set orientation if(SetOrientation(0)): box (parallel with coordinate axis) SetBoxClip(xmin,xmax,ymin,ymax,zmin,zmax) if(SetOrientation(1)): hexahedral box (Default) SetBoxClip(n[0],o[0],n[1],o[1],n[2],o[2],n[3],o[3],n[4],o[4],n[5],o[5]) PlaneNormal[] normal of each plane PlanePoint[] point on the plane 2) Apply the GenerateClipScalarsOn() 3) Execute clipping Update();
Definition at line 66 of file vtkBoxClipDataSet.h.
vtkBoxClipDataSet::vtkBoxClipDataSet | ( | ) | [protected] |
vtkBoxClipDataSet::~vtkBoxClipDataSet | ( | ) | [protected] |
virtual const char* vtkBoxClipDataSet::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkUnstructuredGridAlgorithm.
static int vtkBoxClipDataSet::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 vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkUnstructuredGridAlgorithm.
virtual int vtkBoxClipDataSet::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 vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkUnstructuredGridAlgorithm.
static vtkBoxClipDataSet* vtkBoxClipDataSet::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkUnstructuredGridAlgorithm.
void vtkBoxClipDataSet::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 vtkBoxClipDataSet* vtkBoxClipDataSet::New | ( | ) | [static] |
Constructor of the clipping box. The initial box is (0,1,0,1,0,1). The hexahedral box and the parallel box parameters are set to match this box.
Reimplemented from vtkUnstructuredGridAlgorithm.
void vtkBoxClipDataSet::SetBoxClip | ( | double | xmin, | |
double | xmax, | |||
double | ymin, | |||
double | ymax, | |||
double | zmin, | |||
double | zmax | |||
) |
Specify the Box with which to perform the clipping. If the box is not parallel to axis, you need to especify normal vector of each plane and a point on the plane.
void vtkBoxClipDataSet::SetBoxClip | ( | const double * | n0, | |
const double * | o0, | |||
const double * | n1, | |||
const double * | o1, | |||
const double * | n2, | |||
const double * | o2, | |||
const double * | n3, | |||
const double * | o3, | |||
const double * | n4, | |||
const double * | o4, | |||
const double * | n5, | |||
const double * | o5 | |||
) |
Specify the Box with which to perform the clipping. If the box is not parallel to axis, you need to especify normal vector of each plane and a point on the plane.
virtual void vtkBoxClipDataSet::SetGenerateClipScalars | ( | int | ) | [virtual] |
If this flag is enabled, then the output scalar values will be interpolated, and not the input scalar data.
virtual int vtkBoxClipDataSet::GetGenerateClipScalars | ( | ) | [virtual] |
If this flag is enabled, then the output scalar values will be interpolated, and not the input scalar data.
virtual void vtkBoxClipDataSet::GenerateClipScalarsOn | ( | ) | [virtual] |
If this flag is enabled, then the output scalar values will be interpolated, and not the input scalar data.
virtual void vtkBoxClipDataSet::GenerateClipScalarsOff | ( | ) | [virtual] |
If this flag is enabled, then the output scalar values will be interpolated, and not the input scalar data.
virtual void vtkBoxClipDataSet::SetGenerateClippedOutput | ( | int | ) | [virtual] |
Control whether a second output is generated. The second output contains the polygonal data that's been clipped away.
virtual int vtkBoxClipDataSet::GetGenerateClippedOutput | ( | ) | [virtual] |
Control whether a second output is generated. The second output contains the polygonal data that's been clipped away.
virtual void vtkBoxClipDataSet::GenerateClippedOutputOn | ( | ) | [virtual] |
Control whether a second output is generated. The second output contains the polygonal data that's been clipped away.
virtual void vtkBoxClipDataSet::GenerateClippedOutputOff | ( | ) | [virtual] |
Control whether a second output is generated. The second output contains the polygonal data that's been clipped away.
vtkUnstructuredGrid* vtkBoxClipDataSet::GetClippedOutput | ( | ) |
Set the tolerance for merging clip intersection points that are near the vertices of cells. This tolerance is used to prevent the generation of degenerate primitives. Note that only 3D cells actually use this instance variable. vtkSetClampMacro(MergeTolerance,double,0.0001,0.25); vtkGetMacro(MergeTolerance,double);
Return the Clipped output.
virtual int vtkBoxClipDataSet::GetNumberOfOutputs | ( | ) | [virtual] |
Set the tolerance for merging clip intersection points that are near the vertices of cells. This tolerance is used to prevent the generation of degenerate primitives. Note that only 3D cells actually use this instance variable. vtkSetClampMacro(MergeTolerance,double,0.0001,0.25); vtkGetMacro(MergeTolerance,double);
Return the Clipped output.
void vtkBoxClipDataSet::SetLocator | ( | vtkPointLocator * | locator | ) |
Specify a spatial locator for merging points. By default, an instance of vtkMergePoints is used.
virtual vtkPointLocator* vtkBoxClipDataSet::GetLocator | ( | ) | [virtual] |
Specify a spatial locator for merging points. By default, an instance of vtkMergePoints is used.
void vtkBoxClipDataSet::CreateDefaultLocator | ( | ) |
Create default locator. Used to create one when none is specified. The locator is used to merge coincident points.
unsigned long vtkBoxClipDataSet::GetMTime | ( | ) | [virtual] |
Return the mtime also considering the locator.
Reimplemented from vtkObject.
virtual unsigned int vtkBoxClipDataSet::GetOrientation | ( | ) | [virtual] |
Tells if clipping happens with a box parallel with coordinate axis (0) or with an hexahedral box (1). Initial value is 1.
virtual void vtkBoxClipDataSet::SetOrientation | ( | unsigned | int | ) | [virtual] |
Tells if clipping happens with a box parallel with coordinate axis (0) or with an hexahedral box (1). Initial value is 1.
static void vtkBoxClipDataSet::InterpolateEdge | ( | vtkDataSetAttributes * | attributes, | |
vtkIdType | toId, | |||
vtkIdType | fromId1, | |||
vtkIdType | fromId2, | |||
double | t | |||
) | [static] |
void vtkBoxClipDataSet::MinEdgeF | ( | const unsigned int * | id_v, | |
const vtkIdType * | cellIds, | |||
unsigned int * | edgF | |||
) |
void vtkBoxClipDataSet::PyramidToTetra | ( | const vtkIdType * | pyramId, | |
const vtkIdType * | cellIds, | |||
vtkCellArray * | newCellArray | |||
) |
void vtkBoxClipDataSet::WedgeToTetra | ( | const vtkIdType * | wedgeId, | |
const vtkIdType * | cellIds, | |||
vtkCellArray * | newCellArray | |||
) |
void vtkBoxClipDataSet::CellGrid | ( | vtkIdType | typeobj, | |
vtkIdType | npts, | |||
const vtkIdType * | cellIds, | |||
vtkCellArray * | newCellArray | |||
) |
void vtkBoxClipDataSet::CreateTetra | ( | vtkIdType | npts, | |
const vtkIdType * | cellIds, | |||
vtkCellArray * | newCellArray | |||
) |
void vtkBoxClipDataSet::ClipBox | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray * | tets, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData * | outCD | |||
) |
void vtkBoxClipDataSet::ClipHexahedron | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray * | tets, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData * | outCD | |||
) |
void vtkBoxClipDataSet::ClipBoxInOut | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray ** | tets, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData ** | outCD | |||
) |
void vtkBoxClipDataSet::ClipHexahedronInOut | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray ** | tets, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData ** | outCD | |||
) |
void vtkBoxClipDataSet::ClipBox2D | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray * | tets, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData * | outCD | |||
) |
void vtkBoxClipDataSet::ClipBoxInOut2D | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray ** | tets, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData ** | outCD | |||
) |
void vtkBoxClipDataSet::ClipHexahedron2D | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray * | tets, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData * | outCD | |||
) |
void vtkBoxClipDataSet::ClipHexahedronInOut2D | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray ** | tets, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData ** | outCD | |||
) |
void vtkBoxClipDataSet::ClipBox1D | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray * | lines, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData * | outCD | |||
) |
void vtkBoxClipDataSet::ClipBoxInOut1D | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray ** | lines, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData ** | outCD | |||
) |
void vtkBoxClipDataSet::ClipHexahedron1D | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray * | lines, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData * | outCD | |||
) |
void vtkBoxClipDataSet::ClipHexahedronInOut1D | ( | vtkPoints * | newPoints, | |
vtkGenericCell * | cell, | |||
vtkPointLocator * | locator, | |||
vtkCellArray ** | lines, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData ** | outCD | |||
) |
void vtkBoxClipDataSet::ClipBox0D | ( | vtkGenericCell * | cell, | |
vtkPointLocator * | locator, | |||
vtkCellArray * | verts, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData * | outCD | |||
) |
void vtkBoxClipDataSet::ClipBoxInOut0D | ( | vtkGenericCell * | cell, | |
vtkPointLocator * | locator, | |||
vtkCellArray ** | verts, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData ** | outCD | |||
) |
void vtkBoxClipDataSet::ClipHexahedron0D | ( | vtkGenericCell * | cell, | |
vtkPointLocator * | locator, | |||
vtkCellArray * | verts, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData * | outCD | |||
) |
void vtkBoxClipDataSet::ClipHexahedronInOut0D | ( | vtkGenericCell * | cell, | |
vtkPointLocator * | locator, | |||
vtkCellArray ** | verts, | |||
vtkPointData * | inPD, | |||
vtkPointData * | outPD, | |||
vtkCellData * | inCD, | |||
vtkIdType | cellId, | |||
vtkCellData ** | outCD | |||
) |
virtual int vtkBoxClipDataSet::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 vtkBoxClipDataSet::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.
vtkPointLocator* vtkBoxClipDataSet::Locator [protected] |
Definition at line 241 of file vtkBoxClipDataSet.h.
int vtkBoxClipDataSet::GenerateClipScalars [protected] |
Definition at line 242 of file vtkBoxClipDataSet.h.
int vtkBoxClipDataSet::GenerateClippedOutput [protected] |
Definition at line 244 of file vtkBoxClipDataSet.h.
double vtkBoxClipDataSet::BoundBoxClip[3][2] [protected] |
Definition at line 248 of file vtkBoxClipDataSet.h.
unsigned int vtkBoxClipDataSet::Orientation [protected] |
Definition at line 249 of file vtkBoxClipDataSet.h.
double vtkBoxClipDataSet::PlaneNormal[6][3] [protected] |
Definition at line 250 of file vtkBoxClipDataSet.h.
double vtkBoxClipDataSet::PlanePoint[6][3] [protected] |
Definition at line 251 of file vtkBoxClipDataSet.h.