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

Euclidean transformations
[Vision Package]


Classes

struct  Gan_Euclid3D
 3D pose structure. More...
struct  Gan_Euclid3D_TRCov
 Cross-covariance between rotation and translation. More...
struct  Gan_Euclid3r_Cov
 Covariance of 3D pose. More...

Typedefs

typedef Gan_Euclid3D_TRCov Gan_Euclid3D_TRCov
 Cross-covariance between rotation and translation.

Functions

Gan_Bool gan_euclid3D_build_quaternion (Gan_Euclid3D *euc, double TX, double TY, double TZ, double q0, double q1, double q2, double q3)
 Fill parameters of Euclidean transformation.
Gan_Bool gan_euclid3D_build_exponential (Gan_Euclid3D *euc, double TX, double TY, double TZ, double rx, double ry, double rz)
 Fill parameters of Euclidean transformation.
Gan_Bool gan_euclid3D_build_angle_axis (Gan_Euclid3D *euc, double TX, double TY, double TZ, double angle, double ax, double ay, double az)
 Fill parameters of Euclidean transformation.
Gan_Bool gan_euclid3D_build_matrix (Gan_Euclid3D *euc, double TX, double TY, double TZ, double Rxx, double Rxy, double Rxz, double Ryx, double Ryy, double Ryz, double Rzx, double Rzy, double Rzz)
 Fill parameters of Euclidean transformation.
void gan_euclid3D_ident_q (Gan_Euclid3D *euc, Gan_Rot3D_Type rot_type)
 Fills a structure with an identity Euclidean transformation.
Gan_Euclid3D gan_euclid3D_ident_s (Gan_Rot3D_Type rot_type)
 Return identity Euclidean transformation.
Gan_Bool gan_euclid3D_scale_q (Gan_Euclid3D *euc_src, double scale, Gan_Euclid3D *euc_dest)
 Scales Euclidean pose parameters.
Gan_Euclid3D gan_euclid3D_scale_s (Gan_Euclid3D *euc, double scale)
 Scales Euclidean pose parameters.
Gan_Bool gan_euclid3D_scale_i (Gan_Euclid3D *euc1, double s)
 Macro: Scale pose parameters in-place.
Gan_Bool gan_euclid3D_divide_q (Gan_Euclid3D *euc1, double s, Gan_Euclid3D *euc2)
 Macro: Divide pose parameters by a scalar.
Gan_Bool gan_euclid3D_divide_i (Gan_Euclid3D *euc1, double s)
 Macro: Divide pose parameters by a scalar in-place.
Gan_Bool gan_euclid3D_add_q (Gan_Euclid3D *euc1, Gan_Euclid3D *euc2, Gan_Euclid3D *euc3)
 Macro: Add two sets of pose parameters.
Gan_Bool gan_euclid3D_sub_q (Gan_Euclid3D *euc1, Gan_Euclid3D *euc2, Gan_Euclid3D *euc3)
 Macro: Subtract two sets of pose parameters.

Function Documentation

Gan_Bool gan_euclid3D_add_q Gan_Euclid3D euc1,
Gan_Euclid3D euc2,
Gan_Euclid3D euc3
 

Macro: Add two sets of pose parameters.

Implemented as macro calls to gan_vec3_add_q() and gan_rot3D_add_q().

Gan_Bool gan_euclid3D_build_angle_axis Gan_Euclid3D euc,
double  TX,
double  TY,
double  TZ,
double  angle,
double  ax,
double  ay,
double  az
 

Fill parameters of Euclidean transformation.

Parameters:
euc Pointer to structure to fill
TX X-coordinate of translation
TY Y-coordinate of translation
TZ Z-coordinate of translation
angle Rotation angle
ax Rotation axis x-coordinate
ay Rotation axis y-coordinate
az Rotation axis z-coordinate
Fill the translation & rotation parameters of a Euclidean transformation. The rotation is represented as a rotation angle and axis.

Returns:
GAN_TRUE on success, GAN_FALSE on failure.
See also:
gan_euclid3D_ident_q()

Gan_Bool gan_euclid3D_build_exponential Gan_Euclid3D euc,
double  TX,
double  TY,
double  TZ,
double  rx,
double  ry,
double  rz
 

Fill parameters of Euclidean transformation.

Parameters:
euc Pointer to structure to fill
TX X-coordinate of translation
TY Y-coordinate of translation
TZ Z-coordinate of translation
rx exponential rotation parameter x value
ry exponential rotation parameter y value
rz exponential rotation parameter z value
Fill the translation & rotation parameters of a Euclidean transformation. The rotation is represented as exponential vector parameters $ R = e^{[r]_{\times}} $.

Returns:
GAN_TRUE on success, GAN_FALSE on failure.
See also:
gan_euclid3D_ident_q()

Gan_Bool gan_euclid3D_build_matrix Gan_Euclid3D euc,
double  TX,
double  TY,
double  TZ,
double  Rxx,
double  Rxy,
double  Rxz,
double  Ryx,
double  Ryy,
double  Ryz,
double  Rzx,
double  Rzy,
double  Rzz
 

Fill parameters of Euclidean transformation.

Parameters:
euc Pointer to structure to fill
TX The X-coordinate of translation
TY The Y-coordinate of translation
TZ The Z-coordinate of translation
Rxx Rotation matrix element $ R_{xx} $
Rxy Rotation matrix element $ R_{xy} $
Rxz Rotation matrix element $ R_{xz} $
Ryx Rotation matrix element $ R_{yx} $
Ryy Rotation matrix element $ R_{yy} $
Ryz Rotation matrix element $ R_{yz} $
Rzx Rotation matrix element $ R_{zx} $
Rzy Rotation matrix element $ R_{zy} $
Rzz Rotation matrix element $ R_{zz} $
Fill the translation and rotation parameters of a Euclidean transformation. The rotation is represented as a rotation matrix $ R $.

Returns:
GAN_TRUE on success, GAN_FALSE on failure.
See also:
gan_euclid3D_ident_q()

Gan_Bool gan_euclid3D_build_quaternion Gan_Euclid3D euc,
double  TX,
double  TY,
double  TZ,
double  q0,
double  q1,
double  q2,
double  q3
 

Fill parameters of Euclidean transformation.

Parameters:
euc Pointer to structure to fill
TX X-coordinate of translation
TY Y-coordinate of translation
TZ Z-coordinate of translation
q0 The first quaternion value, representing the rotation angle
q1 The second quaternion value, representing the axis x coordinate
q2 The second quaternion value, representing the axis y coordinate
q3 The second quaternion value, representing the axis z coordinate
Fill the translation and rotation parameters of a Euclidean transformation. The rotation is represented as a quaternion.

Returns:
GAN_TRUE on success, GAN_FALSE on failure.
See also:
gan_euclid3D_ident_q()

Gan_Bool gan_euclid3D_divide_i Gan_Euclid3D euc1,
double  s
 

Macro: Divide pose parameters by a scalar in-place.

Implemented as macro calls to gan_vec3_divide_i() and gan_rot3D_divide_i().

Gan_Bool gan_euclid3D_divide_q Gan_Euclid3D euc1,
double  s,
Gan_Euclid3D euc2
 

Macro: Divide pose parameters by a scalar.

Implemented as macro calls to gan_vec3_divide_q() and gan_rot3D_divide_q().

void gan_euclid3D_ident_q Gan_Euclid3D euc,
Gan_Rot3D_Type  rot_type
 

Fills a structure with an identity Euclidean transformation.

Parameters:
euc Pointer to a structure to fill
rot_type The represention for the rotation parameters
Fills a structure with an identity Euclidean transformation, i.e. zero translation and rotation.

Returns:
no value.
See also:
gan_euclid3D_ident_s().

Gan_Euclid3D gan_euclid3D_ident_s Gan_Rot3D_Type  rot_type  ) 
 

Return identity Euclidean transformation.

Parameters:
rot_type The represention for the rotation parameters
Fills a structure with an identity Euclidean transformation, i.e. zero translation and rotation.

Returns:
the filled structure.
See also:
gan_euclid3D_ident_q().

Gan_Bool gan_euclid3D_scale_i Gan_Euclid3D euc1,
double  s
 

Macro: Scale pose parameters in-place.

Implemented as macro calls to gan_vec3_scale_i() and gan_rot3D_scale_i().

Gan_Bool gan_euclid3D_scale_q Gan_Euclid3D euc_src,
double  scale,
Gan_Euclid3D euc_dest
 

Scales Euclidean pose parameters.

Parameters:
euc_src Pointer to a source transformation structure
scale Scale factor by which to multiply parameters
euc_dest Pointer to a destination transformation structure
Scales rotation and translation parameters of Euclidean transformation by given scale factor.

Returns:
GAN_TRUE on success, GAN_FALSE on failure.
See also:
gan_euclid3D_scale_s().

Gan_Euclid3D gan_euclid3D_scale_s Gan_Euclid3D euc,
double  scale
 

Scales Euclidean pose parameters.

Parameters:
euc Pointer to input transformation structure
scale Scale factor by which to multiply parameters
Scales rotation and translation parameters of Euclidean transformation by given scale factor.

Returns:
the result in a new structure.
See also:
gan_euclid3D_scale_q().

Gan_Bool gan_euclid3D_sub_q Gan_Euclid3D euc1,
Gan_Euclid3D euc2,
Gan_Euclid3D euc3
 

Macro: Subtract two sets of pose parameters.

Implemented as macro calls to gan_vec3_sub_q() and gan_rot3D_sub_q().


Generated on Fri Mar 17 12:45:02 2006 by  doxygen 1.3.9.1