openscenegraph
osg::Vec2d Class Reference

#include <Vec2d>

Public Types

enum  { num_components = 2 }
typedef double value_type

Public Member Functions

 Vec2d ()
 Vec2d (value_type x, value_type y)
 Vec2d (const Vec2f &vec)
 operator Vec2f () const
bool operator== (const Vec2d &v) const
bool operator!= (const Vec2d &v) const
bool operator< (const Vec2d &v) const
value_typeptr ()
const value_typeptr () const
void set (value_type x, value_type y)
value_typeoperator[] (int i)
value_type operator[] (int i) const
value_typex ()
value_typey ()
value_type x () const
value_type y () const
bool valid () const
bool isNaN () const
value_type operator* (const Vec2d &rhs) const
const Vec2d operator* (value_type rhs) const
Vec2doperator*= (value_type rhs)
const Vec2d operator/ (value_type rhs) const
Vec2doperator/= (value_type rhs)
const Vec2d operator+ (const Vec2d &rhs) const
Vec2doperator+= (const Vec2d &rhs)
const Vec2d operator- (const Vec2d &rhs) const
Vec2doperator-= (const Vec2d &rhs)
const Vec2d operator- () const
value_type length () const
value_type length2 (void) const
value_type normalize ()

Public Attributes

value_type _v [2]

Detailed Description

General purpose double pair, uses include representation of texture coordinates. No support yet added for double * Vec2d - is it necessary? Need to define a non-member non-friend operator* etc. BTW: Vec2d * double is okay

Member Typedef Documentation

◆ value_type

typedef double osg::Vec2d::value_type

Data type of vector components.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Number of vector components.

Enumerator
num_components 

Constructor & Destructor Documentation

◆ Vec2d() [1/3]

osg::Vec2d::Vec2d ( )
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/=(), operator<(), and operator==().

◆ Vec2d() [2/3]

osg::Vec2d::Vec2d ( value_type x,
value_type y )
inline

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

◆ Vec2d() [3/3]

osg::Vec2d::Vec2d ( const Vec2f & vec)
inline

References _v, and osg::Vec2f::_v.

Member Function Documentation

◆ isNaN()

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

Returns true if at least one component has value NaN.

References _v, and osg::isNaN().

Referenced by valid().

◆ length()

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

Length of the vector = sqrt( vec . vec )

References _v.

Referenced by normalize().

◆ length2()

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

Length squared of the vector = vec . vec

References _v.

◆ normalize()

value_type osg::Vec2d::normalize ( )
inline

Normalize the vector so that it has length unity. Returns the previous length of the vector.

References _v, and length().

◆ operator Vec2f()

osg::Vec2d::operator Vec2f ( ) const
inline

References _v.

◆ operator!=()

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

References _v, and Vec2d().

◆ operator*() [1/2]

value_type osg::Vec2d::operator* ( const Vec2d & rhs) const
inline

Dot product.

References _v, and Vec2d().

◆ operator*() [2/2]

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

Multiply by scalar.

References _v, and Vec2d().

◆ operator*=()

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

Unary multiply by scalar.

References _v, and Vec2d().

◆ operator+()

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

Binary vector add.

References _v, and Vec2d().

◆ operator+=()

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

Unary vector add. Slightly more efficient because no temporary intermediate object.

References _v, and Vec2d().

◆ operator-() [1/2]

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

Negation operator. Returns the negative of the Vec2d.

References _v, and Vec2d().

◆ operator-() [2/2]

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

Binary vector subtract.

References _v, and Vec2d().

◆ operator-=()

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

Unary vector subtract.

References _v, and Vec2d().

◆ operator/()

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

Divide by scalar.

References _v, and Vec2d().

◆ operator/=()

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

Unary divide by scalar.

References _v, and Vec2d().

◆ operator<()

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

References _v, and Vec2d().

◆ operator==()

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

References _v, and Vec2d().

◆ operator[]() [1/2]

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

References _v.

◆ operator[]() [2/2]

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

References _v.

◆ ptr() [1/2]

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

References _v.

◆ ptr() [2/2]

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

References _v.

◆ set()

void osg::Vec2d::set ( value_type x,
value_type y )
inline

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

◆ valid()

bool osg::Vec2d::valid ( ) const
inline

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

References isNaN().

◆ x() [1/2]

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

References _v.

Referenced by set(), and Vec2d().

◆ x() [2/2]

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

References _v.

◆ y() [1/2]

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

References _v.

Referenced by set(), and Vec2d().

◆ y() [2/2]

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

References _v.

Member Data Documentation

◆ _v


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