Top | ![]() |
![]() |
![]() |
![]() |
HklMatrix * | hkl_matrix_dup () |
void | hkl_matrix_init_from_euler () |
void | hkl_matrix_matrix_set () |
void | hkl_matrix_init_from_two_vector () |
void | hkl_matrix_fprintf () |
void | hkl_matrix_to_euler () |
void | hkl_matrix_times_vector () |
void | hkl_matrix_transpose () |
double | hkl_matrix_det () |
int | hkl_matrix_solve () |
int | hkl_matrix_is_null () |
void | hkl_matrix_div_double () |
int | hkl_matrix_inv () |
void hkl_matrix_init_from_euler (HklMatrix *self
,double euler_x
,double euler_y
);
Create a rotation HklMatrix from three eulerians angles.
self |
the HklMatrix to initialize |
|
euler_x |
the eulerian value along X |
|
euler_y |
the eulerian value along Y |
|
euler_z |
the eulerian value along Z |
void hkl_matrix_init_from_two_vector (HklMatrix *self
,const HklVector *v1
,const HklVector *v2
);
Create an HklMatrix which represent a direct oriented base of the space the first row correspond to the |v1|, the second row |v2| and the last one is |v1 ^ v2|
void hkl_matrix_fprintf (FILE *file
,const HklMatrix *self
);
printf an HklMatrix into a FILE stream.
void hkl_matrix_to_euler (const HklMatrix *self
,double *euler_x
,double *euler_y
,double *euler_z
);
compute the three eulerians values for a given rotation HklMatrix
self |
the rotation HklMatrix use to compute the eulerians angles |
|
euler_x |
the eulerian value along X |
|
euler_y |
the eulerian value along Y |
|
euler_z |
the eulerian value along Z |
double
hkl_matrix_det (const HklMatrix *self
);
compute the determinant of an HklMatrix
int hkl_matrix_solve (const HklMatrix *self
,HklVector *x
,const HklVector *b
);
solve the system self . X = b
int
hkl_matrix_is_null (const HklMatrix *self
);
is all hklMatrix elementes bellow HKL_EPSILON
void hkl_matrix_div_double (HklMatrix *self
,double d
);
divide an HklMatrix by a constant.
[skip]