IGLib 1.4
The IGLib base library for development of numerical, technical and business applications.
|
A 3D bounding box. More...
Public Member Functions | |
BoundingBox3d () | |
Creates a 3D bounding box with unspecified bounds; minimal co-ordinate components equal to UndefinedMin and maximal co-ordinate components equal do UndefinedMax. | |
BoundingBox3d (double minX, double maxX, double minY, double maxY, double minZ, double maxZ) | |
Creates a 3D bounding box with the specified bounds. | |
BoundingBox3d (IVector coordinates) | |
Creates a bounding box and initializes it in such a way that minimal and maximal co-ordinate components equal to components of the spacified vector. | |
BoundingBox3d (IVector min, IVector max) | |
Creates a bounding box of the specified dimension and initializes it in such a way that minimal and maximal co-ordinate components equal to components of the spacified vectors. | |
BoundingBox3d (IBoundingBox bounds) | |
Constructs a 3D bounding box of the specified dimension and initializes it in such a way that its bounds correspond to those of the specified bounding box. The specified bounding box must be different than null, otherwise exception is thrown. | |
BoundingBox3d (double[] coordinates) | |
Creates a bounding box and initializes it in such a way that minimal and maximal co-ordinate components equal to components of the spacified array. | |
BoundingBox3d (double[] min, double[] max) | |
Creates a bounding box and initializes it in such a way that minimal and maximal co-ordinate components equal to components of the spacified arrays. | |
void | Update (vec3 coordinates) |
Updates the bounding box in such a way that the specified co-ordinates fit in it. | |
void | Update (params vec3[] points) |
Updates the bounding box in such a way that all specified points fit in it. If the array of points is empty or null then this function has no effect. | |
void | Update (Vector3d coordinates) |
Updates the bounding box in such a way that the specified co-ordinates fit in it. If the specified coordinates are null then this method has no effect. | |
void | Update (params Vector3d[] points) |
Updates the bounding box in such a way that all specified points fit in it. If the specified array of points is empty or null then this function has no effect. Elements of the array that are null are ignored. | |
Protected Member Functions | |
override IVector | CreateVector (int dim) |
Creates and returns a new vector that is consistent with the definition of bounding box. | |
Properties | |
double | MinX [get] |
Gets the lower bound in the first coordinate. | |
double | MaxX [get] |
Gets the upper bound in the first coordinate. | |
double | MinY [get] |
Gets the lower bound in the second coordinate. | |
double | MaxY [get] |
Gets the upper bound in the second coordinate. | |
double | MinZ [get] |
Gets the lower bound in the third coordinate. | |
double | MaxZ [get] |
Gets the upper bound in the third coordinate. |
A 3D bounding box.
IG::Num::BoundingBox3d::BoundingBox3d | ( | ) | [inline] |
Creates a 3D bounding box with unspecified bounds; minimal co-ordinate components equal to UndefinedMin and maximal co-ordinate components equal do UndefinedMax.
IG::Num::BoundingBox3d::BoundingBox3d | ( | double | minX, |
double | maxX, | ||
double | minY, | ||
double | maxY, | ||
double | minZ, | ||
double | maxZ | ||
) | [inline] |
Creates a 3D bounding box with the specified bounds.
minX | Lower bound in the first coordinate. |
maxX | Upper bound in the first coordinate. |
minY | Lower bound in the second coordinate. |
maxY | Upper bound in the second coordinate. |
minZ | Lower bound in the third coordinate. |
maxZ | Upper bound in the third coordinate. |
IG::Num::BoundingBox3d::BoundingBox3d | ( | IVector | coordinates | ) | [inline] |
Creates a bounding box and initializes it in such a way that minimal and maximal co-ordinate components equal to components of the spacified vector.
coordinates | Vector of coordinates to which minimal and maximal co-ordines of the bounding box are set. |
IG::Num::BoundingBox3d::BoundingBox3d | ( | IBoundingBox | bounds | ) | [inline] |
Constructs a 3D bounding box of the specified dimension and initializes it in such a way that its bounds correspond to those of the specified bounding box. The specified bounding box must be different than null, otherwise exception is thrown.
bounds | Bounds with which the constructed bounding box is initialized. |
IG::Num::BoundingBox3d::BoundingBox3d | ( | double[] | coordinates | ) | [inline] |
Creates a bounding box and initializes it in such a way that minimal and maximal co-ordinate components equal to components of the spacified array.
coordinates | Array of coordinates to which minimal and maximal co-ordines of the bounding box are set. |
IG::Num::BoundingBox3d::BoundingBox3d | ( | double[] | min, |
double[] | max | ||
) | [inline] |
Creates a bounding box and initializes it in such a way that minimal and maximal co-ordinate components equal to components of the spacified arrays.
min | Array of components to which minimal co-ordines of the bounding box are set. |
max | Array of components to which maximal co-ordines of the bounding box are set. |
void IG::Num::BoundingBox3d::Update | ( | vec3 | coordinates | ) | [inline] |
Updates the bounding box in such a way that the specified co-ordinates fit in it.
coordinates | Vector of oordinates for which the bounding box is updated in such a way that they fit in it. |
void IG::Num::BoundingBox3d::Update | ( | params vec3[] | points | ) | [inline] |
Updates the bounding box in such a way that all specified points fit in it. If the array of points is empty or null then this function has no effect.
points | Coordinate vectors of points for which the bounding box is updated in such a way that they fit in it. |
void IG::Num::BoundingBox3d::Update | ( | Vector3d | coordinates | ) | [inline] |
Updates the bounding box in such a way that the specified co-ordinates fit in it. If the specified coordinates are null then this method has no effect.
coordinates | Vector of oordinates for which the bounding box is updated in such a way that they fit in it. |
void IG::Num::BoundingBox3d::Update | ( | params Vector3d[] | points | ) | [inline] |
Updates the bounding box in such a way that all specified points fit in it. If the specified array of points is empty or null then this function has no effect. Elements of the array that are null are ignored.
points | Coordinate vectors of points for which the bounding box is updated in such a way that they fit in it. |
override IVector IG::Num::BoundingBox3d::CreateVector | ( | int | dim | ) | [inline, protected, virtual] |
Creates and returns a new vector that is consistent with the definition of bounding box.
dim | Dimension of vector space. |
Implements IG::Num::BoundingBoxBase.
double IG::Num::BoundingBox3d::MinX [get] |
Gets the lower bound in the first coordinate.
double IG::Num::BoundingBox3d::MaxX [get] |
Gets the upper bound in the first coordinate.
double IG::Num::BoundingBox3d::MinY [get] |
Gets the lower bound in the second coordinate.
double IG::Num::BoundingBox3d::MaxY [get] |
Gets the upper bound in the second coordinate.
double IG::Num::BoundingBox3d::MinZ [get] |
Gets the lower bound in the third coordinate.
double IG::Num::BoundingBox3d::MaxZ [get] |
Gets the upper bound in the third coordinate.