osg::Vec3b Class Reference

General purpose float triple. More...

List of all members.

Public Types

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

Public Member Functions

 Vec3b ()
 Vec3b (value_type r, value_type g, value_type b)
bool operator== (const Vec3b &v) const
bool operator!= (const Vec3b &v) const
bool operator< (const Vec3b &v) const
value_typeptr ()
const value_typeptr () const
void set (value_type r, value_type g, value_type b)
void set (const Vec3b &rhs)
value_typeoperator[] (unsigned int i)
value_type operator[] (unsigned int i) const
value_typex ()
value_typey ()
value_typez ()
value_type x () const
value_type y () const
value_type z () const
value_typer ()
value_typeg ()
value_typeb ()
value_type r () const
value_type g () const
value_type b () const
Vec3b operator * (float rhs) const
 Multiply by scalar.
Vec3boperator *= (float rhs)
 Unary multiply by scalar.
Vec3b operator/ (float rhs) const
 Divide by scalar.
Vec3boperator/= (float rhs)
 Unary divide by scalar.
Vec3b operator+ (const Vec3b &rhs) const
 Binary vector add.
Vec3boperator+= (const Vec3b &rhs)
 Unary vector add.
Vec3b operator- (const Vec3b &rhs) const
 Binary vector subtract.
Vec3boperator-= (const Vec3b &rhs)
 Unary vector subtract.

Public Attributes

value_type _v [3]
 Vec member varaible.


Detailed Description

General purpose float triple.

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


Member Typedef Documentation

typedef char osg::Vec3b::value_type

Type of Vec class.


Member Enumeration Documentation

anonymous enum

Number of vector components.

Enumerator:
num_components 


Constructor & Destructor Documentation

osg::Vec3b::Vec3b (  )  [inline]

osg::Vec3b::Vec3b ( value_type  r,
value_type  g,
value_type  b 
) [inline]


Member Function Documentation

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

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

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

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

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

void osg::Vec3b::set ( value_type  r,
value_type  g,
value_type  b 
) [inline]

void osg::Vec3b::set ( const Vec3b rhs  )  [inline]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Vec3b osg::Vec3b::operator * ( float  rhs  )  const [inline]

Multiply by scalar.

Vec3b& osg::Vec3b::operator *= ( float  rhs  )  [inline]

Unary multiply by scalar.

Vec3b osg::Vec3b::operator/ ( float  rhs  )  const [inline]

Divide by scalar.

Vec3b& osg::Vec3b::operator/= ( float  rhs  )  [inline]

Unary divide by scalar.

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

Binary vector add.

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

Unary vector add.

Slightly more efficient because no temporary intermediate object.

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

Binary vector subtract.

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

Unary vector subtract.


Member Data Documentation

value_type osg::Vec3b::_v[3]

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.