37 #include "vtkCommonDataModelModule.h" 67 void SetXMin(
double p[3]);
68 void SetXMin(
double x,
double y,
double z);
69 void GetXMin(
double p[3]);
70 void GetXMin(
double &x,
double &y,
double &z);
73 void SetXMax(
double p[3]);
74 void SetXMax(
double x,
double y,
double z);
75 void GetXMax(
double p[3]);
76 void GetXMax(
double &x,
double &y,
double &z);
78 void SetBounds(
double xMin,
double xMax,
79 double yMin,
double yMax,
80 double zMin,
double zMax);
81 void SetBounds(
const double bounds[6]);
82 void GetBounds(
double &xMin,
double &xMax,
83 double &yMin,
double &yMax,
84 double &zMin,
double &zMax);
85 void GetBounds(
double bounds[6]);
94 void AddBounds(
const double bounds[6]);
105 static char IntersectBox(
double bounds[6],
double origin[3],
double dir[3],
106 double coord[3],
double& t);
120 static int IntersectWithLine(
const double bounds[6],
121 const double p1[3],
const double p2[3],
122 double &t1,
double &t2,
123 double x1[3],
double x2[3],
124 int &plane1,
int &plane2);
133 static int IntersectWithPlane(
double bounds[6],
double origin[3],
145 void operator=(
const vtkBox&) =
delete;
152 this->
SetXMin(p[0], p[1], p[2]);
157 this->
SetXMax(p[0], p[1], p[2]);
abstract interface for implicit functions
virtual double EvaluateFunction(double x[3])=0
Evaluate function at position x-y-z and return value.
void SetXMax(double p[3])
virtual void EvaluateGradient(double x[3], double g[3])=0
Evaluate function gradient at position x-y-z and pass back vector.
a simple class to control print indentation
void SetXMin(double p[3])
Set / get the bounding box using various methods.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
implicit function for a bounding box
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Fast Simple Class for dealing with 3D bounds.