如果我有一个点和矩阵:
float point[] = new float[]{x,y};
Matrix matrix = new Matrix();
并致电:
matrix.mapPoints(point);
我怎样才能扭转matrix.mapPoints(point)
对point
的影响?
这不是我将使用答案的实际应用程序,但对此的答案将适用于我需要的。
感谢您的帮助。
答案 0 :(得分:7)
如果您不希望yourMatrix
更改
Matrix inverseCopy = new Matrix();
if(yourMatrix.invert(inverseCopy)){
inverseCopy.mapPoints(transformedPoint);
//Now transformedPoint is reverted to original state.
}
如果您想要yourMatrix
更改
if(yourMatrix.invert(null)){
yourMatrix.mapPoints(transformedPoint);
//Now transformedPoint is reverted to original state.
}
如果matrix.invert()
无法转换,则 false
会返回matrix
。如果您的matrix
无法倒置,则无法将您的积分恢复为原始状态。