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

General purpose float triple. More...

Public Types

enum  { num_components = 3 }
 Number of vector components. More...
 
typedef unsigned char value_type
 Data type of vector components. More...
 

Public Member Functions

 Vec3ub ()
 Constructor that sets all components of the vector to zero. More...
 
 Vec3ub (value_type r, value_type g, value_type b)
 
bool operator== (const Vec3ub &v) const
 
bool operator!= (const Vec3ub &v) const
 
bool operator< (const Vec3ub &v) const
 
value_typeptr ()
 
const value_typeptr () const
 
void set (value_type r, value_type g, value_type b)
 
void set (const Vec3ub &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
 
Vec3ub operator* (float rhs) const
 Multiply by scalar. More...
 
Vec3uboperator*= (float rhs)
 Unary multiply by scalar. More...
 
Vec3ub operator/ (float rhs) const
 Divide by scalar. More...
 
Vec3uboperator/= (float rhs)
 Unary divide by scalar. More...
 
Vec3ub operator+ (const Vec3ub &rhs) const
 Binary vector add. More...
 
Vec3uboperator+= (const Vec3ub &rhs)
 Unary vector add. More...
 
Vec3ub operator- (const Vec3ub &rhs) const
 Binary vector subtract. More...
 
Vec3uboperator-= (const Vec3ub &rhs)
 Unary vector subtract. More...
 

Public Attributes

value_type _v [3]
 

Detailed Description

General purpose float triple.

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

Member Typedef Documentation

◆ value_type

typedef unsigned char osg::Vec3ub::value_type

Data type of vector components.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Number of vector components.

Enumerator
num_components 

Constructor & Destructor Documentation

◆ Vec3ub() [1/2]

osg::Vec3ub::Vec3ub ( )
inline

Constructor that sets all components of the vector to zero.

Referenced by osg::componentDivide(), osg::componentMultiply(), operator+(), and operator-().

◆ Vec3ub() [2/2]

osg::Vec3ub::Vec3ub ( value_type  r,
value_type  g,
value_type  b 
)
inline

References b(), g(), and r().

Member Function Documentation

◆ b() [1/2]

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

Referenced by set(), and Vec3ub().

◆ b() [2/2]

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

◆ g() [1/2]

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

Referenced by set(), and Vec3ub().

◆ g() [2/2]

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

◆ operator!=()

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

References _v.

◆ operator*()

Vec3ub osg::Vec3ub::operator* ( float  rhs) const
inline

Multiply by scalar.

◆ operator*=()

Vec3ub& osg::Vec3ub::operator*= ( float  rhs)
inline

Unary multiply by scalar.

◆ operator+()

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

Binary vector add.

References _v, and Vec3ub().

◆ operator+=()

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

Unary vector add.

Slightly more efficient because no temporary intermediate object.

References _v.

◆ operator-()

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

Binary vector subtract.

References _v, and Vec3ub().

◆ operator-=()

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

Unary vector subtract.

References _v.

◆ operator/()

Vec3ub osg::Vec3ub::operator/ ( float  rhs) const
inline

Divide by scalar.

◆ operator/=()

Vec3ub& osg::Vec3ub::operator/= ( float  rhs)
inline

Unary divide by scalar.

◆ operator<()

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

References _v.

◆ operator==()

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

References _v.

◆ operator[]() [1/2]

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

◆ operator[]() [2/2]

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

◆ ptr() [1/2]

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

References _v.

◆ ptr() [2/2]

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

References _v.

◆ r() [1/2]

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

Referenced by set(), and Vec3ub().

◆ r() [2/2]

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

◆ set() [1/2]

void osg::Vec3ub::set ( value_type  r,
value_type  g,
value_type  b 
)
inline

References b(), g(), and r().

◆ set() [2/2]

void osg::Vec3ub::set ( const Vec3ub rhs)
inline

◆ x() [1/2]

value_type& osg::Vec3ub::x ( )
inline

◆ x() [2/2]

value_type osg::Vec3ub::x ( ) const
inline

◆ y() [1/2]

value_type& osg::Vec3ub::y ( )
inline

◆ y() [2/2]

value_type osg::Vec3ub::y ( ) const
inline

◆ z() [1/2]

value_type& osg::Vec3ub::z ( )
inline

◆ z() [2/2]

value_type osg::Vec3ub::z ( ) const
inline

Member Data Documentation

◆ _v

value_type osg::Vec3ub::_v[3]

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