40#ifndef vtkSphereTree_h
41#define vtkSphereTree_h
43#include "vtkCommonExecutionModelModule.h"
47VTK_ABI_NAMESPACE_BEGIN
55struct vtkSphereTreeHierarchy;
57#define VTK_MAX_SPHERE_TREE_RESOLUTION 10
58#define VTK_MAX_SPHERE_TREE_LEVELS 20
101 vtkSetMacro(BuildHierarchy,
bool);
102 vtkGetMacro(BuildHierarchy,
bool);
103 vtkBooleanMacro(BuildHierarchy,
bool);
146 vtkGetMacro(Resolution,
int);
158 vtkGetMacro(MaxLevel,
int);
167 vtkGetMacro(NumberOfLevels,
int);
211 double SphereBounds[6];
abstract superclass for arrays of numeric data
abstract class to specify dataset behavior
dynamic, self-adjusting array of double
Detect and break reference loops.
list of point or cell ids
a simple class to control print indentation
abstract base class for most VTK objects
class to build and traverse sphere trees
virtual void SetDataSet(vtkDataSet *)
Specify the dataset from which to build the sphere tree.
~vtkSphereTree() override
void PrintSelf(ostream &os, vtkIndent indent) override
Standard type related macros and PrintSelf() method.
const unsigned char * SelectPlane(double origin[3], double normal[3], vtkIdType &numSelected)
Methods for cell selection based on a geometric query.
const unsigned char * SelectLine(double origin[3], double ray[3], vtkIdType &numSelected)
Methods for cell selection based on a geometric query.
void SelectPlane(double origin[3], double normal[3], vtkIdList *cellIds)
Methods for cell selection based on a geometric query.
void BuildStructuredHierarchy(vtkStructuredGrid *input, double *tree)
void BuildTreeSpheres(vtkDataSet *input)
void SelectLine(double origin[3], double ray[3], vtkIdList *cellIds)
Methods for cell selection based on a geometric query.
void SelectPoint(double point[3], vtkIdList *cellIds)
Methods for cell selection based on a geometric query.
const unsigned char * SelectPoint(double point[3], vtkIdType &numSelected)
Methods for cell selection based on a geometric query.
const double * GetCellSpheres()
Special methods to retrieve the sphere tree data.
void ExtractCellIds(const unsigned char *selected, vtkIdList *cellIds, vtkIdType numSelected)
void Build()
Build the sphere tree (if necessary) from the data set specified.
vtkSphereTreeHierarchy * Hierarchy
void ReportReferences(vtkGarbageCollector *) override
void Build(vtkDataSet *input)
Build the sphere tree (if necessary) from the data set specified.
void BuildUnstructuredHierarchy(vtkDataSet *input, double *tree)
void BuildTreeHierarchy(vtkDataSet *input)
static vtkSphereTree * New()
Instantiate the sphere tree.
const double * GetTreeSpheres(int level, vtkIdType &numSpheres)
Special methods to retrieve the sphere tree data.
bool UsesGarbageCollector() const override
Participate in garbage collection via ReportReferences.
topologically regular array of data
record modification and/or execution time
dataset represents arbitrary combinations of all possible cell types
#define VTK_MAX_SPHERE_TREE_RESOLUTION
#define VTK_MAX_SPHERE_TREE_LEVELS