# SbVec3s Class Reference
[Base classes]

`#include <Inventor/SbLinear.h>`

List of all members.

## Detailed Description

The SbVec3s class is a 3 dimensional vector with short integer coordinates.

This vector class provides storage for a 3 dimensional vector as well as simple integer arithmetic operations.

Be aware that this class is an extension for Coin, and it is not available in the original SGI Open Inventor v2.1 API.

See also:
  SbVec2s, SbVec2f, SbVec3f, SbVec4f.

Since:
  Coin 2.0

  TGS Inventor ?.?

## Public Member Functions

| SbVec3s (void)
| SbVec3s (const short v[3])
| SbVec3s (const short x, const short y, const short z)
int32_t | dot (const SbVec3s &v) const
const short * | getValue (void) const
void | getValue (short &x, short &y, short &z) const
void | negate (void)
SbVec3s & | setValue (const short v[3])
SbVec3s & | setValue (const short x, const short y, const short z)
short & | operator[] (const int i)
const short & | operator[] (const int i) const
SbVec3s & | operator *= (int d)
SbVec3s & | operator *= (double d)
SbVec3s & | operator/= (int d)
SbVec3s & | operator/= (double d)
SbVec3s & | operator+= (const SbVec3s &u)
SbVec3s & | operator-= (const SbVec3s &u)
SbVec3s | operator- (void) const
void | print (FILE *fp) const

## Friends

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

## Constructor & Destructor Documentation

SbVec3s::SbVec3s | ( | void |  | ) |

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

SbVec3s::SbVec3s | ( | const short | v[3] | ) |

| Constructs an SbVec3s instance with initial values from v.

SbVec3s::SbVec3s | ( | const short | x,
|  | const short | y,
|  | const short | z
| ) |

| Constructs an SbVec3s instance with the initial vector endpoint set to <x,y,z>.

## Member Function Documentation

int32_t SbVec3s::dot | ( | const SbVec3s & | v | ) | const

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

const short * SbVec3s::getValue | ( | void |  | ) | const

Returns a pointer to an array of three shorts containing the x, y and z coordinates of the vector.

See also:
  setValue().

void SbVec3s::getValue | ( | short & | x,
|  | short & | y,
|  | short & | z
| ) | const

Returns the x, y and z coordinates of the vector.

See also:
  setValue().

void SbVec3s::negate | ( | void |  | ) |

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

SbVec3s & SbVec3s::setValue | ( | const short | v[3] | ) |

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

See also:
  getValue().

SbVec3s & SbVec3s::setValue | ( | const short | x,
|  | const short | y,
|  | const short | z
| ) |

Set new coordinates for the vector. Returns reference to self.

See also:
  getValue().

short & SbVec3s::operator[] | ( | const int | i | ) | `[inline]`

Index operator. Returns modifiable x, y or z coordinate of vector.

See also:
  getValue() and setValue().

short SbVec3s::operator[] | ( | const int | i | ) | const`[inline]`

Index operator. Returns x, y or z coordinate of vector.

See also:
  getValue() and setValue().

SbVec3s & SbVec3s::operator *= | ( | int | d | ) |

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

SbVec3s & SbVec3s::operator *= | ( | double | d | ) |

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

SbVec3s & SbVec3s::operator/= | ( | int | d | ) |

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

SbVec3s & SbVec3s::operator/= | ( | double | d | ) |

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

SbVec3s & SbVec3s::operator+= | ( | const SbVec3s & | u | ) |

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

SbVec3s & SbVec3s::operator-= | ( | const SbVec3s & | u | ) |

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

SbVec3s SbVec3s::operator- | ( | void |  | ) | const

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

See also:
  negate().

void SbVec3s::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.

## Friends And Related Function Documentation

SbVec3s operator * | ( | const SbVec3s & | v,
|  | int | d
| ) | `[friend]`

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

SbVec3s operator * | ( | const SbVec3s & | v,
|  | double | d
| ) | `[friend]`

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

SbVec3s operator * | ( | int | d,
|  | const SbVec3s & | v
| ) | `[friend]`

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

SbVec3s operator * | ( | double | d,
|  | const SbVec3s & | v
| ) | `[friend]`

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

SbVec3s operator/ | ( | const SbVec3s & | v,
|  | int | d
| ) | `[friend]`

| Returns an SbVec3s instance which is the components of vector v divided on the scalar factor d.

SbVec3s operator/ | ( | const SbVec3s & | v,
|  | double | d
| ) | `[friend]`

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

SbVec3s operator+ | ( | const SbVec3s & | v1,
|  | const SbVec3s & | v2
| ) | `[friend]`

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

SbVec3s operator- | ( | const SbVec3s & | v1,
|  | const SbVec3s & | v2
| ) | `[friend]`

| Returns an SbVec3s instance which is vector v2 subtracted from vector v1.

int operator== | ( | const SbVec3s & | v1,
|  | const SbVec3s & | v2
| ) | `[friend]`

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

int operator!= | ( | const SbVec3s & | v1,
|  | const SbVec3s & | 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:

- SbVec3s.h
- SbVec3s.cpp