Matrix definition and operations. More...
| Data Structures | |
| struct | _Eina_Matrix2 | 
| struct | Eina_Matrix2 | 
| Floating point matrix2 handler.  More... | |
| Typedefs | |
| typedef struct _Eina_Matrix2 | Eina_Matrix2 | 
| Floating point matrix2 handler. | |
| Functions | |
| EAPI void | eina_matrix2_values_set (Eina_Matrix2 *m, double xx, double xy, double yx, double yy) | 
| Sets the values of the coefficients of the given floating point matrix.  More... | |
| EAPI void | eina_matrix2_values_get (const Eina_Matrix2 *m, double *xx, double *xy, double *yx, double *yy) | 
| Gets the values of the coefficients of the given floating point matrix.  More... | |
| EAPI void | eina_matrix2_inverse (Eina_Matrix2 *out, const Eina_Matrix2 *mat) | 
| Computes the inverse with check of the given matrix.  More... | |
| EAPI void | eina_matrix2_identity (Eina_Matrix2 *m) | 
| Sets the given floating point matrix to the identity matrix.  More... | |
| EAPI void | eina_matrix2_array_set (Eina_Matrix2 *m, const double *v) | 
| Sets array to matrix.  More... | |
| EAPI void | eina_matrix2_copy (Eina_Matrix2 *dst, const Eina_Matrix2 *src) | 
| Copies matrix.  More... | |
| EAPI void | eina_matrix2_multiply (Eina_Matrix2 *out, const Eina_Matrix2 *mat_a, const Eina_Matrix2 *mat_b) | 
| Multiplies two matrix.  More... | |
| EAPI void | eina_matrix2_multiply_copy (Eina_Matrix2 *out, const Eina_Matrix2 *mat_a, const Eina_Matrix2 *mat_b) | 
| Multiplies two matrix with check.  More... | |
| EAPI Eina_Matrix_Type | eina_matrix2_type_get (const Eina_Matrix2 *m) | 
| Returns the type of the given floating point matrix.  More... | |
Matrix definition and operations.
| EAPI void eina_matrix2_values_set | ( | Eina_Matrix2 * | m, | 
| double | xx, | ||
| double | xy, | ||
| double | yx, | ||
| double | yy | ||
| ) | 
Sets the values of the coefficients of the given floating point matrix.
| m | The floating point matrix. | 
| xx | The first coefficient value. | 
| xy | The second coefficient value. | 
| yx | The fourth coefficient value. | 
| yy | The fifth coefficient value. | 
This function sets the values of the coefficients of the matrix m. No check is done on m.
| EAPI void eina_matrix2_values_get | ( | const Eina_Matrix2 * | m, | 
| double * | xx, | ||
| double * | xy, | ||
| double * | yx, | ||
| double * | yy | ||
| ) | 
Gets the values of the coefficients of the given floating point matrix.
| m | The floating point matrix. | 
| xx | The first coefficient value. | 
| xy | The second coefficient value. | 
| yx | The fourth coefficient value. | 
| yy | The fifth coefficient value. | 
This function gets the values of the coefficients of the matrix m. No check is done on m.
| EAPI void eina_matrix2_inverse | ( | Eina_Matrix2 * | out, | 
| const Eina_Matrix2 * | mat | ||
| ) | 
Computes the inverse with check of the given matrix.
| m | The matrix to inverse. | 
| m2 | The inverse matrix. | 
This function inverse the matrix m and stores the result in m2. No check is done on m or m2. If m can not be invertible, then m2 is set to the identity matrix.
References EINA_DBL_EQ, eina_matrix2_copy(), eina_matrix2_type_get(), and EINA_MATRIX_TYPE_IDENTITY.
| EAPI void eina_matrix2_identity | ( | Eina_Matrix2 * | m | ) | 
Sets the given floating point matrix to the identity matrix.
| m | The floating point matrix to set | 
This function sets m to the identity matrix. No check is done on m.
| EAPI void eina_matrix2_array_set | ( | Eina_Matrix2 * | m, | 
| const double * | v | ||
| ) | 
Sets array to matrix.
| m | The result matrix | 
| v | The the array[4] for set | 
Set to matrix first 4 elements from array
| EAPI void eina_matrix2_copy | ( | Eina_Matrix2 * | dst, | 
| const Eina_Matrix2 * | src | ||
| ) | 
Copies matrix.
| dst | The matrix copy | 
| src | The matrix for copy. | 
Referenced by eina_matrix2_inverse(), eina_matrix2_multiply(), and eina_matrix2_multiply_copy().
| EAPI void eina_matrix2_multiply | ( | Eina_Matrix2 * | out, | 
| const Eina_Matrix2 * | mat_a, | ||
| const Eina_Matrix2 * | mat_b | ||
| ) | 
Multiplies two matrix.
| out | The resulting matrix | 
| a | The first member of the multiplication | 
| b | The second member of the multiplication | 
References eina_matrix2_copy(), eina_matrix2_type_get(), and EINA_MATRIX_TYPE_IDENTITY.
Referenced by eina_matrix2_multiply_copy().
| EAPI void eina_matrix2_multiply_copy | ( | Eina_Matrix2 * | out, | 
| const Eina_Matrix2 * | mat_a, | ||
| const Eina_Matrix2 * | mat_b | ||
| ) | 
Multiplies two matrix with check.
| out | The resulting matrix | 
| a | The first member of the multiplication | 
| b | The second member of the multiplication | 
References eina_matrix2_copy(), and eina_matrix2_multiply().
| EAPI Eina_Matrix_Type eina_matrix2_type_get | ( | const Eina_Matrix2 * | m | ) | 
Returns the type of the given floating point matrix.
| m | The floating point matrix. | 
This function returns the type of the matrix m. No check is done on m.
References EINA_DBL_EQ, EINA_MATRIX_TYPE_AFFINE, and EINA_MATRIX_TYPE_IDENTITY.
Referenced by eina_matrix2_inverse(), and eina_matrix2_multiply().