#include <vgl_ellipsoid_3d.h>
Public Member Functions | |
vgl_ellipsoid_3d () | |
Default constructor: no initialisations. | |
vgl_ellipsoid_3d (vgl_point_3d< T > const &cntr, T x_halflen, T y_halflen, T z_halflen, vgl_rotation_3d< T > const &orient=vgl_rotation_3d< T >()) | |
Construct from a center point, three extrusion factors, and optionally a rotation. | |
vgl_point_3d< T > | center () const |
returns the symmetry point (centre) of the ellipsoid. | |
T | x_halflength () const |
returns the scaling factor along the first principal axis. | |
T | y_halflength () const |
returns the scaling factor along the second principal axis. | |
T | z_halflength () const |
returns the scaling factor along the third principal axis. | |
vgl_rotation_3d< T > | orientation () const |
returns the rotation that created this ellipsoid from an axes-aligned one. | |
void | set_center (vgl_point_3d< T > const &cntr) |
shifts (translates) the ellipsoid by setting its symmetry point (centre). | |
void | set_orientation (vgl_rotation_3d< T > orient) |
sets the rotation that would create this ellipsoid from an axes-aligned one. | |
void | set_halflengths (T x, T y, T z) |
sets the scalings along the three principal axes. | |
bool | operator== (vgl_ellipsoid_3d< T > const &e) const |
comparison operator. | |
vcl_ostream & | print (vcl_ostream &s) const |
Writes "<vgl_ellipsoid_3d center=(x0,y0,z0), orientation, size=(x_hl,y_hl,z_hl)" to stream. | |
Private Attributes | |
vgl_point_3d< T > | center_ |
T | x_halflength_ |
T | y_halflength_ |
T | z_halflength_ |
vgl_rotation_3d< T > | orientation_ |
Definition at line 30 of file vgl_ellipsoid_3d.h.
vgl_ellipsoid_3d< T >::vgl_ellipsoid_3d | ( | ) | [inline] |
Default constructor: no initialisations.
Definition at line 40 of file vgl_ellipsoid_3d.h.
vgl_ellipsoid_3d< T >::vgl_ellipsoid_3d | ( | vgl_point_3d< T > const & | cntr, |
T | x_halflen, | ||
T | y_halflen, | ||
T | z_halflen, | ||
vgl_rotation_3d< T > const & | orient = vgl_rotation_3d<T>() |
||
) | [inline] |
Construct from a center point, three extrusion factors, and optionally a rotation.
Definition at line 43 of file vgl_ellipsoid_3d.h.
vgl_point_3d<T> vgl_ellipsoid_3d< T >::center | ( | ) | const [inline] |
returns the symmetry point (centre) of the ellipsoid.
Definition at line 51 of file vgl_ellipsoid_3d.h.
bool vgl_ellipsoid_3d< T >::operator== | ( | vgl_ellipsoid_3d< T > const & | e | ) | const |
comparison operator.
Definition at line 11 of file vgl_ellipsoid_3d.txx.
vgl_rotation_3d<T> vgl_ellipsoid_3d< T >::orientation | ( | ) | const [inline] |
returns the rotation that created this ellipsoid from an axes-aligned one.
Definition at line 59 of file vgl_ellipsoid_3d.h.
vcl_ostream & vgl_ellipsoid_3d< T >::print | ( | vcl_ostream & | s | ) | const |
Writes "<vgl_ellipsoid_3d center=(x0,y0,z0), orientation, size=(x_hl,y_hl,z_hl)" to stream.
Definition at line 22 of file vgl_ellipsoid_3d.txx.
void vgl_ellipsoid_3d< T >::set_center | ( | vgl_point_3d< T > const & | cntr | ) | [inline] |
shifts (translates) the ellipsoid by setting its symmetry point (centre).
Definition at line 62 of file vgl_ellipsoid_3d.h.
void vgl_ellipsoid_3d< T >::set_halflengths | ( | T | x, |
T | y, | ||
T | z | ||
) | [inline] |
sets the scalings along the three principal axes.
Definition at line 66 of file vgl_ellipsoid_3d.h.
void vgl_ellipsoid_3d< T >::set_orientation | ( | vgl_rotation_3d< T > | orient | ) | [inline] |
sets the rotation that would create this ellipsoid from an axes-aligned one.
Definition at line 64 of file vgl_ellipsoid_3d.h.
T vgl_ellipsoid_3d< T >::x_halflength | ( | ) | const [inline] |
returns the scaling factor along the first principal axis.
Definition at line 53 of file vgl_ellipsoid_3d.h.
T vgl_ellipsoid_3d< T >::y_halflength | ( | ) | const [inline] |
returns the scaling factor along the second principal axis.
Definition at line 55 of file vgl_ellipsoid_3d.h.
T vgl_ellipsoid_3d< T >::z_halflength | ( | ) | const [inline] |
returns the scaling factor along the third principal axis.
Definition at line 57 of file vgl_ellipsoid_3d.h.
vgl_point_3d<T> vgl_ellipsoid_3d< T >::center_ [private] |
Definition at line 32 of file vgl_ellipsoid_3d.h.
vgl_rotation_3d<T> vgl_ellipsoid_3d< T >::orientation_ [private] |
Definition at line 36 of file vgl_ellipsoid_3d.h.
T vgl_ellipsoid_3d< T >::x_halflength_ [private] |
Definition at line 33 of file vgl_ellipsoid_3d.h.
T vgl_ellipsoid_3d< T >::y_halflength_ [private] |
Definition at line 34 of file vgl_ellipsoid_3d.h.
T vgl_ellipsoid_3d< T >::z_halflength_ [private] |
Definition at line 35 of file vgl_ellipsoid_3d.h.