关于Skia 2D引擎个人不再赘述,网上有一些介绍。但是关于Skia具体应用的介绍,通过各种关键字进行检索,发现资料较少。
不好评论该引擎之优劣,从使用角度来讲,有特别需要了解的几个地方。
今天就使用Skmatirx时遇到的问题与大家分享,仅代表个人观点,如有错误之处,希望各位批评指正。
众所周知,矩阵包含有三大部分内容:旋转Rotate、平移Translate、缩放Sclae。Skia特立独行,额外提供了一个矩阵的变形分量Sclae。
个人臆断觉得Sclae和Sclae功能应该相同,没有使用到,也没有测试。
主要介绍下自己在使用rotate translate时遇到的问题:
1、Skia的矩阵是左乘还是右乘?
个人认为是左乘(如果不是左乘,后边都是扯淡),幸好源码贴出了矩阵左乘公式,佐证了我的第一眼赶脚。
2、Skia提供的setRotate(drg)接口的默认旋转是什么?
默认旋转为顺时针旋转,如若逆时针旋转,则应对参数相应更改。
3、Skia的fMat[9]如何表示矩阵?
fMat数组是采用行主序的形式表示矩阵,表示矩阵的方法与openGL相同,借助了齐次坐标思想。