hal_gfx_matrix3x3.h File Reference

Header file containing functions prototypes of Graphics library. More...

Go to the source code of this file.

Typedefs

typedef float hal_gfx_matrix3x3_t[3][3]
 Global define matrix3x3 variable. More...
 

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...
 

Detailed Description

Header file containing functions prototypes of Graphics library.

Author
BLE Driver Team
Attention
Copyright (c) 2019 GOODIX

All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of GOODIX nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file hal_gfx_matrix3x3.h.