94 #ifndef vtkCollisionDetectionFilter_h 95 #define vtkCollisionDetectionFilter_h 98 #include "vtkFiltersModelingModule.h" 122 VTK_ALL_CONTACTS = 0,
123 VTK_FIRST_CONTACT = 1,
124 VTK_HALF_CONTACTS = 2
133 vtkSetClampMacro(CollisionMode,
int, VTK_ALL_CONTACTS, VTK_HALF_CONTACTS);
134 vtkGetMacro(CollisionMode,
int);
141 if (this->CollisionMode == VTK_ALL_CONTACTS)
143 return "AllContacts";
145 else if (this->CollisionMode == VTK_FIRST_CONTACT)
147 return "FirstContact";
151 return "HalfContacts";
164 int IntersectPolygonWithPolygon(
int npts,
double* pts,
double bounds[6],
int npts2,
double* pts2,
165 double bounds2[6],
double tol2,
double x1[2],
double x2[3],
int CollisionMode);
212 vtkSetMacro(BoxTolerance,
float);
213 vtkGetMacro(BoxTolerance,
float);
219 vtkSetMacro(CellTolerance,
double);
220 vtkGetMacro(CellTolerance,
double);
228 vtkSetMacro(GenerateScalars,
int);
229 vtkGetMacro(GenerateScalars,
int);
230 vtkBooleanMacro(GenerateScalars,
int);
247 vtkGetMacro(NumberOfBoxTests,
int);
254 vtkSetMacro(NumberOfCellsPerNode,
int);
255 vtkGetMacro(NumberOfCellsPerNode,
int);
263 vtkSetClampMacro(Opacity,
float, 0.0, 1.0);
264 vtkGetMacro(Opacity,
float);
vtkAlgorithmOutput * GetOutputPort()
represent and manipulate 4x4 transformation matrices
vtkIdType GetNumberOfTuples() const
Get the number of complete tuples (a component group) in the array.
void SetCollisionModeToHalfContacts()
Set the collision mode to VTK_ALL_CONTACTS to find all the contacting cell pairs with two points per ...
vtkPolyData * GetContactsOutput()
Get the output with the points where the contacting cells intersect.
vtkTypeUInt32 vtkMTimeType
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
void SetCollisionModeToFirstContact()
Set the collision mode to VTK_ALL_CONTACTS to find all the contacting cell pairs with two points per ...
dynamic, self-adjusting array of vtkIdType
concrete dataset represents vertices, lines, polygons, and triangle strips
void SetCollisionModeToAllContacts()
Set the collision mode to VTK_ALL_CONTACTS to find all the contacting cell pairs with two points per ...
generate oriented bounding box (OBB) tree
Proxy object to connect input/output ports.
static vtkPolyDataAlgorithm * New()
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
virtual vtkMTimeType GetMTime()
Return this object's modified time.
virtual vtkFieldData * GetFieldData()
Assign or retrieve a general field data to this data object.
void SetInputData(vtkDataObject *)
Assign a data object as input.
performs collision determination between two polyhedral surfaces
vtkLinearTransform * GetTransform(int i)
const char * GetCollisionModeAsString(void)
Set the collision mode to VTK_ALL_CONTACTS to find all the contacting cell pairs with two points per ...
vtkDataArray * GetArray(int i)
Not recommended for use.
vtkPolyData * GetOutput()
Get the output data object for a port on this algorithm.
int GetNumberOfContacts()
vtkAlgorithmOutput * GetContactsOutputPort()
Get the output with the points where the contacting cells intersect.
represent and manipulate 3D points
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.