Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

vgl_vector_3d< T > Class Template Reference

#include <vgl_vector_3d.h>

Inheritance diagram for vgl_vector_3d< T >:

Inheritance graph
[legend]
List of all members.

Detailed Description

template<class T>
class vgl_vector_3d< T >

Direction vector in Euclidean 3D space, templated by type of element.

(typically float or double). A vgl_vector_3d<T> represents the difference (or connecting vector) between two vgl_point_3d<T>s.

Use this class to do arithmetic (adding and scaling) in 3d geometric space.

Definition at line 29 of file vgl_vector_3d.h.

Public Member Functions

x () const
y () const
z () const
 vgl_vector_3d ()
 Creates the vector (0,0,0) of zero length.
 vgl_vector_3d (T vx, T vy, T vz)
 Creates the vector (vx,vy,vz).
 vgl_vector_3d (const T v[3])
 Creates the vector (vx,vy,vz).
void set (T vx, T vy, T vz)
 Assignment.
void set (T const v[3])
 Set x, y and z.
bool operator== (vgl_vector_3d< T >const &v) const
 Comparison.
bool operator!= (vgl_vector_3d< T >const &v) const
double length () const
 Return the length of this vector.
sqr_length () const
 Return the squared length of this vector.
vgl_vector_3d< T > orthogonal_vectors (double s)
 One-parameter family of unit vectors that are orthogonal to *this, v(s).

Public Attributes

x_
y_
z_


Constructor & Destructor Documentation

template<class T>
vgl_vector_3d< T >::vgl_vector_3d  )  [inline]
 

Creates the vector (0,0,0) of zero length.

Definition at line 40 of file vgl_vector_3d.h.

template<class T>
vgl_vector_3d< T >::vgl_vector_3d vx,
vy,
vz
[inline]
 

Creates the vector (vx,vy,vz).

Definition at line 43 of file vgl_vector_3d.h.

template<class T>
vgl_vector_3d< T >::vgl_vector_3d const T  v[3]  )  [inline]
 

Creates the vector (vx,vy,vz).

Definition at line 46 of file vgl_vector_3d.h.


Member Function Documentation

template<class T>
double vgl_vector_3d< T >::length  )  const
 

Return the length of this vector.

Definition at line 14 of file vgl_vector_3d.txx.

template<class T>
bool vgl_vector_3d< T >::operator!= vgl_vector_3d< T >const &  v  )  const [inline]
 

Definition at line 67 of file vgl_vector_3d.h.

template<class T>
bool vgl_vector_3d< T >::operator== vgl_vector_3d< T >const &  v  )  const [inline]
 

Comparison.

Definition at line 65 of file vgl_vector_3d.h.

template<class T>
vgl_vector_3d< T > vgl_vector_3d< T >::orthogonal_vectors double  s  ) 
 

One-parameter family of unit vectors that are orthogonal to *this, v(s).

The parameterization is such that 0<=s<1, v(0)==v(1)

Definition at line 22 of file vgl_vector_3d.txx.

template<class T>
void vgl_vector_3d< T >::set T const   v[3]  )  [inline]
 

Set x, y and z.

Definition at line 62 of file vgl_vector_3d.h.

template<class T>
void vgl_vector_3d< T >::set vx,
vy,
vz
[inline]
 

Assignment.

Definition at line 59 of file vgl_vector_3d.h.

template<class T>
T vgl_vector_3d< T >::sqr_length  )  const [inline]
 

Return the squared length of this vector.

Definition at line 73 of file vgl_vector_3d.h.

template<class T>
T vgl_vector_3d< T >::x  )  const [inline]
 

Definition at line 35 of file vgl_vector_3d.h.

template<class T>
T vgl_vector_3d< T >::y  )  const [inline]
 

Definition at line 36 of file vgl_vector_3d.h.

template<class T>
T vgl_vector_3d< T >::z  )  const [inline]
 

Definition at line 37 of file vgl_vector_3d.h.


Member Data Documentation

template<class T>
T vgl_vector_3d< T >::x_
 

Definition at line 32 of file vgl_vector_3d.h.

template<class T>
T vgl_vector_3d< T >::y_
 

Definition at line 33 of file vgl_vector_3d.h.

template<class T>
T vgl_vector_3d< T >::z_
 

Definition at line 34 of file vgl_vector_3d.h.


The documentation for this class was generated from the following files:
Generated on Thu Jan 10 14:39:29 2008 for core/vgl by  doxygen 1.4.4