/opt/ros/diamondback/stacks/graspit_simulator/graspit/graspit_source/include/matvec3D.h File Reference

Defines the classes: vec3, position, mat3, Quaternion, and transf. More...

#include <math.h>
#include <string.h>
#include <iostream>
#include <stack>
#include <Inventor/SbLinear.h>
#include <Inventor/nodes/SoTransform.h>
Include dependency graph for matvec3D.h:

Go to the source code of this file.

Classes

class  FlockTransf
 A class for easy storage and manipulation of Flock of Birds transform. More...
class  mat3
 A 3x3 matrix most often used for storing rotations. More...
class  position
 A 3-dimensional position and methods to operate on them. More...
class  Quaternion
 A 4-dimensional unit vector used to store a rotation. More...
class  transf
 A rigid body transformation. More...
class  vec3
 A 3-dimensional double vector and methods to operate on them. More...

Defines

#define _MATVEC_H_
#define MACHINE_ZERO   1.0e-9
#define resabs   1.0e-5

Typedefs

typedef double col_Mat4 [4][4]

Functions

transf coordinate_transf (const position &o, const vec3 &xaxis, const vec3 &yaxis)
vec3 normalise (vec3 const &v)
double operator% (vec3 const &v, position const &p)
double operator% (position const &p, vec3 const &v)
double operator% (vec3 const &v1, vec3 const &v2)
position operator* (const position &p, const transf &tr)
vec3 operator* (const vec3 &v, const transf &tr)
transf operator* (const transf &tr2, const transf &tr1)
mat3 operator* (double const &s, mat3 const &m)
position operator* (double d, position const &p)
vec3 operator* (vec3 const &v1, vec3 const &v2)
vec3 operator* (const mat3 &m, const vec3 &v)
vec3 operator* (vec3 const &v, double s)
vec3 operator* (double s, vec3 const &v)
position operator+ (position const &p1, position const &p2)
position operator+ (vec3 const &v, position const &p)
position operator+ (position const &p, vec3 const &v)
vec3 operator+ (vec3 const &v1, vec3 const &v2)
vec3 operator- (position const &p1, position const &p2)
position operator- (position const &p, vec3 const &v)
vec3 operator- (vec3 const &v)
vec3 operator- (vec3 const &v1, vec3 const &v2)
vec3 operator/ (vec3 const &v, double s)
vec3 operator> (const vec3 &v, const transf &tr)
transf rotate_transf (double angle, const vec3 &axis)
transf rotXYZ (double rx, double ry, double rz)
transf translate_transf (const vec3 &v)

Detailed Description

Defines the classes: vec3, position, mat3, Quaternion, and transf.

Definition in file matvec3D.h.


Define Documentation

#define _MATVEC_H_

Definition at line 1409 of file matvec3D.h.

#define MACHINE_ZERO   1.0e-9

Definition at line 44 of file matvec3D.h.

#define resabs   1.0e-5

Definition at line 45 of file matvec3D.h.


Typedef Documentation

typedef double col_Mat4[4][4]

Definition at line 47 of file matvec3D.h.


Function Documentation

transf coordinate_transf ( const position o,
const vec3 xaxis,
const vec3 yaxis 
)

Helper function that creates a tranform from the global frame to the new frame with its origin at position o, and with the given x and y axes.

Definition at line 1386 of file matvec3D.h.

vec3 normalise ( vec3 const &  v  ) 

Returns a new unit vector that is the normalized version of vector v.

Definition at line 779 of file matvec3D.h.

double operator% ( vec3 const &  v,
position const &  p 
)

Returns the dot product of vector v and position p.

Definition at line 720 of file matvec3D.h.

double operator% ( position const &  p,
vec3 const &  v 
)

Returns the dot product of vector v and position p.

Definition at line 713 of file matvec3D.h.

double operator% ( vec3 const &  v1,
vec3 const &  v2 
)

Returns the dot product of vectors v1 and v2.

Definition at line 585 of file matvec3D.h.

position operator* ( const position p,
const transf tr 
)

Returns the result of transforming position p with transform tr.

Definition at line 1344 of file matvec3D.h.

vec3 operator* ( const vec3 v,
const transf tr 
)

Returns a vector that is the result of rotating vector v using transform tr.

Definition at line 1328 of file matvec3D.h.

transf operator* ( const transf tr2,
const transf tr1 
)

Multiplies two transforms.

Definition at line 1317 of file matvec3D.h.

mat3 operator* ( double const &  s,
mat3 const &  m 
)

Scales matrix m by the scalar s.

Definition at line 1020 of file matvec3D.h.

position operator* ( double  d,
position const &  p 
)

Definition at line 914 of file matvec3D.h.

vec3 operator* ( vec3 const &  v1,
vec3 const &  v2 
)

Returns the cross product of vectors v1 and v2 ( v1 x v2 ).

Definition at line 739 of file matvec3D.h.

vec3 operator* ( const mat3 m,
const vec3 v 
)

Definition at line 727 of file matvec3D.h.

vec3 operator* ( vec3 const &  v,
double  s 
)

Returns a new vector that is the result of scaling this vector by s.

Definition at line 603 of file matvec3D.h.

vec3 operator* ( double  s,
vec3 const &  v 
)

Returns a new vector that is the result of scaling this vector by s.

Definition at line 594 of file matvec3D.h.

position operator+ ( position const &  p1,
position const &  p2 
)

Definition at line 908 of file matvec3D.h.

position operator+ ( vec3 const &  v,
position const &  p 
)

Returns the result of adding vector v to position p.

Definition at line 895 of file matvec3D.h.

position operator+ ( position const &  p,
vec3 const &  v 
)

Returns the result of adding vector v to position p.

Definition at line 881 of file matvec3D.h.

vec3 operator+ ( vec3 const &  v1,
vec3 const &  v2 
)

Returns the sum of vectors v1 and v2.

Definition at line 748 of file matvec3D.h.

vec3 operator- ( position const &  p1,
position const &  p2 
)

Returns the result of subtracting position p2 from position p1.

Definition at line 902 of file matvec3D.h.

position operator- ( position const &  p,
vec3 const &  v 
)

Returns the result of subtracting vector v from position p.

Definition at line 888 of file matvec3D.h.

vec3 operator- ( vec3 const &  v  ) 

Returns a vector that is the negative of vector v. (unary minus)

Definition at line 764 of file matvec3D.h.

vec3 operator- ( vec3 const &  v1,
vec3 const &  v2 
)

Returns the difference between vectors v1 and v2.

Definition at line 756 of file matvec3D.h.

vec3 operator/ ( vec3 const &  v,
double  s 
)

Returns a new vector that is the result of scaling this vector by 1/s.

Definition at line 772 of file matvec3D.h.

vec3 operator> ( const vec3 v,
const transf tr 
)

Definition at line 1334 of file matvec3D.h.

transf rotate_transf ( double  angle,
const vec3 axis 
)

Helper function that creates a tranform that has a rotation of angle radians about axis, and a zero translation.

Definition at line 1376 of file matvec3D.h.

transf rotXYZ ( double  rx,
double  ry,
double  rz 
)

Definition at line 1395 of file matvec3D.h.

transf translate_transf ( const vec3 v  ) 

Helper function that creates a transform with an identity rotation and a translation equal to vector v.

Definition at line 1366 of file matvec3D.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


graspit
Author(s):
autogenerated on Wed Jan 25 10:59:13 2012