## matrix\_t ### 概述 2D矩阵对象。 ---------------------------------- ### 函数
| 函数名称 | 说明 | | -------- | ------------ | | matrix\_identity | 重置矩阵对象为单位矩阵。 | | matrix\_init | 初始化矩阵对象。 | | matrix\_invert | 求矩阵的逆。 | | matrix\_is\_invertible | 判断matrix是否可逆。 | | matrix\_multiply | 矩阵相乘。 | | matrix\_rotate | 旋转。 | | matrix\_scale | 缩放。 | | matrix\_set | 设置矩阵的参数。 | | matrix\_transform\_point | 对点进行变换。 | | matrix\_transform\_pointf | 对点进行变换。 | | matrix\_translate | 平移。 | #### matrix\_identity 函数 ----------------------- * 函数功能: >
重置矩阵对象为单位矩阵。 * 函数原型: ``` matrix_t* matrix_identity (matrix_t* m); ``` * 参数说明: | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | matrix\_t* | 矩阵对象。 | | m | matrix\_t* | 矩阵对象。 | #### matrix\_init 函数 ----------------------- * 函数功能: >
初始化矩阵对象。 * 函数原型: ``` matrix_t* matrix_init (matrix_t* m); ``` * 参数说明: | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | matrix\_t* | 矩阵对象。 | | m | matrix\_t* | 矩阵对象。 | #### matrix\_invert 函数 ----------------------- * 函数功能: >
求矩阵的逆。 * 函数原型: ``` matrix_t* matrix_invert (matrix_t* m); ``` * 参数说明: | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | matrix\_t* | 矩阵对象。 | | m | matrix\_t* | 矩阵对象。 | #### matrix\_is\_invertible 函数 ----------------------- * 函数功能: >
判断matrix是否可逆。 * 函数原型: ``` bool_t matrix_is_invertible (matrix_t* m); ``` * 参数说明: | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | bool\_t | 返回TRUE表示可逆,否则表示不可逆。 | | m | matrix\_t* | 矩阵对象。 | #### matrix\_multiply 函数 ----------------------- * 函数功能: >
矩阵相乘。 * 函数原型: ``` matrix_t* matrix_multiply (matrix_t* m, matrix_t* b); ``` * 参数说明: | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | matrix\_t* | 矩阵对象。 | | m | matrix\_t* | 矩阵对象。 | | b | matrix\_t* | 矩阵对象。 | #### matrix\_rotate 函数 ----------------------- * 函数功能: >
旋转。 * 函数原型: ``` matrix_t* matrix_rotate (matrix_t* m, float rad); ``` * 参数说明: | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | matrix\_t* | 矩阵对象。 | | m | matrix\_t* | 矩阵对象。 | | rad | float | 角度。 | #### matrix\_scale 函数 ----------------------- * 函数功能: >
缩放。 * 函数原型: ``` matrix_t* matrix_scale (matrix_t* m, float sx, float sy); ``` * 参数说明: | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | matrix\_t* | 矩阵对象。 | | m | matrix\_t* | 矩阵对象。 | | sx | float | sx | | sy | float | sy | #### matrix\_set 函数 ----------------------- * 函数功能: >
设置矩阵的参数。 * 函数原型: ``` matrix_t* matrix_set (matrix_t* m, float a0, float a1, float a2, float a3, float a4, float a5); ``` * 参数说明: | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | matrix\_t* | 矩阵对象。 | | m | matrix\_t* | 矩阵对象。 | | a0 | float | a0 | | a1 | float | a1 | | a2 | float | a2 | | a3 | float | a3 | | a4 | float | a4 | | a5 | float | a5 | #### matrix\_transform\_point 函数 ----------------------- * 函数功能: >
对点进行变换。 * 函数原型: ``` matrix_t* matrix_transform_point (matrix_t* m, xy_t x, xy_t y, xy_t* out_x, xy_t* out_y); ``` * 参数说明: | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | matrix\_t* | 矩阵对象。 | | m | matrix\_t* | 矩阵对象。 | | x | xy\_t | x | | y | xy\_t | y | | out\_x | xy\_t* | out\_x | | out\_y | xy\_t* | out\_y | #### matrix\_transform\_pointf 函数 ----------------------- * 函数功能: >
对点进行变换。 * 函数原型: ``` matrix_t* matrix_transform_pointf (matrix_t* m, float x, float y, float* out_x, float* out_y); ``` * 参数说明: | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | matrix\_t* | 矩阵对象。 | | m | matrix\_t* | 矩阵对象。 | | x | float | x | | y | float | y | | out\_x | float* | out\_x | | out\_y | float* | out\_y | #### matrix\_translate 函数 ----------------------- * 函数功能: >
平移。 * 函数原型: ``` matrix_t* matrix_translate (matrix_t* m, float x, float y); ``` * 参数说明: | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | matrix\_t* | 矩阵对象。 | | m | matrix\_t* | 矩阵对象。 | | x | float | x | | y | float | y |