描画オブジェクトの拡大縮小方法についてです。単なる拡大縮小ではなく、描画中に徐々に拡大縮小する方法です。
基本的な考え方は「オブジェクトの移動」と同様です。
キャンセル・一時停止・再開はこちらを参照してください。
移動関係の各種イベントはこちらを参照してください。
1.関数の説明
リファレンスを見ると関数と引数は以下の通りです。
transition.scaleTo(target, params)
transition.scaleBy(target, params)
引数名 | 説明 |
---|---|
target | 拡大・縮小させる対象 |
params | パラメータ |
パラメータ
注:パラメータはすべてオプションなので、設定しなくても動作します。
名前 | 説明 |
---|---|
xScale | x軸の拡大・縮小の倍率 |
yScale | y軸の拡大・縮小の倍率 |
time | 拡大・縮小が完了するまでの時間(ミリ秒) |
tag | 識別用の名前(キャンセルや一時停止などで使用可能) |
transition | 拡大・縮小の仕方(easingライブラリを指定) |
delay | 指定時間後に拡大・縮小を開始(ミリ秒) |
onStart | 拡大・縮小が開始した際に呼び出す関数を指定 |
onComplete | 拡大・縮小が完了した際に呼び出す関数を指定 |
onPause | 拡大・縮小が一時停止した際に呼び出す関数を指定 |
onResume | 拡大・縮小が再開した際に呼び出す関数を指定 |
onCancel | 拡大・縮小をキャンセルした際に呼び出す関数を指定 |
2. サンプル
2.1 拡大
local obj1 = display.newRect(100, 100, 50, 50)
obj1:setFillColor(1, 0, 0, 1)
local retTransition = transition.scaleTo(obj1, {xScale = 1.5, yScale = 2, time = 2000})
2.2 縮小
local obj1 = display.newRect(100, 100, 50, 50)
obj1:setFillColor(1, 0, 0, 1)
local retTransition = transition.scaleTo(obj1, {xScale = 0.5, yScale = 0.5, time = 2000})
2.3 移動と拡大
local obj1 = display.newRect(100, 100, 50, 50)
obj1:setFillColor(1, 0, 0, 1)
local retTransition = transition.scaleTo(obj1, {x = 200, y = 200, xScale = 2, yScale = 2, time = 2000})
<更新履歴>
版 | 更新日 | Corona SDKのバージョン |
新規作成 | 2015年9月11日 | v2015.2646 |