#include <vgl_orient_box_3d.h>
Public Member Functions | |
vgl_orient_box_3d () | |
vgl_orient_box_3d (vgl_box_3d< Type > const &box) | |
constructor with only box definition, the direction will be set to (0,0,1) with no rotation. | |
vgl_orient_box_3d (vgl_box_3d< Type > const &box, vnl_quaternion< double > const &orient) | |
constructor with box and the orientation. | |
vgl_orient_box_3d (vgl_point_3d< Type > const &p0, vgl_point_3d< Type > const &px, vgl_point_3d< Type > const &py, vgl_point_3d< Type > const &pz) | |
constructor from four corner points. | |
virtual | ~vgl_orient_box_3d (void) |
bool | operator== (vgl_orient_box_3d< Type > const &obb) const |
Type | width () const |
Type | height () const |
Type | depth () const |
Type | volume () const |
vcl_vector< vgl_point_3d< Type > > | corners () |
returns the 8 corner points of the box. | |
bool | contains (Type const &x, Type const &y, Type const &z) const |
Return true if (x,y,z) is inside this box. | |
bool | contains (vgl_point_3d< Type > const &p) const |
Return true if point is inside this box. | |
vcl_ostream & | print (vcl_ostream &s) const |
vcl_istream & | read (vcl_istream &s) |
Private Attributes | |
vgl_box_3d< Type > | box_ |
regular AABB(axis-aligned bounding box). | |
vnl_quaternion< double > | orient_ |
orientation of the box as a quaternion. |
Definition at line 25 of file vgl_orient_box_3d.h.
vgl_orient_box_3d< Type >::vgl_orient_box_3d | ( | ) | [inline] |
Definition at line 28 of file vgl_orient_box_3d.h.
vgl_orient_box_3d< Type >::vgl_orient_box_3d | ( | vgl_box_3d< Type > const & | box | ) | [inline] |
constructor with only box definition, the direction will be set to (0,0,1) with no rotation.
Definition at line 31 of file vgl_orient_box_3d.h.
vgl_orient_box_3d< Type >::vgl_orient_box_3d | ( | vgl_box_3d< Type > const & | box, |
vnl_quaternion< double > const & | orient | ||
) | [inline] |
constructor with box and the orientation.
Definition at line 35 of file vgl_orient_box_3d.h.
vgl_orient_box_3d< Type >::vgl_orient_box_3d | ( | vgl_point_3d< Type > const & | p0, |
vgl_point_3d< Type > const & | px, | ||
vgl_point_3d< Type > const & | py, | ||
vgl_point_3d< Type > const & | pz | ||
) |
constructor from four corner points.
The three directions from the first of these to the three other points must be mutually orthogonal.
Definition at line 15 of file vgl_orient_box_3d.txx.
virtual vgl_orient_box_3d< Type >::~vgl_orient_box_3d | ( | void | ) | [inline, virtual] |
Definition at line 43 of file vgl_orient_box_3d.h.
bool vgl_orient_box_3d< Type >::contains | ( | Type const & | x, |
Type const & | y, | ||
Type const & | z | ||
) | const |
Return true if (x,y,z) is inside this box.
Definition at line 94 of file vgl_orient_box_3d.txx.
bool vgl_orient_box_3d< Type >::contains | ( | vgl_point_3d< Type > const & | p | ) | const [inline] |
Return true if point is inside this box.
Definition at line 60 of file vgl_orient_box_3d.h.
vcl_vector< vgl_point_3d< Type > > vgl_orient_box_3d< Type >::corners | ( | ) |
returns the 8 corner points of the box.
Definition at line 52 of file vgl_orient_box_3d.txx.
Type vgl_orient_box_3d< Type >::depth | ( | ) | const [inline] |
Definition at line 52 of file vgl_orient_box_3d.h.
Type vgl_orient_box_3d< Type >::height | ( | ) | const [inline] |
Definition at line 51 of file vgl_orient_box_3d.h.
bool vgl_orient_box_3d< Type >::operator== | ( | vgl_orient_box_3d< Type > const & | obb | ) | const [inline] |
Definition at line 45 of file vgl_orient_box_3d.h.
vcl_ostream & vgl_orient_box_3d< Type >::print | ( | vcl_ostream & | s | ) | const |
Definition at line 113 of file vgl_orient_box_3d.txx.
vcl_istream & vgl_orient_box_3d< Type >::read | ( | vcl_istream & | s | ) |
Definition at line 119 of file vgl_orient_box_3d.txx.
Type vgl_orient_box_3d< Type >::volume | ( | ) | const [inline] |
Definition at line 53 of file vgl_orient_box_3d.h.
Type vgl_orient_box_3d< Type >::width | ( | ) | const [inline] |
Definition at line 50 of file vgl_orient_box_3d.h.
vgl_box_3d<Type> vgl_orient_box_3d< Type >::box_ [private] |
regular AABB(axis-aligned bounding box).
Definition at line 68 of file vgl_orient_box_3d.h.
vnl_quaternion<double> vgl_orient_box_3d< Type >::orient_ [private] |
orientation of the box as a quaternion.
Definition at line 71 of file vgl_orient_box_3d.h.