inlib  1.2.0
Public Member Functions
inlib::vec3d Class Reference
Inheritance diagram for inlib::vec3d:
Inheritance graph
[legend]
Collaboration diagram for inlib::vec3d:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 vec3d ()
 vec3d (const double a_vec[3])
 vec3d (double a0, double a1, double a2)
virtual ~vec3d ()
 vec3d (const vec3d &a_from)
vec3doperator= (const vec3d &a_from)
 vec3d (const inlib::a3::vec< double > &a_from)
double & operator[] (unsigned int a_index)
const double & operator[] (unsigned int a_index) const
vec3d operator* (double a_v) const
vec3d operator+ (const vec3d &a_v) const
vec3d operator- (const vec3d &a_v) const
vec3doperator+= (const vec3d &a_v)
vec3doperator*= (double a_v)
vec3d operator- () const
bool operator== (const vec3d &a_v) const
bool operator!= (const vec3d &a_v) const
double x () const
double y () const
double z () const
double length () const
double normalize ()
vec3d cross (const vec3d &aV) const

Detailed Description

Definition at line 13 of file vec3d.


Constructor & Destructor Documentation

inlib::vec3d::vec3d ( ) [inline]

Definition at line 15 of file vec3d.

inlib::vec3d::vec3d ( const double  a_vec[3]) [inline]

Definition at line 16 of file vec3d.

inlib::vec3d::vec3d ( double  a0,
double  a1,
double  a2 
) [inline]

Definition at line 17 of file vec3d.

  : inlib::a3::vec<double>(a0,a1,a2){}
virtual inlib::vec3d::~vec3d ( ) [inline, virtual]

Definition at line 19 of file vec3d.

{}
inlib::vec3d::vec3d ( const vec3d a_from) [inline]

Definition at line 21 of file vec3d.

inlib::vec3d::vec3d ( const inlib::a3::vec< double > &  a_from) [inline]

Definition at line 27 of file vec3d.


Member Function Documentation

vec3d inlib::vec3d::cross ( const vec3d aV) const [inline]

Definition at line 86 of file vec3d.

                                     {
    return vec3d(m_vector[1] * aV.m_vector[2] - m_vector[2] * aV.m_vector[1],
                 m_vector[2] * aV.m_vector[0] - m_vector[0] * aV.m_vector[2],
                 m_vector[0] * aV.m_vector[1] - m_vector[1] * aV.m_vector[0]);
  }    
double inlib::vec3d::length ( ) const [inline]

Reimplemented from inlib::a3::vec< double >.

Definition at line 75 of file vec3d.

                        {
    return ::sqrt(m_vector[0] * m_vector[0] + 
                  m_vector[1] * m_vector[1] + 
                  m_vector[2] * m_vector[2]); 
  }
double inlib::vec3d::normalize ( ) [inline]

Reimplemented from inlib::a3::vec< double >.

Definition at line 80 of file vec3d.

                     {
    double norme = length();
    if(norme==0) return 0;
    divide(norme);
    return norme;
  }
bool inlib::vec3d::operator!= ( const vec3d a_v) const [inline]

Definition at line 70 of file vec3d.

{return !operator==(a_v);}
vec3d inlib::vec3d::operator* ( double  a_v) const [inline]

Definition at line 39 of file vec3d.

                                    {
    return vec3d(m_vector[0]*a_v,
                 m_vector[1]*a_v,
                 m_vector[2]*a_v);
  }    
vec3d& inlib::vec3d::operator*= ( double  a_v) [inline]

Definition at line 60 of file vec3d.

                                {   
    m_vector[0] *= a_v;
    m_vector[1] *= a_v;
    m_vector[2] *= a_v;
    return *this;
  }    
vec3d inlib::vec3d::operator+ ( const vec3d a_v) const [inline]

Definition at line 44 of file vec3d.

                                          {
    return vec3d(m_vector[0]+a_v[0],
                 m_vector[1]+a_v[1],
                 m_vector[2]+a_v[2]);
  }    
vec3d& inlib::vec3d::operator+= ( const vec3d a_v) [inline]

Definition at line 54 of file vec3d.

                                      {   
    m_vector[0] += a_v[0];
    m_vector[1] += a_v[1];
    m_vector[2] += a_v[2];
    return *this;
  }    
vec3d inlib::vec3d::operator- ( const vec3d a_v) const [inline]

Definition at line 49 of file vec3d.

                                          {
    return vec3d(m_vector[0]-a_v[0],
                 m_vector[1]-a_v[1],
                 m_vector[2]-a_v[2]);
  }    
vec3d inlib::vec3d::operator- ( ) const [inline]

Definition at line 66 of file vec3d.

                          {
    return vec3d(-m_vector[0],-m_vector[1],-m_vector[2]);
  }
vec3d& inlib::vec3d::operator= ( const vec3d a_from) [inline]

Definition at line 22 of file vec3d.

                                       {
    inlib::a3::vec<double>::operator=(a_from);
    return *this;
  }
bool inlib::vec3d::operator== ( const vec3d a_v) const [inline]

Definition at line 69 of file vec3d.

{return equal(a_v);}
double& inlib::vec3d::operator[] ( unsigned int  a_index) [inline]

Definition at line 31 of file vec3d.

                                           {
    //WARNING : no check on a_index.
    return m_vector[a_index];
  }
const double& inlib::vec3d::operator[] ( unsigned int  a_index) const [inline]

Definition at line 35 of file vec3d.

                                                       {
    //WARNING : no check on a_index.
    return m_vector[a_index];
  }
double inlib::vec3d::x ( ) const [inline]

Definition at line 72 of file vec3d.

{return m_vector[0];}
double inlib::vec3d::y ( ) const [inline]

Definition at line 73 of file vec3d.

{return m_vector[1];}
double inlib::vec3d::z ( ) const [inline]

Definition at line 74 of file vec3d.

{return m_vector[2];}

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