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

General purpose float triple. More...

Public Types

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

Public Member Functions

 Vec3b ()
 Constructor that sets all components of the vector to zero. More...
 
 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. More...
 
Vec3boperator*= (float rhs)
 Unary multiply by scalar. More...
 
Vec3b operator/ (float rhs) const
 Divide by scalar. More...
 
Vec3boperator/= (float rhs)
 Unary divide by scalar. More...
 
Vec3b operator+ (const Vec3b &rhs) const
 Binary vector add. More...
 
Vec3boperator+= (const Vec3b &rhs)
 Unary vector add. More...
 
Vec3b operator- (const Vec3b &rhs) const
 Binary vector subtract. More...
 
Vec3boperator-= (const Vec3b &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 * Vec3b - is it necessary? Need to define a non-member non-friend operator* etc. Vec3b * float is okay

Member Typedef Documentation

typedef signed char osg::Vec3b::value_type

Data type of vector components.

Member Enumeration Documentation

anonymous enum

Number of vector components.

Enumerator
num_components 

Constructor & Destructor Documentation

osg::Vec3b::Vec3b ( )
inline

Constructor that sets all components of the vector to zero.

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

Member Function Documentation

value_type& osg::Vec3b::b ( )
inline
value_type osg::Vec3b::b ( ) const
inline
value_type& osg::Vec3b::g ( )
inline
value_type osg::Vec3b::g ( ) const
inline
bool osg::Vec3b::operator!= ( const Vec3b v) 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+ ( 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.

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

Divide by scalar.

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

Unary divide by scalar.

bool osg::Vec3b::operator< ( const Vec3b v) const
inline
bool osg::Vec3b::operator== ( const Vec3b v) const
inline
value_type& osg::Vec3b::operator[] ( unsigned int  i)
inline
value_type osg::Vec3b::operator[] ( unsigned int  i) const
inline
value_type* osg::Vec3b::ptr ( )
inline
const value_type* osg::Vec3b::ptr ( ) const
inline
value_type& osg::Vec3b::r ( )
inline
value_type osg::Vec3b::r ( ) 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::x ( )
inline
value_type osg::Vec3b::x ( ) const
inline
value_type& osg::Vec3b::y ( )
inline
value_type osg::Vec3b::y ( ) const
inline
value_type& osg::Vec3b::z ( )
inline
value_type osg::Vec3b::z ( ) const
inline

Member Data Documentation

value_type osg::Vec3b::_v[3]

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

osg logo
Generated at Wed Nov 11 2015 22:14:47 for the OpenSceneGraph by doxygen 1.8.10.