This question is following up my previous question that I asked it in
stackoverflow: Hide a face of a 3D shape behind another,Android canvas?
I have a canvas and I have to get the normal vector of a face after rotating it via a matrix that is earned by
graphics.Camera.From Mathematics,we know that transformation matrix of
orthogonal,and preserve angles.So when I do some rotation by Camera and get it's matrix via Camera.getMatrix(Matrix matrix),I expected that matrix must be
orthogonal because Documents say:
public void getMatrix (Matrix matrix) Since: API Level 1
Computes the matrix corresponding to the current transformation and copies it to the supplied matrix object.
If it was really orthogonal matrix,I could translate normal vector of the face (before rotating it) by matrix that is gotten from Camera and result will be parallel to normal vector of face after rotating it.But when I multiple that matrix to it's transpose,result matrix is not Identity. Now my question is:
getMatrix (Matrix matrix) really returns the matrix corresponding to the current transformation?If it is true,why when I Multiply returned matrix to it's transpose,result is not Identity?