VTK
|
clip an unstructured grid More...
#include <vtkBoxClipDataSet.h>
Inherits vtkUnstructuredGridAlgorithm.
Public Types | |
typedef vtkUnstructuredGridAlgorithm | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkBoxClipDataSet * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | CreateDefaultLocator () |
unsigned long | GetMTime () |
void | MinEdgeF (const unsigned int *id_v, const vtkIdType *cellIds, unsigned int *edgF) |
void | PyramidToTetra (const vtkIdType *pyramId, const vtkIdType *cellIds, vtkCellArray *newCellArray) |
void | WedgeToTetra (const vtkIdType *wedgeId, const vtkIdType *cellIds, vtkCellArray *newCellArray) |
void | CellGrid (vtkIdType typeobj, vtkIdType npts, const vtkIdType *cellIds, vtkCellArray *newCellArray) |
void | CreateTetra (vtkIdType npts, const vtkIdType *cellIds, vtkCellArray *newCellArray) |
void | ClipBox (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray *tets, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData *outCD) |
void | ClipHexahedron (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray *tets, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData *outCD) |
void | ClipBoxInOut (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray **tets, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData **outCD) |
void | ClipHexahedronInOut (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray **tets, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData **outCD) |
void | ClipBox2D (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray *tets, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData *outCD) |
void | ClipBoxInOut2D (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray **tets, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData **outCD) |
void | ClipHexahedron2D (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray *tets, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData *outCD) |
void | ClipHexahedronInOut2D (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray **tets, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData **outCD) |
void | ClipBox1D (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray *lines, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData *outCD) |
void | ClipBoxInOut1D (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray **lines, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData **outCD) |
void | ClipHexahedron1D (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray *lines, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData *outCD) |
void | ClipHexahedronInOut1D (vtkPoints *newPoints, vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray **lines, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData **outCD) |
void | ClipBox0D (vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray *verts, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData *outCD) |
void | ClipBoxInOut0D (vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray **verts, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData **outCD) |
void | ClipHexahedron0D (vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray *verts, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData *outCD) |
void | ClipHexahedronInOut0D (vtkGenericCell *cell, vtkIncrementalPointLocator *locator, vtkCellArray **verts, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData **outCD) |
void | SetBoxClip (double xmin, double xmax, double ymin, double ymax, double zmin, double zmax) |
void | 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) |
virtual void | SetGenerateClipScalars (int) |
virtual int | GetGenerateClipScalars () |
virtual void | GenerateClipScalarsOn () |
virtual void | GenerateClipScalarsOff () |
virtual void | SetGenerateClippedOutput (int) |
virtual int | GetGenerateClippedOutput () |
virtual void | GenerateClippedOutputOn () |
virtual void | GenerateClippedOutputOff () |
vtkUnstructuredGrid * | GetClippedOutput () |
virtual int | GetNumberOfOutputs () |
void | SetLocator (vtkIncrementalPointLocator *locator) |
virtual vtkIncrementalPointLocator * | GetLocator () |
virtual unsigned int | GetOrientation () |
virtual void | SetOrientation (unsigned int) |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkBoxClipDataSet * | SafeDownCast (vtkObjectBase *o) |
static vtkBoxClipDataSet * | New () |
static void | InterpolateEdge (vtkDataSetAttributes *attributes, vtkIdType toId, vtkIdType fromId1, vtkIdType fromId2, double t) |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkBoxClipDataSet () | |
~vtkBoxClipDataSet () | |
virtual int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
virtual int | FillInputPortInformation (int port, vtkInformation *info) |
Protected Attributes | |
vtkIncrementalPointLocator * | Locator |
int | GenerateClipScalars |
int | GenerateClippedOutput |
double | BoundBoxClip [3][2] |
unsigned int | Orientation |
double | PlaneNormal [6][3] |
double | PlanePoint [6][3] |
clip an unstructured grid
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 67 of file vtkBoxClipDataSet.h.
typedef vtkUnstructuredGridAlgorithm vtkBoxClipDataSet::Superclass |
Definition at line 70 of file vtkBoxClipDataSet.h.
|
protected |
|
protected |
|
static |
|
virtual |
|
static |
|
protectedvirtual |
vtkBoxClipDataSet* vtkBoxClipDataSet::NewInstance | ( | ) | const |
void vtkBoxClipDataSet::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) |
|
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.
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 |
If this flag is enabled, then the output scalar values will be interpolated, and not the input scalar data.
|
virtual |
If this flag is enabled, then the output scalar values will be interpolated, and not the input scalar data.
|
virtual |
If this flag is enabled, then the output scalar values will be interpolated, and not the input scalar data.
|
virtual |
If this flag is enabled, then the output scalar values will be interpolated, and not the input scalar data.
|
virtual |
Control whether a second output is generated. The second output contains the polygonal data that's been clipped away.
|
virtual |
Control whether a second output is generated. The second output contains the polygonal data that's been clipped away.
|
virtual |
Control whether a second output is generated. The second output contains the polygonal data that's been clipped away.
|
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 |
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 | ( | 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 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 | ( | ) |
Return the mtime also considering the locator.
|
virtual |
Tells if clipping happens with a box parallel with coordinate axis (0) or with an hexahedral box (1). Initial value is 1.
|
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::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, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray * | tets, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData * | outCD | ||
) |
void vtkBoxClipDataSet::ClipHexahedron | ( | vtkPoints * | newPoints, |
vtkGenericCell * | cell, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray * | tets, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData * | outCD | ||
) |
void vtkBoxClipDataSet::ClipBoxInOut | ( | vtkPoints * | newPoints, |
vtkGenericCell * | cell, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray ** | tets, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData ** | outCD | ||
) |
void vtkBoxClipDataSet::ClipHexahedronInOut | ( | vtkPoints * | newPoints, |
vtkGenericCell * | cell, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray ** | tets, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData ** | outCD | ||
) |
void vtkBoxClipDataSet::ClipBox2D | ( | vtkPoints * | newPoints, |
vtkGenericCell * | cell, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray * | tets, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData * | outCD | ||
) |
void vtkBoxClipDataSet::ClipBoxInOut2D | ( | vtkPoints * | newPoints, |
vtkGenericCell * | cell, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray ** | tets, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData ** | outCD | ||
) |
void vtkBoxClipDataSet::ClipHexahedron2D | ( | vtkPoints * | newPoints, |
vtkGenericCell * | cell, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray * | tets, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData * | outCD | ||
) |
void vtkBoxClipDataSet::ClipHexahedronInOut2D | ( | vtkPoints * | newPoints, |
vtkGenericCell * | cell, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray ** | tets, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData ** | outCD | ||
) |
void vtkBoxClipDataSet::ClipBox1D | ( | vtkPoints * | newPoints, |
vtkGenericCell * | cell, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray * | lines, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData * | outCD | ||
) |
void vtkBoxClipDataSet::ClipBoxInOut1D | ( | vtkPoints * | newPoints, |
vtkGenericCell * | cell, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray ** | lines, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData ** | outCD | ||
) |
void vtkBoxClipDataSet::ClipHexahedron1D | ( | vtkPoints * | newPoints, |
vtkGenericCell * | cell, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray * | lines, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData * | outCD | ||
) |
void vtkBoxClipDataSet::ClipHexahedronInOut1D | ( | vtkPoints * | newPoints, |
vtkGenericCell * | cell, | ||
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray ** | lines, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData ** | outCD | ||
) |
void vtkBoxClipDataSet::ClipBox0D | ( | vtkGenericCell * | cell, |
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray * | verts, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData * | outCD | ||
) |
void vtkBoxClipDataSet::ClipBoxInOut0D | ( | vtkGenericCell * | cell, |
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray ** | verts, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData ** | outCD | ||
) |
void vtkBoxClipDataSet::ClipHexahedron0D | ( | vtkGenericCell * | cell, |
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray * | verts, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData * | outCD | ||
) |
void vtkBoxClipDataSet::ClipHexahedronInOut0D | ( | vtkGenericCell * | cell, |
vtkIncrementalPointLocator * | locator, | ||
vtkCellArray ** | verts, | ||
vtkPointData * | inPD, | ||
vtkPointData * | outPD, | ||
vtkCellData * | inCD, | ||
vtkIdType | cellId, | ||
vtkCellData ** | outCD | ||
) |
|
protectedvirtual |
|
protectedvirtual |
|
protected |
Definition at line 242 of file vtkBoxClipDataSet.h.
|
protected |
Definition at line 243 of file vtkBoxClipDataSet.h.
|
protected |
Definition at line 245 of file vtkBoxClipDataSet.h.
|
protected |
Definition at line 249 of file vtkBoxClipDataSet.h.
|
protected |
Definition at line 250 of file vtkBoxClipDataSet.h.
|
protected |
Definition at line 251 of file vtkBoxClipDataSet.h.
|
protected |
Definition at line 252 of file vtkBoxClipDataSet.h.