メイン画面の内容を実画面にフラッシュ

構文 canvas.putflush([X0,Y0,X,Y1])
説明 メイン画面の内容を実画面にフラッシュします。
引数 X0: フラッシュ範囲の左上X座標
Y0: フラッシュ範囲の左上Y座標
X1: フラッシュ範囲の右下X座標
Y1: フラッシュ範囲の右下Y座標
フラッシュ範囲を指定するとメイン画面の部分的なフラッシュが可能ですが、これは非推奨です。通常は引数なしでフラッシュしてください。
戻り値 なし

関連性があるのは、
canvas.putCircle、canvas.putCls、canvas.putg、canvas.putLine、canvas.putRect、canvas.putrotg、canvas.putWork、canvas.putText、canvas.putTextBox、canvas.putTextRotate

------------------------------------------
-- メイン画面の内容を実画面にフラッシュするサンプル canvas_putflush_sample.lua
------------------------------------------
function main()
 
  canvas.drawCls(color(255,255,255))
 
  canvas.drawText("メイン画面の内容を実画面にフラッシュするサンプル", 0, 0, 24, color(0,0,0))
  canvas.drawText("タッチで、まずはdrawで描画。一つづつ。", 0, 50, 24, color(0,0,0))
  touch(3)
 
  canvas.drawCircle(150,150,50,color(255,0,0),1)
  for i=50,250,10 do
    canvas.drawCircle(300 + i,300,50,color(0,255,0))
  end
  canvas.drawLine(10,200,300,250,color(255,0,0),1)
  canvas.drawLine(10,250,300,200,color(255,0,0),1)
  canvas.drawRect(50,300,100,350,color(255,0,0),1)
  canvas.drawRect(80,270,150,320,color(255,0,0),1)
 
  canvas.drawText("メイン画面の内容を実画面にフラッシュするサンプル", 0, 0, 24, color(0,0,0))
  canvas.drawText("タッチで、putで描画はパッと切り替え。 ", 0, 50, 24, color(0,0,0),color(255,255,255))
 
  canvas.putCls(color(255,255,255))
  canvas.putCircle(150+50,150+50,50,color(255,0,0),1)
  for i=50,250,10 do
    canvas.putCircle(300+50 +i,300+50,50,color(0,255,0))
  end
  canvas.putLine(10+50,200+50,300+50,250+50,color(255,0,0),1)
  canvas.putLine(10+50,250+50,300+50,200+50,color(255,0,0),1)
  canvas.putRect(50+50,300+50,100+50,350+50,color(255,0,0),1)
  canvas.putRect(80+50,270+50,150+50,320+50,color(255,0,0),1)
 
  touch(3)
  canvas.putflush()
 
  canvas.drawText("メイン画面の内容を実画面にフラッシュするサンプル", 0, 0, 24, color(0,0,0))
  canvas.drawText("画面タッチで終了します。", 0, 50, 24, color(0,0,0),color(255,255,255))
  touch(3)
 
end
 
main()
 

1.メイン画面の内容を実画面にフラッシュでするサンプルです。まずは描画の違いを感じてもらうため、drawで描画します。
2.draw描画は描画しているのが分かります。
3.putflushを使用すると、一瞬のうちに描画されます。


コメント(最大10行)
  • こんにちは。
    putflush()は、draw**()系のコマンド内で必ず呼ばれるので、putflush()を実行せずに、canvas.drawText()でputflush()を兼ねてしまうというテクニックが使えます。
    例えば、例題の場合、canvas.putflush()が無くても、同じ結果が得られます。
    後、putflush()の関連性については、sprite.put()もあります。まだバグ取れていないので、今週中に何とかしたいと思います。 -- (たろサ) 2011-10-24 02:56:14
  • 例題が良くないですよね。すぐ後にcanvas.drawText()があるのは、判っていましたが・・・良い例題が思いつかない。
    例題のペースより、新しいコマンドのペースの方が速い(例題が遅すぎ)。http関連に至っては、手も付けていません。
    そして新しいコマンド、スプライトが!。 -- (DSLua@wiki) 2011-10-24 09:03:45
名前:
コメント

すべてのコメントを見る



タグ:

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

下から選んでください:

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