Main Page | Modules | Class List | File List | Class Members | File Members

rotate3D.h File Reference

#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_Quaterniongan_quat_scale_q (Gan_Quaternion *q1, double s, Gan_Quaternion *q2)
 Macro: Scale a quaternion.
Gan_Quaterniongan_quat_scale_i (Gan_Quaternion *q1, double s)
 Macro: Scale a quaternion in-place.
Gan_Quaterniongan_quat_divide_q (Gan_Quaternion *q1, double s, Gan_Quaternion *q2)
 Macro: Divide a quaternion by a scalar.
Gan_Quaterniongan_quat_divide_i (Gan_Quaternion *q1, double s)
 Macro: Divide a quaternion by a scalar in-place.
Gan_Quaterniongan_quat_unit_q (Gan_Quaternion *q1, Gan_Quaternion *q2)
 Macro: Scale a quaternion to unit norm.
Gan_Quaterniongan_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_Quaterniongan_quat_add_q (Gan_Quaternion *q1, Gan_Quaternion *q2, Gan_Quaternion *q3)
 Macro: Add two quaternions.
Gan_Quaterniongan_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.


Detailed Description

Module: Handling 3D rotations

Part of: Gandalf Library

Version:
1.17
Date:
2005/08/22 08:52:18
Author:
jps
Copyright: (c) 2000 Imagineer Software Limited
Generated on Fri Mar 17 12:44:52 2006 by  doxygen 1.3.9.1