ワーク画面の指定範囲をメイン画面の指定範囲にコピー

構文 canvas.putg(Xm0,Ym0,Xm1,Ym1,Xw0,Yw0,Xw1,Yw1)
説明 ワーク画面の指定範囲をメイン画面の指定範囲にコピーします。
引数 Xm0: メイン画面の左上X座標
Ym0: メイン画面の左上Y座標
Xm1: メイン画面の右下X座標
Ym1: メイン画面の右下Y座標
Xw0: ワーク画面の左上X座標
Yw0: ワーク画面の左上Y座標
Xw1: ワーク画面の右下X座標
Yw1: ワーク画面の右下Y座標
メイン画面の指定範囲とワーク画面の指定範囲は必ずしも同じでなくて大丈夫です。異なる場合はメイン画面にコピーされるとき、ワーク画像が変形してコピーされます。描画結果はcanvas.putflush()か、canvas.draw~命令が実行されるまで、実画面に表示されません。
戻り値 なし

------------------------------------------
-- ワーク画面の指定範囲をメイン画面の指定範囲にコピーするサンプル canvas_putg_sample.lua
------------------------------------------
function main()
 
  local i
  w,h = canvas.getviewSize()
 
  canvas.drawCls(color(255,255,255))
  canvas.drawText("ワーク画面の指定範囲をメイン画面の指定範囲にコピーするサンプル", 0, 0, 24, color(0,0,0))
  canvas.drawText("画面タッチで画像が拡大します。", 0, 240, 24, color(0,0,0))
  touch(3)
 
  canvas.workCls()
  canvas.loadBmp(system.getAppPath().."/".."lua.bmp", 0, 0, 150, 150)
 
  canvas.putg( w/2-150/2, h/2-150/2, w/2+150/2, h/2+150/2, 0, 0, 150, 150 )
  canvas.putflush()
 
  for i=1,5,0.05 do
    canvas.putg( w/2-150*i/2, h/2-150*i/2, w/2+150*i/2, h/2+150*i/2, 0, 0, 150, 150 )
    canvas.putflush()
  end
 
  canvas.drawText("画面タッチで終了します。", 0, 240, 24, color(0,0,0))
  touch(3)
 
end
 
main()
 
使用した画像ファイル。保存場所は、SDカードの「/luarida」の中に、画像ファイルは、「lua.bmp」です。

1.ワーク画面の指定範囲をメイン画面の指定範囲にコピーするサンプルです。
2.ワーク画面に描画されたLuaの画像をメイン画面の指定範囲にコピーします。
3.メイン画面の指定範囲を拡大することでLua画像が大きくなります。


コメント(最大10行)
  • 引数のレイアウトを修正しました。 -- (DSLua@wiki) 2011-10-26 23:16:39
名前:
コメント

すべてのコメントを見る



タグ:

+ タグ編集
  • タグ:
最終更新:2011年10月26日 23:15
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。