#include <stdarg.h>
#include <gandalf/linalg/3vector.h>
#include <gandalf/linalg/4vector.h>
#include <gandalf/linalg/3x3matrix.h>
#include <gandalf/linalg/3x4matrix.h>
#include <gandalf/linalg/4x4matrix.h>
Go to the source code of this file.
Classes | |
struct | Gan_Quaternion |
Quaternion structure. More... | |
struct | Gan_Rot3D |
Structure representing 3D rotation. More... | |
struct | Gan_Rot3D_Cov |
Structure representing covariance of 3D rotation. More... | |
Typedefs | |
typedef Gan_Quaternion | Gan_Quaternion |
Quaternion structure. | |
typedef Gan_Rot3D | Gan_Rot3D |
Structure representing 3D rotation. | |
typedef Gan_Rot3D_Cov | Gan_Rot3D_Cov |
Structure representing covariance of 3D rotation. | |
Enumerations | |
enum | Gan_Rot3D_Type { GAN_ROT3D_QUATERNION, GAN_ROT3D_EXPONENTIAL, GAN_ROT3D_ANGLE_AXIS, GAN_ROT3D_MATRIX } |
Types of rotation handled by Gandalf. More... | |
Functions | |
Gan_Quaternion * | gan_quat_scale_q (Gan_Quaternion *q1, double s, Gan_Quaternion *q2) |
Macro: Scale a quaternion. | |
Gan_Quaternion * | gan_quat_scale_i (Gan_Quaternion *q1, double s) |
Macro: Scale a quaternion in-place. | |
Gan_Quaternion * | gan_quat_divide_q (Gan_Quaternion *q1, double s, Gan_Quaternion *q2) |
Macro: Divide a quaternion by a scalar. | |
Gan_Quaternion * | gan_quat_divide_i (Gan_Quaternion *q1, double s) |
Macro: Divide a quaternion by a scalar in-place. | |
Gan_Quaternion * | gan_quat_unit_q (Gan_Quaternion *q1, Gan_Quaternion *q2) |
Macro: Scale a quaternion to unit norm. | |
Gan_Quaternion * | gan_quat_unit_i (Gan_Quaternion *q1) |
Macro: Scale a quaternion to unit norm in-place. | |
double | gan_quat_sqrlen_q (Gan_Quaternion *q1) |
Macro: Return the squared length of a quaternion. | |
double | gan_quat_sqrlen_s (Gan_Quaternion *q1) |
Macro: Return the squared length of a quaternion. | |
Gan_Quaternion * | gan_quat_add_q (Gan_Quaternion *q1, Gan_Quaternion *q2, Gan_Quaternion *q3) |
Macro: Add two quaternions. | |
Gan_Quaternion * | gan_quat_sub_q (Gan_Quaternion *q1, Gan_Quaternion *q2, Gan_Quaternion *q3) |
Macro: Subtract two quaternions. | |
Gan_Bool | gan_rot3D_scale_i (Gan_Rot3D *rot, double s) |
Macro: Scale rotation parameters in-place. | |
Gan_Bool | gan_rot3D_divide_i (Gan_Rot3D *rot, double s) |
Macro: Divide rotation parameters by a scalar in-place. | |
Gan_Bool | gan_rot3D_increment (Gan_Rot3D *rot1, Gan_Rot3D *rot2) |
Macro: Add two sets of rotation parameters. | |
Gan_Bool | gan_rot3D_add_i2 (Gan_Rot3D *rot1, Gan_Rot3D *rot2) |
Macro: Add two sets of rotation parameters. | |
Gan_Bool | gan_rot3D_decrement (Gan_Rot3D *rot1, Gan_Rot3D *rot2) |
Macro: Subtract two sets of rotation parameters. | |
Gan_Bool | gan_rot3D_sub_i2 (Gan_Rot3D *rot1, Gan_Rot3D *rot2) |
Macro: Subtract two sets of rotation parameters. |
Part of: Gandalf Library