Coin Logo http://www.sim.no
http://www.coin3d.org

Public Member Functions | Friends | List of all members
SbVec2s Class Reference

The SbVec2s class is a 2 dimensional vector with short integer coordinates.This vector class is used by many other classes in Coin. It provides storage for a vector in 2 dimensions as well as simple integer arithmetic operations. More...

#include <Inventor/SbLinear.h>

Public Member Functions

 SbVec2s (void)
 
 SbVec2s (const short v[2])
 
 SbVec2s (const short x, const short y)
 
 SbVec2s (const SbVec2us &v)
 
 SbVec2s (const SbVec2b &v)
 
 SbVec2s (const SbVec2i32 &v)
 
 SbVec2s (const SbVec2f &v)
 
 SbVec2s (const SbVec2d &v)
 
int32_t dot (const SbVec2s &v) const
 
const short * getValue (void) const
 
void getValue (short &x, short &y) const
 
void negate (void)
 
SbVec2ssetValue (const short v[2])
 
SbVec2ssetValue (short x, short y)
 
SbVec2ssetValue (const SbVec2us &v)
 
SbVec2ssetValue (const SbVec2b &v)
 
SbVec2ssetValue (const SbVec2i32 &v)
 
SbVec2ssetValue (const SbVec2f &v)
 
SbVec2ssetValue (const SbVec2d &v)
 
short & operator[] (const int i)
 
const short & operator[] (const int i) const
 
SbVec2soperator*= (int d)
 
SbVec2soperator*= (double d)
 
SbVec2soperator/= (int d)
 
SbVec2soperator/= (double d)
 
SbVec2soperator+= (const SbVec2s &u)
 
SbVec2soperator-= (const SbVec2s &u)
 
SbVec2s operator- (void) const
 
void print (FILE *fp) const
 

Friends

SbVec2s operator* (const SbVec2s &v, int d)
 
SbVec2s operator* (const SbVec2s &v, double d)
 
SbVec2s operator* (int d, const SbVec2s &v)
 
SbVec2s operator* (double d, const SbVec2s &v)
 
SbVec2s operator/ (const SbVec2s &v, int d)
 
SbVec2s operator/ (const SbVec2s &v, double d)
 
SbVec2s operator+ (const SbVec2s &v1, const SbVec2s &v2)
 
SbVec2s operator- (const SbVec2s &v1, const SbVec2s &v2)
 
int operator== (const SbVec2s &v1, const SbVec2s &v2)
 
int operator!= (const SbVec2s &v1, const SbVec2s &v2)
 

Detailed Description

The SbVec2s class is a 2 dimensional vector with short integer coordinates.

This vector class is used by many other classes in Coin. It provides storage for a vector in 2 dimensions as well as simple integer arithmetic operations.

See also
SbVec3s, SbVec4s, SbVec2b, SbVec2ub, SbVec2us, SbVec2i32, SbVec2ui32

Constructor & Destructor Documentation

◆ SbVec2s() [1/8]

SbVec2s::SbVec2s ( void  )

The default constructor does nothing. The vector coordinates will be uninitialized until you do a setValue().

Referenced by operator-().

◆ SbVec2s() [2/8]

SbVec2s::SbVec2s ( const short  v[2])

Constructs an SbVec2s instance with initial values from v.

◆ SbVec2s() [3/8]

SbVec2s::SbVec2s ( const short  x,
const short  y 
)

Constructs an SbVec2s instance with the initial vector endpoints from x and y.

◆ SbVec2s() [4/8]

SbVec2s::SbVec2s ( const SbVec2us v)
inlineexplicit

Sets this vector to the unsigned short integer precision vector v, converting the vector to an short integer precision vector.

Since
Coin-2.5

◆ SbVec2s() [5/8]

SbVec2s::SbVec2s ( const SbVec2b v)
inlineexplicit

Sets this vector to the 8-bit integer precision vector v, converting the vector to an short integer precision vector.

Since
Coin-2.5

◆ SbVec2s() [6/8]

SbVec2s::SbVec2s ( const SbVec2i32 v)
inlineexplicit

Sets this vector to the unsigned integer precision vector v, converting the vector to an short integer precision vector.

Since
Coin-2.5

◆ SbVec2s() [7/8]

SbVec2s::SbVec2s ( const SbVec2f v)
inlineexplicit

Sets this vector to the floating point precision vector v, converting the vector to an short integer precision vector.

Since
Coin-2.5

◆ SbVec2s() [8/8]

SbVec2s::SbVec2s ( const SbVec2d v)
inlineexplicit

Sets this vector to the double floating point precision vector v, converting the vector to an short integer precision vector.

Since
Coin-2.5

Member Function Documentation

◆ dot()

int32_t SbVec2s::dot ( const SbVec2s v) const

Calculates and returns the result of taking the dot product of this vector and v.

◆ getValue() [1/2]

const short * SbVec2s::getValue ( void  ) const

Returns a pointer to an array of two floats containing the x and y coordinates of the vector.

See also
setValue().

Referenced by SoTextureCubeMap::doAction().

◆ getValue() [2/2]

void SbVec2s::getValue ( short &  x,
short &  y 
) const

Returns the x and y coordinates of the vector.

See also
setValue().

◆ negate()

void SbVec2s::negate ( void  )

Negate the vector (i.e. point it in the opposite direction).

◆ setValue() [1/7]

SbVec2s & SbVec2s::setValue ( const short  v[2])

Set new x and y coordinates for the vector from v. Returns reference to self.

See also
getValue().

Referenced by SbBox2s::extendBy(), SbImage::getValue(), SbViewportRegion::getViewportOriginPixels(), SbBox2s::makeEmpty(), SbBox2s::setBounds(), and SbViewportRegion::setWindowSize().

◆ setValue() [2/7]

SbVec2s & SbVec2s::setValue ( short  x,
short  y 
)

Set new x and y coordinates for the vector. Returns reference to self.

See also
getValue().

◆ setValue() [3/7]

SbVec2s & SbVec2s::setValue ( const SbVec2us v)

Set new value from an SbVec2us instance. Returns reference to self.

Since
Coin-2.5

◆ setValue() [4/7]

SbVec2s & SbVec2s::setValue ( const SbVec2b v)

Set new value from an SbVec2b instance. Returns reference to self.

Since
Coin-2.5

◆ setValue() [5/7]

SbVec2s & SbVec2s::setValue ( const SbVec2i32 v)

Set new value from an SbVec2i32 instance. Returns reference to self.

Since
Coin-2.5

◆ setValue() [6/7]

SbVec2s & SbVec2s::setValue ( const SbVec2f v)
Since
Coin-2.5

References SoDebugError::post().

◆ setValue() [7/7]

SbVec2s & SbVec2s::setValue ( const SbVec2d v)
Since
Coin-2.5

References SoDebugError::post().

◆ operator[]() [1/2]

short & SbVec2s::operator[] ( const int  i)

Index operator. Returns modifiable x or y coordinate.

See also
getValue() and setValue().

References SoDebugError::postWarning().

◆ operator[]() [2/2]

const short & SbVec2s::operator[] ( const int  i) const

Index operator. Returns x or y coordinate.

See also
getValue().

References SoDebugError::postWarning().

◆ operator*=() [1/2]

SbVec2s & SbVec2s::operator*= ( int  d)

Multiply components of vector with value d. Returns reference to self.

◆ operator*=() [2/2]

SbVec2s & SbVec2s::operator*= ( double  d)

Multiply components of vector with value d. Returns reference to self.

◆ operator/=() [1/2]

SbVec2s & SbVec2s::operator/= ( int  d)

Divides components of vector with value d. Returns reference to self.

References SoDebugError::postWarning().

◆ operator/=() [2/2]

SbVec2s & SbVec2s::operator/= ( double  d)

Divides components of vector with value d. Returns reference to self.

References SoDebugError::postWarning().

◆ operator+=()

SbVec2s & SbVec2s::operator+= ( const SbVec2s u)

Adds this vector and vector u. Returns reference to self.

◆ operator-=()

SbVec2s & SbVec2s::operator-= ( const SbVec2s u)

Subtracts vector u from this vector. Returns reference to self.

◆ operator-()

SbVec2s SbVec2s::operator- ( void  ) const

Non-destructive negation operator. Returns a new SbVec2s instance which points in the opposite direction of this vector.

See also
negate().

References SbVec2s().

◆ print()

void SbVec2s::print ( FILE *  fp) const

Dump the state of this object to the file stream. Only works in debug version of library, method does nothing in an optimized compile.

Referenced by SbViewportRegion::print().

Friends And Related Function Documentation

◆ operator* [1/4]

SbVec2s operator* ( const SbVec2s v,
int  d 
)
friend

Returns an SbVec2s instance which is the components of vector v multiplied with d.

◆ operator* [2/4]

SbVec2s operator* ( const SbVec2s v,
double  d 
)
friend

Returns an SbVec2s instance which is the components of vector v multiplied with d.

◆ operator* [3/4]

SbVec2s operator* ( int  d,
const SbVec2s v 
)
friend

Returns an SbVec2s instance which is the components of vector v multiplied with d.

◆ operator* [4/4]

SbVec2s operator* ( double  d,
const SbVec2s v 
)
friend

Returns an SbVec2s instance which is the components of vector v multiplied with d.

◆ operator/ [1/2]

SbVec2s operator/ ( const SbVec2s v,
int  d 
)
friend

Returns an SbVec2s instance which is the components of vector v divided on d.

◆ operator/ [2/2]

SbVec2s operator/ ( const SbVec2s v,
double  d 
)
friend

Returns an SbVec2s instance which is the components of vector v divided on d.

◆ operator+

SbVec2s operator+ ( const SbVec2s v1,
const SbVec2s v2 
)
friend

Returns an SbVec2s instance which is the sum of vectors v1 and v2.

◆ operator-

SbVec2s operator- ( const SbVec2s v1,
const SbVec2s v2 
)
friend

Returns an SbVec2s instance which is vector v2 subtracted from vector v1.

◆ operator==

int operator== ( const SbVec2s v1,
const SbVec2s v2 
)
friend

Returns 1 if v1 and v2 are equal, 0 otherwise.

◆ operator!=

int operator!= ( const SbVec2s v1,
const SbVec2s v2 
)
friend

Returns 1 if v1 and v2 are not equal, 0 if they are equal.


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

Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.

Generated on Fri Jul 20 2018 for Coin by Doxygen. 1.8.14