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

SbVec2d Class Reference
[Base classes]

#include <Inventor/SbLinear.h>

List of all members.


Detailed Description

The SbVec2d class is a 2 dimensional vector with double precision floating point coordinates.

This vector class is used by many other classes in Coin. It provides storage for a vector in 2 dimensions aswell as simple floating point arithmetic operations on this vector.

See also:
SbVec2s, SbVec2f, SbVec3s, SbVec3f, SbVec3d, SbVec4f, SbVec4d.


Public Member Functions

 SbVec2d (void)
 SbVec2d (const double v[2])
 SbVec2d (const double x, const double y)
double dot (const SbVec2d &v) const
SbBool equals (const SbVec2d &v, const double tolerance) const
const double * getValue (void) const
void getValue (double &x, double &y) const
double length (void) const
void negate (void)
double normalize (void)
SbVec2dsetValue (const double v[2])
SbVec2dsetValue (const double x, const double y)
double & operator[] (const int i)
const double & operator[] (const int i) const
SbVec2doperator *= (const double d)
SbVec2doperator/= (const double d)
SbVec2doperator+= (const SbVec2d &u)
SbVec2doperator-= (const SbVec2d &u)
SbVec2d operator- (void) const
void print (FILE *fp) const

Friends

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


Constructor & Destructor Documentation

SbVec2d::SbVec2d void   ) 
 

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

SbVec2d::SbVec2d const double  v[2]  ) 
 

Constructs an SbVec2d instance with initial values from v.

SbVec2d::SbVec2d const double  x,
const double  y
 

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


Member Function Documentation

double SbVec2d::dot const SbVec2d v  )  const
 

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

SbBool SbVec2d::equals const SbVec2d v,
const double  tolerance
const
 

Compares the vector with v and returns TRUE if the distance between the vectors is smaller or equal to the square root of tolerance.

const double * SbVec2d::getValue void   )  const
 

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

See also:
setValue().

void SbVec2d::getValue double &  x,
double &  y
const
 

Returns the x and y coordinates of the vector.

See also:
setValue().

double SbVec2d::length void   )  const
 

Return length of vector.

void SbVec2d::negate void   ) 
 

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

double SbVec2d::normalize void   ) 
 

Normalize the vector to unit length. Return value is the original length of the vector before normalization.

SbVec2d & SbVec2d::setValue const double  v[2]  ) 
 

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

See also:
getValue().

SbVec2d & SbVec2d::setValue const double  x,
const double  y
 

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

See also:
getValue().

double & SbVec2d::operator[] const int  i  ) 
 

Index operator. Returns modifiable x or y coordinate.

See also:
getValue() and setValue().

const double & SbVec2d::operator[] const int  i  )  const
 

Index operator. Returns x or y coordinate.

See also:
getValue().

SbVec2d & SbVec2d::operator *= const double  d  ) 
 

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

SbVec2d & SbVec2d::operator/= const double  d  ) 
 

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

SbVec2d & SbVec2d::operator+= const SbVec2d u  ) 
 

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

SbVec2d & SbVec2d::operator-= const SbVec2d u  ) 
 

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

SbVec2d SbVec2d::operator- void   )  const
 

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

See also:
negate().

void SbVec2d::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

SbVec2d operator * const SbVec2d v,
const double  d
[friend]
 

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

SbVec2d operator * const double  d,
const SbVec2d v
[friend]
 

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

SbVec2d operator/ const SbVec2d v,
const double  d
[friend]
 

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

SbVec2d operator+ const SbVec2d v1,
const SbVec2d v2
[friend]
 

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

SbVec2d operator- const SbVec2d v1,
const SbVec2d v2
[friend]
 

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

int operator== const SbVec2d v1,
const SbVec2d v2
[friend]
 

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

See also:
equals().

int operator!= const SbVec2d v1,
const SbVec2d v2
[friend]
 

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

See also:
equals().


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

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

Generated on Tue Apr 17 04:40:27 2007 for Coin by Doxygen. 1.4.6