VTK
|
#include <vtkBooleanOperationPolyDataFilter.h>
Inherits vtkPolyDataAlgorithm.
Public Types | |
enum | OperationType { VTK_UNION =0, VTK_INTERSECTION, VTK_DIFFERENCE } |
typedef vtkPolyDataAlgorithm | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkBooleanOperationPolyDataFilter * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
virtual void | SetOperation (int) |
virtual int | GetOperation () |
void | SetOperationToUnion () |
void | SetOperationToIntersection () |
void | SetOperationToDifference () |
virtual void | SetReorientDifferenceCells (int) |
virtual int | GetReorientDifferenceCells () |
virtual void | ReorientDifferenceCellsOn () |
virtual void | ReorientDifferenceCellsOff () |
virtual void | SetTolerance (double) |
virtual double | GetTolerance () |
Static Public Member Functions | |
static vtkBooleanOperationPolyDataFilter * | New () |
static int | IsTypeOf (const char *type) |
static vtkBooleanOperationPolyDataFilter * | SafeDownCast (vtkObjectBase *o) |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkBooleanOperationPolyDataFilter () | |
~vtkBooleanOperationPolyDataFilter () | |
int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
int | FillInputPortInformation (int, vtkInformation *) |
void | SortPolyData (vtkPolyData *input, vtkIdList *intersectionList, vtkIdList *unionList) |
Computes the boundary of the union, intersection, or difference volume computed from the volumes defined by two input surfaces. The two surfaces do not need to be manifold, but if they are not, unexpected results may be obtained. The resulting surface is available in the first output of the filter. The second output contains a set of polylines that represent the intersection between the two input surfaces.
This code was contributed in the VTK Journal paper: "Boolean Operations on Surfaces in VTK Without External Libraries" by Cory Quammen, Chris Weigle C., Russ Taylor http://hdl.handle.net/10380/3262 http://www.midasjournal.org/browse/publication/797
Definition at line 46 of file vtkBooleanOperationPolyDataFilter.h.
typedef vtkPolyDataAlgorithm vtkBooleanOperationPolyDataFilter::Superclass |
Definition at line 53 of file vtkBooleanOperationPolyDataFilter.h.
Enumerator | |
---|---|
VTK_UNION | |
VTK_INTERSECTION | |
VTK_DIFFERENCE |
Definition at line 57 of file vtkBooleanOperationPolyDataFilter.h.
|
protected |
|
protected |
|
static |
Construct object that computes the boolean surface.
|
static |
|
virtual |
|
static |
|
protectedvirtual |
vtkBooleanOperationPolyDataFilter* vtkBooleanOperationPolyDataFilter::NewInstance | ( | ) | const |
void vtkBooleanOperationPolyDataFilter::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) |
|
virtual |
Set the boolean operation to perform. Defaults to union.
|
virtual |
Set the boolean operation to perform. Defaults to union.
|
inline |
Set the boolean operation to perform. Defaults to union.
Definition at line 68 of file vtkBooleanOperationPolyDataFilter.h.
|
inline |
Set the boolean operation to perform. Defaults to union.
Definition at line 70 of file vtkBooleanOperationPolyDataFilter.h.
|
inline |
Set the boolean operation to perform. Defaults to union.
Definition at line 72 of file vtkBooleanOperationPolyDataFilter.h.
|
virtual |
Turn on/off cell reorientation of the intersection portion of the surface when the operation is set to DIFFERENCE. Defaults to on.
|
virtual |
Turn on/off cell reorientation of the intersection portion of the surface when the operation is set to DIFFERENCE. Defaults to on.
|
virtual |
Turn on/off cell reorientation of the intersection portion of the surface when the operation is set to DIFFERENCE. Defaults to on.
|
virtual |
Turn on/off cell reorientation of the intersection portion of the surface when the operation is set to DIFFERENCE. Defaults to on.
|
virtual |
Set/get the tolerance used to determine when a point's absolute distance is considered to be zero. Defaults to 1e-6.
|
virtual |
Set/get the tolerance used to determine when a point's absolute distance is considered to be zero. Defaults to 1e-6.
|
protected |
Labels triangles in mesh as part of the intersection or union surface.
|
protected |
|
protected |