![]() |
![]() |
![]() |
hkl Reference Manual | ![]() |
---|---|---|---|---|
Top | Description |
HklMatrix; void hkl_matrix_init (HklMatrix *self
,double m11
,double m12
,double m13
,double m21
,double m22
,double m23
,double m31
,double m32
,double m33
); void hkl_matrix_init_from_two_vector (HklMatrix *self
,const HklVector *v1
,const HklVector *v2
); void hkl_matrix_init_from_euler (HklMatrix *self
,double euler_x
,double euler_y
,double euler_z
); void hkl_matrix_fprintf (FILE *file
,const HklMatrix *self
); void hkl_matrix_to_euler (const HklMatrix *self
,double *euler_x
,double *euler_y
,double *euler_z
); int hkl_matrix_cmp (const HklMatrix *self
,const HklMatrix *m
); void hkl_matrix_times_matrix (HklMatrix *self
,const HklMatrix *m
); void hkl_matrix_times_vector (const HklMatrix *self
,HklVector *v
); void hkl_matrix_transpose (HklMatrix *self
); double hkl_matrix_det (const HklMatrix *self
); int hkl_matrix_solve (const HklMatrix *self
,HklVector *x
,const HklVector *b
); int hkl_matrix_is_null (const HklMatrix *self
);
void hkl_matrix_init (HklMatrix *self
,double m11
,double m12
,double m13
,double m21
,double m22
,double m23
,double m31
,double m32
,double m33
);
|
the HklMatrix to initialize |
|
the matrix 11 value |
|
the matrix 12 value |
|
the matrix 13 value |
|
the matrix 21 value |
|
the matrix 22 value |
|
the matrix 23 value |
|
the matrix 31 value |
|
the matrix 32 value |
|
the matrix 33 value |
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_init_from_euler (HklMatrix *self
,double euler_x
,double euler_y
,double euler_z
);
Create a rotation HklMatrix from three eulerians angles.
|
the HklMatrix to initialize |
|
the eulerian value along X |
|
the eulerian value along Y |
|
the eulerian value along Z |
void hkl_matrix_fprintf (FILE *file
,const HklMatrix *self
);
printf an HklMatrix into a FILE stream.
|
the FILE stream |
|
the HklMatrix to print into the 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
|
the rotation HklMatrix use to compute the eulerians angles |
|
the eulerian value along X |
|
the eulerian value along Y |
|
the eulerian value along Z |
int hkl_matrix_cmp (const HklMatrix *self
,const HklMatrix *m
);
compare two HklMatrix.
void hkl_matrix_times_matrix (HklMatrix *self
,const HklMatrix *m
);
compute the matrix multiplication self = self * m
void hkl_matrix_transpose (HklMatrix *self
);
transpose an HklMatrix
|
the HklMatrix to transpose |
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