Androidアプリ開発逆引き大全 500の極意

グラフィックスとアニメーション - Tips460 ビットマップ領域を変形する

登録タグ
Icon comment count 0
Icon stock count 0

7-3Canvas上の2D描画Tips460 ビットマップ領域を変形する

対応Ver:全て

Level3

Answer規則的な変形を行うための「マトリックス」を 利用する

ビットマップ領域に、平行移動・回転・拡大縮小などの変形を行うには、「ビットマップ上の各点を規則的に変形する」ための「マトリックス(数学で扱うような数値配列)」を、ビットマップの配列と掛けあわせます。

このような規則的な変形のためのマトリックスは「掛けあわせるメソッド」という形で、Androidに用意されています。

たとえば、リスト1のsetRotateメソッドは、「配列を用いて、ビットマップを引数の値だけ回転させる」メソッドです。

 配列を用いて30度回転させてから、描画
Matrix matrix = new Matrix();
matrix.setRotate(30);
canvas.drawBitmap(
   mBitmap, matrix, 
new Paint

出典情報

Medium

Androidアプリ開発逆引き大全 500の極意

  • 著者: 清水 美樹

コメント

    コメントはありません