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>
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) |
Defines the classes: vec3, position, mat3, Quaternion, and transf.
Definition in file matvec3D.h.
#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 double col_Mat4[4][4] |
Definition at line 47 of file matvec3D.h.
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.
Returns a new unit vector that is the normalized version of vector v.
Definition at line 779 of file matvec3D.h.
Returns the dot product of vector v and position p.
Definition at line 720 of file matvec3D.h.
Returns the dot product of vector v and position p.
Definition at line 713 of file matvec3D.h.
Returns the dot product of vectors v1 and v2.
Definition at line 585 of file matvec3D.h.
Returns the result of transforming position p with transform tr.
Definition at line 1344 of file matvec3D.h.
Returns a vector that is the result of rotating vector v using transform tr.
Definition at line 1328 of file matvec3D.h.
Multiplies two transforms.
Definition at line 1317 of file matvec3D.h.
Scales matrix m by the scalar s.
Definition at line 1020 of file matvec3D.h.
Definition at line 914 of file matvec3D.h.
Returns the cross product of vectors v1 and v2 ( v1 x v2 ).
Definition at line 739 of file matvec3D.h.
Definition at line 727 of file matvec3D.h.
Returns a new vector that is the result of scaling this vector by s.
Definition at line 603 of file matvec3D.h.
Returns a new vector that is the result of scaling this vector by s.
Definition at line 594 of file matvec3D.h.
Definition at line 908 of file matvec3D.h.
Returns the result of adding vector v to position p.
Definition at line 895 of file matvec3D.h.
Returns the result of adding vector v to position p.
Definition at line 881 of file matvec3D.h.
Returns the sum of vectors v1 and v2.
Definition at line 748 of file matvec3D.h.
Returns the result of subtracting position p2 from position p1.
Definition at line 902 of file matvec3D.h.
Returns the result of subtracting vector v from position p.
Definition at line 888 of file matvec3D.h.
Returns a vector that is the negative of vector v. (unary minus)
Definition at line 764 of file matvec3D.h.
Returns the difference between vectors v1 and v2.
Definition at line 756 of file matvec3D.h.
Returns a new vector that is the result of scaling this vector by 1/s.
Definition at line 772 of file matvec3D.h.
Definition at line 1334 of file matvec3D.h.
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.
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.