osg::Vec4d Class Reference

General purpose double quad. More...

List of all members.

Public Types

enum  { num_components = 4 }
 Number of vector components. More...
typedef double value_type
 Type of Vec class.

Public Member Functions

 Vec4d ()
 Vec4d (value_type x, value_type y, value_type z, value_type w)
 Vec4d (const Vec3d &v3, value_type w)
 Vec4d (const Vec4f &vec)
 operator Vec4f () const
bool operator== (const Vec4d &v) const
bool operator!= (const Vec4d &v) const
bool operator< (const Vec4d &v) const
value_typeptr ()
const value_typeptr () const
void set (value_type x, value_type y, value_type z, value_type w)
value_typeoperator[] (unsigned int i)
value_type operator[] (unsigned int i) const
value_typex ()
value_typey ()
value_typez ()
value_typew ()
value_type x () const
value_type y () const
value_type z () const
value_type w () const
value_typer ()
value_typeg ()
value_typeb ()
value_typea ()
value_type r () const
value_type g () const
value_type b () const
value_type a () const
unsigned int asABGR () const
unsigned int asRGBA () const
bool valid () const
bool isNaN () const
value_type operator * (const Vec4d &rhs) const
 Dot product.
Vec4d operator * (value_type rhs) const
 Multiply by scalar.
Vec4doperator *= (value_type rhs)
 Unary multiply by scalar.
Vec4d operator/ (value_type rhs) const
 Divide by scalar.
Vec4doperator/= (value_type rhs)
 Unary divide by scalar.
Vec4d operator+ (const Vec4d &rhs) const
 Binary vector add.
Vec4doperator+= (const Vec4d &rhs)
 Unary vector add.
Vec4d operator- (const Vec4d &rhs) const
 Binary vector subtract.
Vec4doperator-= (const Vec4d &rhs)
 Unary vector subtract.
const Vec4d operator- () const
 Negation operator.
value_type length () const
 Length of the vector = sqrt( vec .
value_type length2 () const
 Length squared of the vector = vec .
value_type normalize ()
 Normalize the vector so that it has length unity.

Public Attributes

value_type _v [4]
 Vec member varaible.


Detailed Description

General purpose double quad.

Uses include representation of color coordinates. No support yet added for double * Vec4d - is it necessary? Need to define a non-member non-friend operator* etc. Vec4d * double is okay


Member Typedef Documentation

typedef double osg::Vec4d::value_type

Type of Vec class.


Member Enumeration Documentation

anonymous enum

Number of vector components.

Enumerator:
num_components 


Constructor & Destructor Documentation

osg::Vec4d::Vec4d (  )  [inline]

osg::Vec4d::Vec4d ( value_type  x,
value_type  y,
value_type  z,
value_type  w 
) [inline]

osg::Vec4d::Vec4d ( const Vec3d v3,
value_type  w 
) [inline]

osg::Vec4d::Vec4d ( const Vec4f vec  )  [inline]


Member Function Documentation

osg::Vec4d::operator Vec4f (  )  const [inline]

bool osg::Vec4d::operator== ( const Vec4d v  )  const [inline]

bool osg::Vec4d::operator!= ( const Vec4d v  )  const [inline]

bool osg::Vec4d::operator< ( const Vec4d v  )  const [inline]

value_type* osg::Vec4d::ptr (  )  [inline]

const value_type* osg::Vec4d::ptr (  )  const [inline]

void osg::Vec4d::set ( value_type  x,
value_type  y,
value_type  z,
value_type  w 
) [inline]

value_type& osg::Vec4d::operator[] ( unsigned int  i  )  [inline]

value_type osg::Vec4d::operator[] ( unsigned int  i  )  const [inline]

value_type& osg::Vec4d::x (  )  [inline]

value_type& osg::Vec4d::y (  )  [inline]

value_type& osg::Vec4d::z (  )  [inline]

value_type& osg::Vec4d::w (  )  [inline]

value_type osg::Vec4d::x (  )  const [inline]

value_type osg::Vec4d::y (  )  const [inline]

value_type osg::Vec4d::z (  )  const [inline]

value_type osg::Vec4d::w (  )  const [inline]

value_type& osg::Vec4d::r (  )  [inline]

value_type& osg::Vec4d::g (  )  [inline]

value_type& osg::Vec4d::b (  )  [inline]

value_type& osg::Vec4d::a (  )  [inline]

value_type osg::Vec4d::r (  )  const [inline]

value_type osg::Vec4d::g (  )  const [inline]

value_type osg::Vec4d::b (  )  const [inline]

value_type osg::Vec4d::a (  )  const [inline]

unsigned int osg::Vec4d::asABGR (  )  const [inline]

unsigned int osg::Vec4d::asRGBA (  )  const [inline]

bool osg::Vec4d::valid (  )  const [inline]

bool osg::Vec4d::isNaN (  )  const [inline]

value_type osg::Vec4d::operator * ( const Vec4d rhs  )  const [inline]

Dot product.

Vec4d osg::Vec4d::operator * ( value_type  rhs  )  const [inline]

Multiply by scalar.

Vec4d& osg::Vec4d::operator *= ( value_type  rhs  )  [inline]

Unary multiply by scalar.

Vec4d osg::Vec4d::operator/ ( value_type  rhs  )  const [inline]

Divide by scalar.

Vec4d& osg::Vec4d::operator/= ( value_type  rhs  )  [inline]

Unary divide by scalar.

Vec4d osg::Vec4d::operator+ ( const Vec4d rhs  )  const [inline]

Binary vector add.

Vec4d& osg::Vec4d::operator+= ( const Vec4d rhs  )  [inline]

Unary vector add.

Slightly more efficient because no temporary intermediate object.

Vec4d osg::Vec4d::operator- ( const Vec4d rhs  )  const [inline]

Binary vector subtract.

Vec4d& osg::Vec4d::operator-= ( const Vec4d rhs  )  [inline]

Unary vector subtract.

const Vec4d osg::Vec4d::operator- (  )  const [inline]

Negation operator.

Returns the negative of the Vec4d.

value_type osg::Vec4d::length (  )  const [inline]

Length of the vector = sqrt( vec .

vec )

value_type osg::Vec4d::length2 (  )  const [inline]

Length squared of the vector = vec .

vec

value_type osg::Vec4d::normalize (  )  [inline]

Normalize the vector so that it has length unity.

Returns the previous length of the vector.


Member Data Documentation

value_type osg::Vec4d::_v[4]

Vec member varaible.


The documentation for this class was generated from the following file:
Generated at Sun Oct 14 02:12:19 2007 for the OpenSceneGraph by doxygen 1.5.3.