documentation对于使用这些方法时实际发生的事情非常模糊。有人可以解释Matrix实际上如何影响它所设置的位图吗?他们在那里使用了连接这个术语,但是我不清楚这个术语如何应用于坐标数据(之前只在字符串操作方面使用过它)。
答案 0 :(得分:135)
set-methods将使用新值替换当前Matrix,而忽略之前包含的Matrix。 pre和post方法将在当前Matrix包含的任何内容之前或之后应用新的转换。
在这个例子中,旋转将被忽略,因为我们使用的是set方法,而m只包含一个翻译:
Matrix m = new Matrix();
m.setRotate(90);
m.setTranslate(100,100);
在此示例中,最终矩阵将是一个平移后跟一个旋转:
Matrix m = new Matrix();
m.setTranslate(100,100);
m.postRotate(90);
在最后一个例子中,最终矩阵将是一个旋转,然后是翻译:
Matrix m = new Matrix();
m.setTranslate(100,100);
m.preRotate(90);
在这篇(相当冗长的)帖子中还有更多信息:
http://www.satyakomatineni.com/akc/display?url=displaynoteimpurl&ownerUserId=satya&reportId=2898
希望它有所帮助。