OpenSceneGraph 3.6.5
osg::Vec3b Class Reference

General purpose float triple. More...

#include <Vec3b>

Public Types

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

Public Member Functions

 Vec3b ()
 Constructor that sets all components of the vector to zero.
 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]

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

◆ value_type

typedef signed char osg::Vec3b::value_type

Data type of vector components.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Number of vector components.

Enumerator
num_components 

Constructor & Destructor Documentation

◆ Vec3b() [1/2]

osg::Vec3b::Vec3b ( )
inline

Constructor that sets all components of the vector to zero.

References _v.

Referenced by operator!=(), operator*(), operator*=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), operator/=(), operator<(), operator==(), and set().

◆ Vec3b() [2/2]

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

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

Member Function Documentation

◆ b() [1/2]

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

References _v.

Referenced by set(), and Vec3b().

◆ b() [2/2]

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

References _v.

◆ g() [1/2]

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

References _v.

Referenced by set(), and Vec3b().

◆ g() [2/2]

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

References _v.

◆ operator!=()

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

References _v, and Vec3b().

◆ operator*()

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

Multiply by scalar.

References Vec3b().

◆ operator*=()

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

Unary multiply by scalar.

References _v, and Vec3b().

◆ operator+()

Vec3b osg::Vec3b::operator+ ( const Vec3b & rhs) const
inline

Binary vector add.

References _v, and Vec3b().

◆ operator+=()

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

Unary vector add.

Slightly more efficient because no temporary intermediate object.

References _v, and Vec3b().

◆ operator-()

Vec3b osg::Vec3b::operator- ( const Vec3b & rhs) const
inline

Binary vector subtract.

References _v, and Vec3b().

◆ operator-=()

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

Unary vector subtract.

References _v, and Vec3b().

◆ operator/()

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

Divide by scalar.

References Vec3b().

◆ operator/=()

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

Unary divide by scalar.

References Vec3b().

◆ operator<()

bool osg::Vec3b::operator< ( const Vec3b & v) const
inline

References _v, and Vec3b().

◆ operator==()

bool osg::Vec3b::operator== ( const Vec3b & v) const
inline

References _v, and Vec3b().

◆ operator[]() [1/2]

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

References _v.

◆ operator[]() [2/2]

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

References _v.

◆ ptr() [1/2]

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

References _v.

◆ ptr() [2/2]

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

References _v.

◆ r() [1/2]

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

References _v.

Referenced by set(), and Vec3b().

◆ r() [2/2]

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

References _v.

◆ set() [1/2]

void osg::Vec3b::set ( const Vec3b & rhs)
inline

References _v, and Vec3b().

◆ set() [2/2]

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

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

◆ x() [1/2]

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

References _v.

◆ x() [2/2]

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

References _v.

◆ y() [1/2]

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

References _v.

◆ y() [2/2]

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

References _v.

◆ z() [1/2]

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

References _v.

◆ z() [2/2]

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

References _v.

Member Data Documentation

◆ _v


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

osg logo
Generated at Sun Jul 20 2025 00:00:00 for the OpenSceneGraph by doxygen 1.14.0.