49#ifndef vtkSphereTree_h
50#define vtkSphereTree_h
52#include "vtkCommonExecutionModelModule.h"
63struct vtkSphereTreeHierarchy;
65#define VTK_MAX_SPHERE_TREE_RESOLUTION 10
66#define VTK_MAX_SPHERE_TREE_LEVELS 20
109 vtkSetMacro(BuildHierarchy,
bool);
110 vtkGetMacro(BuildHierarchy,
bool);
111 vtkBooleanMacro(BuildHierarchy,
bool);
154 vtkGetMacro(Resolution,
int);
166 vtkGetMacro(MaxLevel,
int);
175 vtkGetMacro(NumberOfLevels,
int);
212 double SphereBounds[6];
abstract superclass for arrays of numeric data
abstract class to specify dataset behavior
dynamic, self-adjusting array of double
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 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.
topologically regular array of data
record modification and/or execution time
dataset represents arbitrary combinations of all possible cell types
std::map< std::string, DataArray > DataSet
key: variable name, value: DataArray
#define VTK_MAX_SPHERE_TREE_RESOLUTION
#define VTK_MAX_SPHERE_TREE_LEVELS