グラデーション塗りの学習
forked from MyTemplate (diff: 146)
グラデーション塗りの学習
ActionScript3 source code
/**
* Copyright autumngoodluck ( http://wonderfl.net/user/autumngoodluck )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/3eUs
*/
// forked from autumngoodluck's MyTemplate
/*
* グラデーション塗りの学習
*/
package
{
import flash.display.GradientType;
import flash.display.Sprite;
[SWF(width="465", height="465", backgroundColor="0xFFFFFF", frameRate="12")]
public class GradientFillSample extends Sprite
{
public function GradientFillSample()
{
var colors:Array = [0x00FF00, 0x000000]; // 緑から黒へ
var alphas:Array = [1, 1]; // 緑も黒も 100% の透明度
var ratios:Array = [0, 255]; // 等しく重みづけしたグラデーション(緑から黒への変化が均等になる)
// [ 0, 127]: 黒多め(黒への変化が早い)
// [127, 255]: 緑多め(黒への変化が遅い)
var canvas:Sprite = new Sprite(); // 描画用のキャンバスを準備
// グラデーション塗りを適用した矩形の描画(まだ表示されない)
canvas.graphics.beginGradientFill(GradientType.RADIAL, // RADIAL: 放射状グラデーション, LINEAR: 線状グラデーション
colors,
alphas,
ratios);
// canvas.graphics.drawRect(0, 0, 100, 100); // 矩形
canvas.graphics.drawCircle(50, 50, 50); // 円
canvas.graphics.endFill();
// 先程描いた矩形をステージ中央に再配置(まだ表示されない)
canvas.x = (stage.stageWidth - canvas.width) / 2;
canvas.y = (stage.stageHeight - canvas.height) / 2;
// 「表示リスト」に追加(ここで表示される)
addChild(canvas);
}
}
}
