Android:我如何与'Matrix.mapPoints(float [] points)'相反?

ray*_*bbs 5 android matrix game-engine

如果我有一个点和矩阵:

float point[] = new float[]{x,y};
Matrix matrix = new Matrix();
Run Code Online (Sandbox Code Playgroud)

并致电:

matrix.mapPoints(point);
Run Code Online (Sandbox Code Playgroud)

我怎么可能扭转的影响matrix.mapPoints(point)point

这不是我将使用答案的实际应用程序,但对此的答案将适用于我需要的.

谢谢你的帮助.

Dur*_*s S 8

如果你不想yourMatrix改变

 Matrix inverseCopy = new Matrix();
 if(yourMatrix.invert(inverseCopy)){
      inverseCopy.mapPoints(transformedPoint);
      //Now transformedPoint is reverted to original state.
 }
Run Code Online (Sandbox Code Playgroud)

如果你想yourMatrix改变

 if(yourMatrix.invert(null)){
      yourMatrix.mapPoints(transformedPoint);
      //Now transformedPoint is reverted to original state.
 }
Run Code Online (Sandbox Code Playgroud)

matrix.invert()false如果matrix不能倒置则返回.如果您matrix无法倒置,则无法将您的积分恢复为原始状态.