 |
VTK
9.1.0
|
Go to the documentation of this file.
47 #ifndef vtkOverlappingCellsDetector_h
48 #define vtkOverlappingCellsDetector_h
50 #include "vtkFiltersParallelDIY2Module.h"
56 #include <unordered_map>
83 vtkGetMacro(Tolerance,
double);
84 vtkSetMacro(Tolerance,
double);
92 vtkGetStringMacro(NumberOfOverlapsPerCellArrayName);
93 vtkSetStringMacro(NumberOfOverlapsPerCellArrayName);
133 const std::vector<vtkBoundingBox>& queryCellBoundingBoxes,
vtkDataSet* cellDataSet,
134 vtkPointSet* pointCloud,
const std::vector<vtkBoundingBox>& cellBoundingBoxes,
135 std::unordered_map<
vtkIdType, std::set<vtkIdType>>& collisionListMap,
136 bool updateProgress =
false);
char * NumberOfOverlapsPerCellArrayName
Output cell scalar field counting the number of cells that each cell was found to collide.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks the algorithm to do its work.
vtkMultiProcessController * Controller
Local controller.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
double Tolerance
Tolerance for overlap detections.
Exposes how many cells each cell of the input collide.
int ExposeOverlappingCellsAmongBlocks(std::vector< vtkPointSet * > &outputs)
Main pipeline.
vtkOverlappingCellsDetector()
Multiprocessing communication superclass.
a simple class to control print indentation
~vtkOverlappingCellsDetector() override
abstract class to specify dataset behavior
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
concrete class for storing a set of points
static vtkOverlappingCellsDetector * New()
void SetController(vtkMultiProcessController *)
Get/Set the controller to use.
bool DetectOverlappingCells(vtkDataSet *queryCellDataSet, vtkPointSet *queryPointCloud, const std::vector< vtkBoundingBox > &queryCellBoundingBoxes, vtkDataSet *cellDataSet, vtkPointSet *pointCloud, const std::vector< vtkBoundingBox > &cellBoundingBoxes, std::unordered_map< vtkIdType, std::set< vtkIdType >> &collisionListMap, bool updateProgress=false)
Method performing the cell detection.