hal_gfx_matrix3x3.h File Reference

Go to the source code of this file.

Typedefs

typedef float hal_gfx_matrix3x3_t[3][3]
 

Functions

void hal_gfx_mat3x3_load_identity (hal_gfx_matrix3x3_t m)
 Load Identity Matrix. More...
 
void hal_gfx_mat3x3_translate (hal_gfx_matrix3x3_t m, float tx, float ty)
 Apply translate transformation. More...
 
void hal_gfx_mat3x3_scale (hal_gfx_matrix3x3_t m, float sx, float sy)
 Apply scale transformation. More...
 
void hal_gfx_mat3x3_shear (hal_gfx_matrix3x3_t m, float shx, float shy)
 Apply shear transformation. More...
 
void hal_gfx_mat3x3_mirror (hal_gfx_matrix3x3_t m, int mx, int my)
 Apply mirror transformation. More...
 
void hal_gfx_mat3x3_rotate (hal_gfx_matrix3x3_t m, float angle_degrees)
 Apply rotation transformation. More...
 
void hal_gfx_mat3x3_mul (hal_gfx_matrix3x3_t m, hal_gfx_matrix3x3_t _m)
 Multiply two 3x3 matrices ( m = m*_m) More...
 
void hal_gfx_mat3x3_mul_vec (hal_gfx_matrix3x3_t m, float *x, float *y)
 Multiply vector with matrix. More...
 
void hal_gfx_mat3x3_mul_vec_affine (hal_gfx_matrix3x3_t m, float *x, float *y)
 Multiply vector with affine matrix. More...
 
void hal_gfx_mat3x3_adj (hal_gfx_matrix3x3_t m)
 Calculate adjoint. More...
 
void hal_gfx_mat3x3_div_scalar (hal_gfx_matrix3x3_t m, float s)
 Divide matrix with scalar value. More...
 
int hal_gfx_mat3x3_invert (hal_gfx_matrix3x3_t m)
 Invert matrix. More...
 
int hal_gfx_mat3x3_square_to_quad (float dx0, float dy0, float dx1, float dy1, float dx2, float dy2, float dx3, float dy3, hal_gfx_matrix3x3_t m)
 Square to quad transformation. More...
 
int hal_gfx_mat3x3_quad_to_rect (int width, int height, float sx0, float sy0, float sx1, float sy1, float sx2, float sy2, float sx3, float sy3, hal_gfx_matrix3x3_t m)
 Map rectangle to quadrilateral. More...