inlib  1.2.0
Public Member Functions
inlib::a3::line< T > Class Template Reference

Some 3D geometry /////////////////////////////////////////////////////////. More...

List of all members.

Public Member Functions

 line ()
 line (const vec< T > &a_p0, const vec< T > &a_p1)
virtual ~line ()
 line (const line &a_from)
lineoperator= (const line &a_from)
void set_value (const vec< T > &a_p0, const vec< T > &a_p1)
const vec< T > & position () const
const vec< T > & direction () const

Detailed Description

template<class T>
class inlib::a3::line< T >

Some 3D geometry /////////////////////////////////////////////////////////.

Definition at line 284 of file a3.


Constructor & Destructor Documentation

template<class T>
inlib::a3::line< T >::line ( ) [inline]

Definition at line 286 of file a3.

{}
template<class T>
inlib::a3::line< T >::line ( const vec< T > &  a_p0,
const vec< T > &  a_p1 
) [inline]

Definition at line 287 of file a3.

                                              {
    // Construct a line from two points lying on the line.  If you
    // want to construct a line from a position and a direction, use
    // line(p, p + d).
    // line is directed from p0 to p1.
    m_pos = a_p0;
    //m_dir = a_p1-a_p0;
    m_dir = a_p0;
    m_dir.multiply(-1);
    m_dir.add(a_p1);
    m_dir.normalize();
  }
template<class T>
virtual inlib::a3::line< T >::~line ( ) [inline, virtual]

Definition at line 299 of file a3.

{}
template<class T>
inlib::a3::line< T >::line ( const line< T > &  a_from) [inline]

Definition at line 301 of file a3.

  :m_pos(a_from.m_pos)
  ,m_dir(a_from.m_dir)
  {}

Member Function Documentation

template<class T>
const vec<T>& inlib::a3::line< T >::direction ( ) const [inline]

Definition at line 322 of file a3.

{return m_dir;}
template<class T>
line& inlib::a3::line< T >::operator= ( const line< T > &  a_from) [inline]

Definition at line 305 of file a3.

                                      {
    m_pos = a_from.m_pos;
    m_dir = a_from.m_dir;
    return *this;
  }
template<class T>
const vec<T>& inlib::a3::line< T >::position ( ) const [inline]

Definition at line 321 of file a3.

{return m_pos;}
template<class T>
void inlib::a3::line< T >::set_value ( const vec< T > &  a_p0,
const vec< T > &  a_p1 
) [inline]

Definition at line 311 of file a3.

                                                        {
    // Set that value!
    m_pos = a_p0;
    //m_dir = a_p1-a_p0;
    m_dir = a_p0;
    m_dir.multiply(-1);
    m_dir.add(a_p1);
    m_dir.normalize();
  }

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines