H3D API
2.4.1
|
The BoxBound is a Bound class that specifies the bound using an axis-aligned bounding box. More...
#include <H3D/Bound.h>
Public Member Functions | |
BoxBound (Inst< SFVec3f > _center=0, Inst< SFVec3f > _size=0) | |
Constructor. | |
template<class InputIterator > | |
void | fitAroundPoints (InputIterator begin, InputIterator end) |
This function sets the BoxBound to encompass all the points between the begin and end iterators. More... | |
virtual bool | isInside (const Vec3f &p) |
Determines if a given point is inside the bound or not. | |
virtual bool | lineSegmentIntersect (const Vec3f &from, const Vec3f &to) |
Checks a line segment for intersection with the bound. More... | |
virtual bool | movingSphereIntersect (const Vec3f &from, const Vec3f &to, H3DFloat radius) |
Checks a moving sphere for intersection with the bound. More... | |
virtual Vec3f | closestPoint (const Vec3f &p) |
Returns the closest point on the bound to the given point. | |
virtual void | render () |
Render the outline of the bound with OpenGL. | |
Public Attributes | |
H3DUniquePtr< SFVec3f > | center |
The center point of the bounding box. | |
H3DUniquePtr< SFVec3f > | size |
The size of the bounding box. | |
Additional Inherited Members | |
![]() | |
template<class Iterator > | |
static Bound * | boundUnion (Iterator begin, Iterator end) |
Returns a Bound that is the union between all the bounds specified by the iterators. More... | |
template<class Iterator > | |
static Bound * | SFBoundUnion (Iterator begin, Iterator end) |
Returns a Bound that is the union between the Bound objects in the SFBound fields specified by the iterators. | |
The BoxBound is a Bound class that specifies the bound using an axis-aligned bounding box.
The center field is the center point of the bounding box and the size field is the size of the bounding box.
|
inline |
This function sets the BoxBound to encompass all the points between the begin and end iterators.
The iterator must have a value_type of Vec3f
Referenced by H3D::CoordBoundField::update(), and H3D::NurbsCurve::SFBound::update().
|
inlinevirtual |
Checks a line segment for intersection with the bound.
If line intersects, true is returned.
Implements H3D::Bound.
References H3DAbs().
|
virtual |
Checks a moving sphere for intersection with the bound.
If the sphere intersects, true is returned.
Implements H3D::Bound.