Simbody
3.7
|
TODO: A 3d box oriented and positioned with respect to an unspecified frame F. More...
Public Member Functions | |
OrientedBox_ () | |
Construct an uninitialized OrientedBox object; the dimensions and pose will be garbage. More... | |
OrientedBox_ (const TransformP &X_FB, const Geo::Box_< P > &box) | |
Construct an OrientedBox with the given box shape with positioned and oriented according to the given Transform X_FB which gives the box local frame B (at the box center) in an unspecifed frame F. More... | |
OrientedBox_ (const TransformP &X_FB, const Vec3P &halfLengths) | |
Construct an OrientedBox with the given location and half-dimensions. More... | |
OrientedBox_ & | setTransform (const TransformP &newX_FB) |
Change the pose of this box. More... | |
OrientedBox_ & | setHalfLengths (const Vec3P &halfLengths) |
Change the dimensions of this box. More... | |
const Vec3P & | getCenter () const |
Vec3P & | updCenter () |
const RotationP & | getOrientation () const |
RotationP & | updOrientation () |
const TransformP & | getTransform () const |
TransformP & | updTransform () |
const Vec3P & | getHalfLengths () const |
const Box_< P > & | getBox () const |
Box_< P > & | updBox () |
bool | containsPoint (const Vec3P &pt_F) const |
Given a point measured and expressed in the base frame F, determine whether it is strictly contained in the box (just touching doesn't count). More... | |
OrientedBox_ & | stretchBoundary () |
Stretch this box in place by a small amount to ensure that there will be no roundoff problems if this is used as a bounding box. More... | |
TODO: A 3d box oriented and positioned with respect to an unspecified frame F.
|
inline |
Construct an uninitialized OrientedBox object; the dimensions and pose will be garbage.
|
inline |
Construct an OrientedBox with the given box shape with positioned and oriented according to the given Transform X_FB which gives the box local frame B (at the box center) in an unspecifed frame F.
|
inline |
Construct an OrientedBox with the given location and half-dimensions.
|
inline |
Change the pose of this box.
|
inline |
Change the dimensions of this box.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Given a point measured and expressed in the base frame F, determine whether it is strictly contained in the box (just touching doesn't count).
Cost is about 23 flops.
|
inline |
Stretch this box in place by a small amount to ensure that there will be no roundoff problems if this is used as a bounding box.
The amount to stretch depends on the default tolerance for this precision, the dimensions, and the position of the box in space. A very large box, or a box that is very far from the origin, must be stretched more than a small one at the origin. Cost is 6 flops.