22#ifndef vtkOctreePointLocatorNode_h 
   23#define vtkOctreePointLocatorNode_h 
   25#include "vtkCommonDataModelModule.h"  
   28VTK_ABI_NAMESPACE_BEGIN
 
   45  vtkGetMacro(NumberOfPoints, 
int);
 
   53  void SetBounds(
double xMin, 
double xMax, 
double yMin, 
double yMax, 
double zMin, 
double zMax);
 
   64  void SetDataBounds(
double xMin, 
double xMax, 
double yMin, 
double yMax, 
double zMin, 
double zMax);
 
   73  vtkGetMacro(MinBounds, VTK_FUTURE_CONST 
double*);
 
   74  vtkGetMacro(MaxBounds, VTK_FUTURE_CONST 
double*);
 
   83    this->MinBounds[0] = minBounds[0];
 
   84    this->MinBounds[1] = minBounds[1];
 
   85    this->MinBounds[2] = minBounds[2];
 
   95    this->MaxBounds[0] = maxBounds[0];
 
   96    this->MaxBounds[1] = maxBounds[1];
 
   97    this->MaxBounds[2] = maxBounds[2];
 
  106  vtkGetMacro(MinDataBounds, VTK_FUTURE_CONST 
double*);
 
  107  vtkGetMacro(MaxDataBounds, VTK_FUTURE_CONST 
double*);
 
  117    this->MinDataBounds[0] = minDataBounds[0];
 
  118    this->MinDataBounds[1] = minDataBounds[1];
 
  119    this->MinDataBounds[2] = minDataBounds[2];
 
  130    this->MaxDataBounds[0] = maxDataBounds[0];
 
  131    this->MaxDataBounds[1] = maxDataBounds[1];
 
  132    this->MaxDataBounds[2] = maxDataBounds[2];
 
  141  vtkGetMacro(ID, 
int);
 
  151  vtkGetMacro(MinID, 
int);
 
  233  double GetDistance2ToBoundaryPrivate(
double x, 
double y, 
double z, 
double* boundaryPt,
 
  250  double MinDataBounds[3];
 
  256  double MaxDataBounds[3];
 
abstract class to specify cell behavior
 
a simple class to control print indentation
 
abstract base class for most VTK objects
 
Octree node that has 8 children each of equal size.
 
void SetMaxDataBounds(VTK_FUTURE_CONST double maxDataBounds[3])
Set the xmax, ymax and zmax value of the bounds of this data within this region.
 
void ComputeOctreeNodeInformation(vtkOctreePointLocatorNode *Parent, int &NextLeafId, int &NextMinId, float *coordinates)
Recursive function to compute ID, MinVal, MaxVal, and MinID.
 
void SetMinBounds(double minBounds[3])
Set the xmin, ymin and zmin value of the bounds of this region.
 
void SetBounds(double xMin, double xMax, double yMin, double yMax, double zMin, double zMax)
Set/Get the bounds of the spatial region represented by this node.
 
double GetDistance2ToInnerBoundary(double x, double y, double z, vtkOctreePointLocatorNode *top)
Calculate the distance from the specified point (which is required to be inside this spatial region) ...
 
void SetMaxBounds(double maxBounds[3])
Set the xmax, ymax and zmax value of the bounds of this region.
 
int GetSubOctantIndex(double *point, int CheckContainment)
Return the id of the suboctant that a given point is in.
 
double GetDistance2ToBoundary(double x, double y, double z, vtkOctreePointLocatorNode *top, int useDataBounds)
Calculate the distance squared from any point to the boundary of this region.
 
void GetDataBounds(double *b) const
Set/Get the bounds of the points contained in this spatial region.
 
void SetDataBounds(double xMin, double xMax, double yMin, double yMax, double zMin, double zMax)
Set/Get the bounds of the points contained in this spatial region.
 
double GetDistance2ToBoundary(double x, double y, double z, double *boundaryPt, vtkOctreePointLocatorNode *top, int useDataBounds)
Calculate the distance squared from any point to the boundary of this region.
 
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
 
int IntersectsRegion(vtkPlanesIntersection *pi, int useDataBounds)
A vtkPlanesIntersection object represents a convex 3D region bounded by planes, and it is capable of ...
 
void DeleteChildNodes()
Delete the 8 children.
 
vtkOctreePointLocatorNode * GetChild(int i)
Get a pointer to the ith child of this node.
 
vtkTypeBool ContainsPoint(double x, double y, double z, int useDataBounds)
Return 1 if this spatial region entirely contains the given point.
 
static vtkOctreePointLocatorNode * New()
 
~vtkOctreePointLocatorNode() override
 
void GetBounds(double *b) const
Set/Get the bounds of the spatial region represented by this node.
 
void SetBounds(const double b[6])
Set/Get the bounds of the spatial region represented by this node.
 
void CreateChildNodes()
Add the 8 children.
 
void SetMinDataBounds(VTK_FUTURE_CONST double minDataBounds[3])
Set the xmin, ymin and zmin value of the bounds of this data within this region.
 
void SetNumberOfPoints(int numberOfPoints)
Set/Get the number of points contained in this region.
 
vtkOctreePointLocatorNode()
 
A vtkPlanesIntersection object is a vtkPlanes object that can compute whether the arbitrary convex re...