 |
VTK
9.0.1
|
Go to the documentation of this file.
27 #ifndef vtkBoundingBox_h
28 #define vtkBoundingBox_h
29 #include "vtkCommonDataModelModule.h"
44 vtkBoundingBox(
double xMin,
double xMax,
double yMin,
double yMax,
double zMin,
double zMax);
70 void SetBounds(
const double bounds[6]);
71 void SetBounds(
double xMin,
double xMax,
double yMin,
double yMax,
double zMin,
double zMax);
80 static void ComputeBounds(
vtkPoints* pts,
double bounds[6]);
81 static void ComputeBounds(
vtkPoints* pts,
const unsigned char* ptUses,
double bounds[6]);
89 void SetMinPoint(
double x,
double y,
double z);
90 void SetMinPoint(
double p[3]);
98 void SetMaxPoint(
double x,
double y,
double z);
99 void SetMaxPoint(
double p[3]);
108 static int IsValid(
const double bounds[6]);
116 void AddPoint(
double p[3]);
117 void AddPoint(
double px,
double py,
double pz);
130 void AddBounds(
const double bounds[]);
149 bool IntersectPlane(
double origin[3],
double normal[3]);
161 void GetBounds(
double bounds[6])
const;
163 double& xMin,
double& xMax,
double& yMin,
double& yMax,
double& zMin,
double& zMax)
const;
169 double GetBound(
int i)
const;
176 void GetMinPoint(
double& x,
double& y,
double& z)
const;
177 void GetMinPoint(
double x[3])
const;
185 void GetMaxPoint(
double& x,
double& y,
double& z)
const;
186 void GetMaxPoint(
double x[3])
const;
193 void GetCorner(
int corner,
double p[3])
const;
200 vtkTypeBool ContainsPoint(
double px,
double py,
double pz)
const;
206 void GetCenter(
double center[3])
const;
211 void GetLengths(
double lengths[3])
const;
216 double GetLength(
int i)
const;
221 double GetMaxLength()
const;
227 double GetDiagonalLength()
const;
238 void Inflate(
double delta);
239 void Inflate(
double deltaX,
double deltaY,
double deltaZ);
250 void Scale(
double s[3]);
251 void Scale(
double sx,
double sy,
double sz);
260 void ScaleAboutCenter(
double s);
261 void ScaleAboutCenter(
double s[3]);
262 void ScaleAboutCenter(
double sx,
double sy,
double sz);
283 double MinPnt[3], MaxPnt[3];
293 double& xMin,
double& xMax,
double& yMin,
double& yMax,
double& zMin,
double& zMax)
const
308 return ((i & 0x1) ? this->
MaxPnt[i >> 1] : this->
MinPnt[i >> 1]);
343 return (bounds[0] <= bounds[1] && bounds[2] <= bounds[3] && bounds[4] <= bounds[5]);
367 this->
SetBounds(bounds[0], bounds[1], bounds[2], bounds[3], bounds[4], bounds[5]);
372 this->
GetBounds(bounds[0], bounds[1], bounds[2], bounds[3], bounds[4], bounds[5]);
387 double xMin,
double xMax,
double yMin,
double yMax,
double zMin,
double zMax)
390 this->
SetBounds(xMin, xMax, yMin, yMax, zMin, zMax);
419 (this->MinPnt[2] == bbox.
MinPnt[2]) && (this->MaxPnt[0] == bbox.
MaxPnt[0]) &&
420 (this->MaxPnt[1] == bbox.
MaxPnt[1]) && (this->MaxPnt[2] == bbox.
MaxPnt[2]));
425 return !((*this) == bbox);
476 if ((corner < 0) || (corner > 7))
484 int ix = (corner & 1) ? 1 : 0;
485 int iy = ((corner >> 1) & 1) ? 1 : 0;
486 int iz = (corner >> 2) ? 1 : 0;
represent and manipulate 3D points
vtkBoundingBox & operator=(const vtkBoundingBox &bbox)
Assignment Operator.
const double * GetMaxPoint() const
Get the maximum point of the bounding box.
int IsValid() const
Returns 1 if the bounds have been set and 0 if the box is in its initialized state which is an invert...
void SetMinPoint(double x, double y, double z)
Set the minimum point of the bounding box - if the min point is greater than the max point then the m...
void GetLengths(double lengths[3]) const
Get the length of each sode of the box.
vtkTypeBool ContainsPoint(double p[3]) const
Returns 1 if the point is contained in the box else 0.
Fast, simple class for dealing with 3D bounds.
void SetMaxPoint(double x, double y, double z)
Set the maximum point of the bounding box - if the max point is less than the min point then the min ...
#define VTK_SIZEHINT(...)
void SetBounds(const double bounds[6])
Set the bounds explicitly of the box (using the VTK convention for representing a bounding box).
void GetBounds(double bounds[6]) const
Get the bounds of the box (defined by VTK style).
bool operator!=(const vtkBoundingBox &bbox) const
const double * GetMinPoint() const
Get the minimum point of the bounding box.
bool operator==(const vtkBoundingBox &bbox) const
Equality operator.
void GetCenter(double center[3]) const
Get the center of the bounding box.
void Reset()
Returns the box to its initialized state.
double GetLength(int i) const
Return the length of the bounding box in the ith direction.
VTKCOMMONCORE_EXPORT bool operator==(const vtkUnicodeString &lhs, const vtkUnicodeString &rhs)
vtkBoundingBox()
Construct a bounding box with the min point set to VTK_DOUBLE_MAX and the max point set to VTK_DOUBLE...
void GetCorner(int corner, double p[3]) const
Get the ith corner of the bounding box.
VTKCOMMONCORE_EXPORT bool operator!=(const vtkUnicodeString &lhs, const vtkUnicodeString &rhs)
double GetBound(int i) const
Return the ith bounds of the box (defined by VTK style).