lebai-motion-control  3.1.6
lebai motion control C interface
Data Structures | Typedefs | Functions
math

Math module. More...

Data Structures

struct  lmc_translation
 Cartesian translation coordinate. More...
 
struct  lmc_rpy
 RPY representation of rotation. More...
 
struct  lmc_euler_zyx
 Euler zyx representation of rotation. More...
 
struct  lmc_euler_zyz
 Euler zyx representation of rotation. More...
 
struct  lmc_quaternion
 Quaternion representation of rotation. More...
 
struct  lmc_transform
 Transform representation. More...
 
struct  lmc_twist
 Transform velocity representation. More...
 
struct  lmc_wrench
 Transform force representation. More...
 

Typedefs

typedef struct lmc_translation lmc_translation_t
 Cartesian translation coordinate. More...
 
typedef struct lmc_rpy lmc_rpy_t
 RPY representation of rotation. More...
 
typedef struct lmc_euler_zyx lmc_euler_zyx_t
 Euler zyx representation of rotation. More...
 
typedef struct lmc_euler_zyz lmc_euler_zyz_t
 Euler zyx representation of rotation. More...
 
typedef struct lmc_quaternion lmc_quaternion_t
 Quaternion representation of rotation. More...
 
typedef struct lmc_transform lmc_transform_t
 Transform representation. More...
 
typedef struct lmc_twist lmc_twist_t
 Transform velocity representation.
 
typedef struct lmc_wrench lmc_wrench_t
 Transform force representation.
 

Functions

void lmc_euler_zyx_to_quaternion (lmc_euler_zyx_t const *const euler, lmc_quaternion_t *const quat)
 Math function to compute euler zyx to quaternion. More...
 
void lmc_quaternion_to_euler_zyx (lmc_quaternion_t const *const quat, lmc_euler_zyx_t *const euler)
 Math function to compute euler zyx to quaternion. More...
 
void lmc_euler_zyx_to_euler_zyz (lmc_euler_zyx_t const *const euler_zyx, lmc_euler_zyz_t *const euler_zyz)
 Math function to compute euler zyx to zyz. More...
 
void lmc_euler_zyz_to_euler_zyx (lmc_euler_zyz_t const *const euler_zyz, lmc_euler_zyx_t *const euler_zyx)
 Math function to compute euler zyz to euler zyx. More...
 
void lmc_euler_zyz_to_quaternion (lmc_euler_zyz_t const *const euler, lmc_quaternion_t *const quat)
 Math function to compute euler zyx to quaternion. More...
 
void lmc_quaternion_to_euler_zyz (lmc_quaternion_t const *const quat, lmc_euler_zyz_t *const euler)
 Math function to compute euler zyx to quaternion. More...
 

Detailed Description

Math module.

Typedef Documentation

Euler zyx representation of rotation.

Note
Same as euler_t in lebai_kdl.

Euler zyx representation of rotation.

Note
Same as euler_t in lebai_kdl.

Quaternion representation of rotation.

Note
Same as quaternion_t in lebai_kdl.
typedef struct lmc_rpy lmc_rpy_t

RPY representation of rotation.

Note
Same as rotation_t in lebai_kdl.

Transform representation.

Note
Same as cartesian_frame_t in lebai_kdl.

Cartesian translation coordinate.

This parameter is used for input.

Note
Same as coordinate_t in lebai_kdl.

Function Documentation

void lmc_euler_zyx_to_euler_zyz ( lmc_euler_zyx_t const *const  euler_zyx,
lmc_euler_zyz_t *const  euler_zyz 
)

Math function to compute euler zyx to zyz.

Example usage code:

lmc_euler_zyx_t euler_zyx;
euler.alpha = 0.3;
euler.beta = 0.7;
euler.gamma = -0.2;
lmc_euler_zyz_t euler_zyz;
lmc_euler_zyx_to_euler_zyz(&euler_zyx, &euler_zyz);
Note
Parameters
[in]euler_zyxEuler zyx data input
[out]euler_zyzEuler zyz data output
void lmc_euler_zyx_to_quaternion ( lmc_euler_zyx_t const *const  euler,
lmc_quaternion_t *const  quat 
)

Math function to compute euler zyx to quaternion.

Example usage code:

lmc_euler_zyx_t euler;
euler.alpha = 0.3;
euler.beta = 0.7;
euler.gamma = -0.2;
lmc_quaternion_t quaternion;
lmc_euler_zyx_to_quaternion(&euler, &quaternion);
Note
Parameters
[in]eulerEuler zyx data input
[out]quatQuaterion data output
void lmc_euler_zyz_to_euler_zyx ( lmc_euler_zyz_t const *const  euler_zyz,
lmc_euler_zyx_t *const  euler_zyx 
)

Math function to compute euler zyz to euler zyx.

Example usage code:

lmc_euler_zyz_t zyz;
lmc_euler_zyx_t zyx;
lmc_quaternion_to_euler(&zyz, &zyx);
Note
Parameters
[in]quatQuaterion data input.
[out]eulerEuler zyx data output.
void lmc_euler_zyz_to_quaternion ( lmc_euler_zyz_t const *const  euler,
lmc_quaternion_t *const  quat 
)

Math function to compute euler zyx to quaternion.

Example usage code:

lmc_euler_zyz_t euler;
euler.alpha = 0.3;
euler.beta = 0.7;
euler.gamma = -0.2;
lmc_quaternion_t quaternion;
lmc_euler_zyz_to_quaternion(&euler, &quaternion);
Note
Parameters
[in]eulerEuler zyz data input
[out]quatQuaterion data output
void lmc_quaternion_to_euler_zyx ( lmc_quaternion_t const *const  quat,
lmc_euler_zyx_t *const  euler 
)

Math function to compute euler zyx to quaternion.

Example usage code:

lmc_quaternion_t quaternion;
lmc_euler_zyx_t euler_result;
lmc_quaternion_to_euler_zyx(&quaternion, &euler_result);
Note
Parameters
[in]quatQuaterion data input.
[out]eulerEuler zyx data output.
void lmc_quaternion_to_euler_zyz ( lmc_quaternion_t const *const  quat,
lmc_euler_zyz_t *const  euler 
)

Math function to compute euler zyx to quaternion.

Example usage code:

lmc_quaternion_t quaternion;
lmc_euler_zyz_t euler_result;
lmc_quaternion_to_euler_zyz(&quaternion, &euler_result);
Note
Parameters
[in]quatQuaterion data input.
[out]eulerEuler zyz data output.