OpenSceneGraph  3.0.1
Public Types | Public Member Functions | Public Attributes | List of all members
osg::Vec4f Class Reference

General purpose float quad. More...

Public Types

enum  { num_components = 4 }
 Number of vector components. More...
typedef float value_type
 Data type of vector components.

Public Member Functions

 Vec4f ()
 Constructor that sets all components of the vector to zero.
 Vec4f (value_type x, value_type y, value_type z, value_type w)
 Vec4f (const Vec3f &v3, value_type w)
bool operator== (const Vec4f &v) const
bool operator!= (const Vec4f &v) const
bool operator< (const Vec4f &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
 Returns true if all components have values that are not NaN.
bool isNaN () const
 Returns true if at least one component has value NaN.
value_type operator* (const Vec4f &rhs) const
 Dot product.
Vec4f operator* (value_type rhs) const
 Multiply by scalar.
Vec4foperator*= (value_type rhs)
 Unary multiply by scalar.
Vec4f operator/ (value_type rhs) const
 Divide by scalar.
Vec4foperator/= (value_type rhs)
 Unary divide by scalar.
Vec4f operator+ (const Vec4f &rhs) const
 Binary vector add.
Vec4foperator+= (const Vec4f &rhs)
 Unary vector add.
Vec4f operator- (const Vec4f &rhs) const
 Binary vector subtract.
Vec4foperator-= (const Vec4f &rhs)
 Unary vector subtract.
const Vec4f 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 variable.

Detailed Description

General purpose float quad.

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

Member Typedef Documentation

typedef float osg::Vec4f::value_type

Data type of vector components.

Member Enumeration Documentation

anonymous enum

Number of vector components.

Enumerator:
num_components 

Constructor & Destructor Documentation

osg::Vec4f::Vec4f ( )
inline

Constructor that sets all components of the vector to zero.

References _v.

Referenced by operator*(), operator+(), operator-(), and operator/().

osg::Vec4f::Vec4f ( value_type  x,
value_type  y,
value_type  z,
value_type  w 
)
inline

References _v, w(), x(), y(), and z().

osg::Vec4f::Vec4f ( const Vec3f v3,
value_type  w 
)
inline

References _v, and w().

Member Function Documentation

value_type& osg::Vec4f::a ( )
inline

References _v.

value_type osg::Vec4f::a ( ) const
inline

References _v.

unsigned int osg::Vec4f::asABGR ( ) const
inline

References _v, and osg::clampTo().

unsigned int osg::Vec4f::asRGBA ( ) const
inline

References _v, and osg::clampTo().

value_type& osg::Vec4f::b ( )
inline

References _v.

value_type osg::Vec4f::b ( ) const
inline

References _v.

value_type& osg::Vec4f::g ( )
inline

References _v.

value_type osg::Vec4f::g ( ) const
inline

References _v.

bool osg::Vec4f::isNaN ( ) const
inline

Returns true if at least one component has value NaN.

References _v.

Referenced by valid().

value_type osg::Vec4f::length ( ) const
inline

Length of the vector = sqrt( vec .

vec )

References _v.

Referenced by normalize().

value_type osg::Vec4f::length2 ( void  ) const
inline

Length squared of the vector = vec .

vec

References _v.

value_type osg::Vec4f::normalize ( )
inline

Normalize the vector so that it has length unity.

Returns the previous length of the vector.

References _v, and length().

bool osg::Vec4f::operator!= ( const Vec4f v) const
inline

References _v.

value_type osg::Vec4f::operator* ( const Vec4f rhs) const
inline

Dot product.

References _v.

Vec4f osg::Vec4f::operator* ( value_type  rhs) const
inline

Multiply by scalar.

References _v, and Vec4f().

Vec4f& osg::Vec4f::operator*= ( value_type  rhs)
inline

Unary multiply by scalar.

References _v.

Vec4f osg::Vec4f::operator+ ( const Vec4f rhs) const
inline

Binary vector add.

References _v, and Vec4f().

Vec4f& osg::Vec4f::operator+= ( const Vec4f rhs)
inline

Unary vector add.

Slightly more efficient because no temporary intermediate object.

References _v.

Vec4f osg::Vec4f::operator- ( const Vec4f rhs) const
inline

Binary vector subtract.

References _v, and Vec4f().

const Vec4f osg::Vec4f::operator- ( ) const
inline

Negation operator.

Returns the negative of the Vec4f.

References _v, and Vec4f().

Vec4f& osg::Vec4f::operator-= ( const Vec4f rhs)
inline

Unary vector subtract.

References _v.

Vec4f osg::Vec4f::operator/ ( value_type  rhs) const
inline

Divide by scalar.

References _v, and Vec4f().

Vec4f& osg::Vec4f::operator/= ( value_type  rhs)
inline

Unary divide by scalar.

References _v.

bool osg::Vec4f::operator< ( const Vec4f v) const
inline

References _v.

bool osg::Vec4f::operator== ( const Vec4f v) const
inline

References _v.

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

References _v.

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

References _v.

value_type* osg::Vec4f::ptr ( )
inline

References _v.

const value_type* osg::Vec4f::ptr ( ) const
inline

References _v.

value_type& osg::Vec4f::r ( )
inline

References _v.

value_type osg::Vec4f::r ( ) const
inline

References _v.

void osg::Vec4f::set ( value_type  x,
value_type  y,
value_type  z,
value_type  w 
)
inline
bool osg::Vec4f::valid ( ) const
inline

Returns true if all components have values that are not NaN.

References isNaN().

value_type& osg::Vec4f::w ( )
inline
value_type osg::Vec4f::w ( ) const
inline

References _v.

value_type& osg::Vec4f::x ( )
inline
value_type osg::Vec4f::x ( ) const
inline

References _v.

value_type& osg::Vec4f::y ( )
inline
value_type osg::Vec4f::y ( ) const
inline

References _v.

value_type& osg::Vec4f::z ( )
inline
value_type osg::Vec4f::z ( ) const
inline

References _v.

Member Data Documentation

value_type osg::Vec4f::_v[4]

The documentation for this class was generated from the following file:

osg logo
Generated at Tue Sep 4 2012 16:18:42 for the OpenSceneGraph by doxygen 1.8.1.2.