小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Android APIDemos 研讀之二:android.graphics.Camera...

 My鏡像站 2012-02-14
此Camera非彼Camera,在android.graphics包里的Camera,可以理解為2D圖形系統(tǒng)中的視角,或者照相機的機位,根據(jù)透視的原理我們可以實現(xiàn)一些簡單的3D效果。

在ApiDemo中可參考那個Rotate3dAnimation例子。

其實Camera就兩個方法:translate和rotate,下面逐一探討一番吧。

代碼很簡單,做一個小小的自定義View來做試驗罷了。我引入的這張圖片尺寸是480*600(因為手機是480*854)。

  1. protected void onDraw(Canvas canvas) {  
  2.             canvas.drawColor(0xFFCCCCCC);     
  3.              
  4.             //Log.d(TAG,"bit w "+bitmap.getWidth()+",h "+bitmap.getHeight());  
  5.              
  6.             Paint paint = new Paint();  
  7.             paint.setColor(Color.DKGRAY);  
  8.             paint.setStrokeWidth(2.0f);  
  9.             paint.setStyle(Paint.Style.STROKE);  
  10.              
  11.             canvas.drawLine(0600480600, paint);  
  12.             for(int i=0;50*i<600;i++)  
  13.                 canvas.drawLine(050*i, 48050*i, paint);  
  14.             for(int i=0;50*i<480;i++)  
  15.                 canvas.drawLine(50*i, 050*i, 600, paint);  
  16.              
  17.              
  18.             Matrix matrix = new Matrix();  
  19.              
  20.             Camera c = new Camera();  
  21.             c.save();  
  22.              
  23.             //機位的正向轉(zhuǎn)動引起圖片向屏幕里翻轉(zhuǎn)  
  24.             //但是繞Z軸的轉(zhuǎn)動,引起圖片平面的旋轉(zhuǎn)(2D效果)  
  25.             c.rotateZ(45);  
  26.              
  27.             //X引起圖片向右移動50(正向朝右)  
  28.             //Y引起圖片向上移動50(正向朝上)  
  29.             //Z引起圖片縮?。ㄕ蛑赶蜃约海?/span>  
  30.             c.translate(100f, 0f, 300f);  
  31.             c.getMatrix(matrix);  
  32.             //c.applyToCanvas(canvas);  
  33.              
  34.             c.restore();  
  35.              
  36.         //移到中心點上  
  37.             matrix.preTranslate(-240, -300);  
  38.             matrix.postTranslate(240300);  
  39.              
  40.             canvas.concat(matrix);  
  41.              
  42.             canvas.drawBitmap(bitmap, 0,0,null);  
  43.             //canvas.drawBitmap(bitmap, matrix, null);  
  44.              
  45.              
  46.         }  
  47.     }  

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約