This is the reference documentation for handling matrices to use as transformation in drawing operations. Matrix computations in vkvg are taken from the cairo library.
|
void | vkvg_matrix_init_identity (vkvg_matrix_t *matrix) |
| Set matrix to identity. More...
|
|
void | vkvg_matrix_init (vkvg_matrix_t *matrix, float xx, float yx, float xy, float yy, float x0, float y0) |
| Matrix initialization. More...
|
|
void | vkvg_matrix_init_translate (vkvg_matrix_t *matrix, float tx, float ty) |
| Rotation matrix initialization. More...
|
|
void | vkvg_matrix_init_scale (vkvg_matrix_t *matrix, float sx, float sy) |
| scaling matrix initialization More...
|
|
void | vkvg_matrix_init_rotate (vkvg_matrix_t *matrix, float radians) |
| rotation matrix initialization More...
|
|
void | vkvg_matrix_translate (vkvg_matrix_t *matrix, float tx, float ty) |
| apply translation on matrix More...
|
|
void | vkvg_matrix_scale (vkvg_matrix_t *matrix, float sx, float sy) |
| apply scale on matrix More...
|
|
void | vkvg_matrix_rotate (vkvg_matrix_t *matrix, float radians) |
| apply rotation on matrix More...
|
|
void | vkvg_matrix_multiply (vkvg_matrix_t *result, const vkvg_matrix_t *a, const vkvg_matrix_t *b) |
| matrices multiplication More...
|
|
void | vkvg_matrix_transform_distance (const vkvg_matrix_t *matrix, float *dx, float *dy) |
| transform distances More...
|
|
void | vkvg_matrix_transform_point (const vkvg_matrix_t *matrix, float *x, float *y) |
| transform point More...
|
|
vkvg_status_t | vkvg_matrix_invert (vkvg_matrix_t *matrix) |
| invert matrix More...
|
|
void | vkvg_matrix_get_scale (const vkvg_matrix_t *matrix, float *sx, float *sy) |
|