question: private void drawFace ( final Canvas canvas , final Bitmap view , final int top , final int left , final int centerX , final int centerY , final float scale , final float rotation ) { if ( mCamera == null ) { mCamera = new Camera ( ) ; } mCamera . save ( ) ; mCamera . translate ( 0 , 0 , centerY ) ; mCamera . rotateX ( rotation ) ; mCamera . translate ( 0 , 0 , - centerY ) ; if ( mMatrix == null ) { mMatrix = new Matrix ( ) ; } mCamera . getMatrix ( mMatrix ) ; mCamera . restore ( ) ; mMatrix . preTranslate ( - centerX , - centerY ) ; mMatrix . postScale ( scale , scale ) ; mMatrix . postTranslate ( left + centerX , top + centerY ) ; if ( mPaint == null ) { mPaint = new Paint ( ) ; mPaint . setAntiAlias ( true ) ; mPaint . setFilterBitmap ( true ) ; } if ( mLightEnabled ) { mPaint . setColorFilter ( calculateLight ( rotation ) ) ; } else { mPaint . setAlpha ( 0xFF - ( int ) ( 2 * Math . abs ( rotation ) ) ) ; } canvas . drawBitmap ( view , mMatrix , mPaint ) ; }
target:  Draws a face of the 3D block