<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>jp.ferv.blog &#187; Tweensy</title>
	<atom:link href="http://ferv.jp/blog/tag/tweensy/feed/" rel="self" type="application/rss+xml" />
	<link>http://ferv.jp/blog</link>
	<description>「ActionScriptは素晴らしい。コンパイルする価値がある。」って偉い人が言ってた。</description>
	<lastBuildDate>Sun, 15 Aug 2010 00:42:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Tweensy - easeOutIn</title>
		<link>http://ferv.jp/blog/2009/05/28/tweensy-easeoutin/</link>
		<comments>http://ferv.jp/blog/2009/05/28/tweensy-easeoutin/#comments</comments>
		<pubDate>Wed, 27 May 2009 16:58:37 +0000</pubDate>
		<dc:creator>dsk</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[Tweener]]></category>
		<category><![CDATA[Tweensy]]></category>

		<guid isPermaLink="false">http://flabo.org/?p=840</guid>
		<description><![CDATA[
TweenerにはあってTweensyにないトランジションタイプがeaseOutIn系。
これは、Tweenerがトランジションを計算する caurina.transitions.Equations クラスにはease [...]]]></description>
			<content:encoded><![CDATA[<p><a rel="shadowbox;width=600;height=780;" href="http://ferv.jp/blog/wp-content/uploads/2009/05/tweensy_easeoutin.swf"><img src="http://ferv.jp/blog/wp-content/uploads/2009/05/tweensy_easeoutin.png" alt="tweensy_easeoutin" title="tweensy_easeoutin" width="600" height="150" class="alignnone size-full wp-image-841" /></a><p>
<p>TweenerにはあってTweensyにないトランジションタイプがeaseOutIn系。
これは、Tweenerがトランジションを計算する <code>caurina.transitions.Equations</code> クラスにはeaseOutIn系関数が実装されているが、Tweensyで使う <a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/package-detail.html">fl.motion.easing</a> にはeaseOutIn系の関数が実装されていないからだ。<br />
なので、TweensyでeaseOutIn系の動きをさせたいときには <code>Tweener</code> の <code>Equations.easeOutIn***</code> 関数を、Tweensyの引数の <code>ease:Function</code> に渡して夢のコラボを実現するわけ。</p>
<p><code>caurina.transitions.Equations</code> クラスの <code>aseOutInQuad</code> 関数を <code>Tweensy.to</code> の第四引数で渡すとこだけ例を挙げておく。</p>
	<ul class="syntax_hilite_header">		<li class="language">ActionScript</li>		<li class="filename">Tweensy_easeOutIn.as</li>	<li class="source"><a href="#actionscript-2_plane" rel="shadowbox;">Source</a></li></ul><div class="syntax_hilite_planecode" id="actionscript-2_plane"><pre>package {
	import caurina.transitions.Equations;
	import com.flashdynamix.motion.Tweensy;
	import flash.display.Sprite;

	// 中略

	public class Tweensy_easeOutIn extends Sprite {

		// 中略

		private function start():void {
			Tweensy.to(box, { x: 500 }, 3, Equations.easeOutInQuad);
		}

	}
}</pre></div><div class="syntax_hilite">
<div id="actionscript-2">
<div class="actionscript actionscript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">package <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> caurina.<span class="me1">transitions</span>.<span class="me1">Equations</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">Tweensy</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="co1">// 中略</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">class</span> Tweensy_easeOutIn <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// 中略</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> <span class="kw3">start</span><span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>box, <span class="br0">&#123;</span> x: <span class="nu0">500</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Equations.<span class="me1">easeOutInQuad</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div>
</div></div><br />
<p>でも、そもそもeaseOutIn系ってあんま使わないかも・・・</p>]]></content:encoded>
			<wfw:commentRss>http://ferv.jp/blog/2009/05/28/tweensy-easeoutin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TweensySequence - push</title>
		<link>http://ferv.jp/blog/2009/05/21/tweensy_12/</link>
		<comments>http://ferv.jp/blog/2009/05/21/tweensy_12/#comments</comments>
		<pubDate>Wed, 20 May 2009 15:26:23 +0000</pubDate>
		<dc:creator>dsk</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[Tweensy]]></category>

		<guid isPermaLink="false">http://flabo.org/?p=681</guid>
		<description><![CDATA[Tweensyで連続したアニメーションをしたいけど、それらを一連のトゥィーンとして管理したい。そんな時に使うのがTweensySequenceクラス。
アニメーションしたい順にTweensySequence.push()して、シーケンスに登録する。で、TweensySequence.start()で開始する。
TestTweensy_12.swf
			ActionScript		TestTweensy_12.as	Sourcepackage  {
	import com.flashdynamix.motion.TweensySequence;
	import fl.motion.easing.Elastic;
]]></description>
			<content:encoded><![CDATA[<p>Tweensyで連続したアニメーションをしたいけど、それらを一連のトゥィーンとして管理したい。そんな時に使うのがTweensySequenceクラス。</p>
<p>アニメーションしたい順にTweensySequence.push()して、シーケンスに登録する。で、TweensySequence.start()で開始する。</p>
<p><a rel="shadowbox;width=600;height=400;" href="http://ferv.jp/blog/wp-content/uploads/2009/05/testtweensy_12.swf">TestTweensy_12.swf</a><p>
	<ul class="syntax_hilite_header">		<li class="language">ActionScript</li>		<li class="filename">TestTweensy_12.as</li>	<li class="source"><a href="#actionscript-4_plane" rel="shadowbox;">Source</a></li></ul><div class="syntax_hilite_planecode" id="actionscript-4_plane"><pre>package  {
	import com.flashdynamix.motion.TweensySequence;
	import fl.motion.easing.Elastic;
	import fl.motion.easing.Quadratic;
	import flash.display.Graphics;
	import flash.display.Sprite;
	import flash.events.MouseEvent;

	[SWF(backgroundColor = 0x000000, width = 600, height = 400, frameRate = 30)]
	public class TestTweensy_12 extends Sprite {

		private var _arrow:Sprite;
		private var _tweensySequence:TweensySequence;
		private var _button:Button;

		public function TestTweensy_12() {
			initArrow();
			initTweensySequence();
			initButton();

			startTweensySequence();
		}

		private function initArrow():void{
			_arrow = createArrow();
			_arrow.x = 50;
			_arrow.y = 50;
			addChild(_arrow);
		}

		private function createArrow():Sprite {
			var arrow:Sprite = new Sprite();
			var graphics:Graphics = arrow.graphics;
			var commands:Vector.<int> = new Vector.<int>(8, true);
			var data:Vector.<number> = new Vector.<number>(16, true);

			commands[0] = 1;
			commands[1] = commands[2] = commands[3] = commands[4] = commands[5] = commands[6] = commands[7] = 2;
			data[0] = 10; data[1] = 0;
			data[2] = 0; data[3] = -10;
			data[4] = 0; data[5] = -5;
			data[6] = -10; data[7] = -5;
			data[8] = -10; data[9] = 5;
			data[10] = 0; data[11] = 5;
			data[12] = 0; data[13] = 10;
			data[14] = 10; data[15] = 0;

			graphics.beginFill(0x0099cc);
			graphics.drawPath(commands, data);
			graphics.endFill();

			return arrow;
		}

		private function initTweensySequence():void{
			_tweensySequence = new TweensySequence();

			_tweensySequence.push(_arrow, { x: 550 }, 1, Quadratic.easeOut);
			_tweensySequence.push(_arrow, { rotation: 90 }, 1, Elastic.easeOut);
			_tweensySequence.push(_arrow, { y: 350 }, 1, Quadratic.easeOut);
			_tweensySequence.push(_arrow, { rotation: -180 }, 1, Elastic.easeOut);
			_tweensySequence.push(_arrow, { x: 50 }, 1, Quadratic.easeOut);
			_tweensySequence.push(_arrow, { rotation: -90 }, 1, Elastic.easeOut);
			_tweensySequence.push(_arrow, { y: 50 }, 1, Quadratic.easeOut);
			_tweensySequence.push(_arrow, { rotation: 0 }, 1, Elastic.easeOut, 0, 1);

			_tweensySequence.onComplete = onTweensySequenceComplete;
		}

		private function onTweensySequenceComplete():void{
			_tweensySequence.stop();
			_tweensySequence.replay();
		}

		private function initButton():void{
			_button = new Button();
			_button.label = 'pause()';
			_button.addEventListener(MouseEvent.CLICK, onButtonClick);
			addChild(_button);
		}

		private function startTweensySequence():void {
			_tweensySequence.start();
		}

		private function onButtonClick(e:MouseEvent):void {
			if (_tweensySequence.paused) {
				_tweensySequence.resume();
				_button.label = 'pause()';
			} else {
				_tweensySequence.pause();
				_button.label = 'resume()';
			}
		}


	}

}


import flash.display.Graphics;
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.filters.BevelFilter;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;

internal class Button extends Sprite {

	private var _textField:TextField;

	public function get label():String { return _textField.text; }
	public function set label(value:String):void {
		_textField.text = value;
		updateFill();
	}

	public function Button() {
		_textField = new TextField();
		_textField.defaultTextFormat = new TextFormat('_等幅', 10, 0x333333, true);
		_textField.autoSize = TextFieldAutoSize.LEFT;
		_textField.x = 8;
		_textField.y = 4;
		addChild(_textField);

		filters = [new BevelFilter(1, 45, 0xdddddd, 0xbbbbbb)];
		buttonMode = true;
		mouseChildren = false;
		addEventListener(MouseEvent.MOUSE_UP, onButtonMouseUp);
		addEventListener(MouseEvent.MOUSE_DOWN, onButtonMouseDown);
	}

	private function onButtonMouseUp(e:MouseEvent):void {
		var button:Sprite = e.currentTarget as Sprite;

		button.filters = null;
		button.filters = [new BevelFilter(1, 45, 0xdddddd, 0xbbbbbb)];
	}

	private function onButtonMouseDown(e:MouseEvent):void {
		var button:Sprite = e.currentTarget as Sprite;

		button.filters = null;
		button.filters = [new BevelFilter(1, 225, 0xdddddd, 0xbbbbbb)];
	}

	private function updateFill():void {
		graphics.clear();
		graphics.beginFill(0xCCCCCC);
		graphics.drawRect(0, 0, _textField.textWidth + 20, _textField.textHeight + 14);
		graphics.endFill();
	}

}</pre></div><div class="syntax_hilite">
<div id="actionscript-4">
<div class="actionscript actionscript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">package &nbsp;<span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">TweensySequence</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Elastic</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Quadratic</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Graphics</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">events</span>.<span class="me1">MouseEvent</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>SWF<span class="br0">&#40;</span><span class="kw3">backgroundColor</span> = 0x000000, <span class="kw3">width</span> = <span class="nu0">600</span>, <span class="kw3">height</span> = <span class="nu0">400</span>, frameRate = <span class="nu0">30</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">class</span> TestTweensy_12 <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _arrow:Sprite;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _tweensySequence:TweensySequence;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _button:<span class="kw3">Button</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> TestTweensy_12<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initArrow<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initTweensySequence<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initButton<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startTweensySequence<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initArrow<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _arrow = createArrow<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _arrow.<span class="me1">x</span> = <span class="nu0">50</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _arrow.<span class="me1">y</span> = <span class="nu0">50</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_arrow<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> createArrow<span class="br0">&#40;</span><span class="br0">&#41;</span>:Sprite <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> arrow:Sprite = <span class="kw2">new</span> Sprite<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> graphics:Graphics = arrow.<span class="me1">graphics</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> commands:Vector.<span class="sy0">&lt;</span>int<span class="sy0">&gt;</span> = <span class="kw2">new</span> Vector.<span class="sy0">&lt;</span>int<span class="sy0">&gt;</span><span class="br0">&#40;</span><span class="nu0">8</span>, <span class="kw2">true</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">data</span>:Vector.<span class="sy0">&lt;</span>number<span class="sy0">&gt;</span> = <span class="kw2">new</span> Vector.<span class="sy0">&lt;</span>number<span class="sy0">&gt;</span><span class="br0">&#40;</span><span class="nu0">16</span>, <span class="kw2">true</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; commands<span class="br0">&#91;</span>0<span class="br0">&#93;</span> = <span class="nu0">1</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; commands<span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">4</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">5</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">6</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">7</span><span class="br0">&#93;</span> = <span class="nu0">2</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span>0<span class="br0">&#93;</span> = <span class="nu0">10</span>; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span> = 0;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span> = 0; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span> = -<span class="nu0">10</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">4</span><span class="br0">&#93;</span> = 0; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">5</span><span class="br0">&#93;</span> = -<span class="nu0">5</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">6</span><span class="br0">&#93;</span> = -<span class="nu0">10</span>; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">7</span><span class="br0">&#93;</span> = -<span class="nu0">5</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">8</span><span class="br0">&#93;</span> = -<span class="nu0">10</span>; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">9</span><span class="br0">&#93;</span> = <span class="nu0">5</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">10</span><span class="br0">&#93;</span> = 0; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">11</span><span class="br0">&#93;</span> = <span class="nu0">5</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">12</span><span class="br0">&#93;</span> = 0; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">13</span><span class="br0">&#93;</span> = <span class="nu0">10</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">14</span><span class="br0">&#93;</span> = <span class="nu0">10</span>; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">15</span><span class="br0">&#93;</span> = 0;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">beginFill</span><span class="br0">&#40;</span>0x0099cc<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="me1">drawPath</span><span class="br0">&#40;</span>commands, <span class="kw3">data</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">endFill</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> arrow;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initTweensySequence<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence = <span class="kw2">new</span> TweensySequence<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="kw3">push</span><span class="br0">&#40;</span>_arrow, <span class="br0">&#123;</span> x: <span class="nu0">550</span> <span class="br0">&#125;</span>, <span class="nu0">1</span>, Quadratic.<span class="me1">easeOut</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="kw3">push</span><span class="br0">&#40;</span>_arrow, <span class="br0">&#123;</span> rotation: <span class="nu0">90</span> <span class="br0">&#125;</span>, <span class="nu0">1</span>, Elastic.<span class="me1">easeOut</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="kw3">push</span><span class="br0">&#40;</span>_arrow, <span class="br0">&#123;</span> y: <span class="nu0">350</span> <span class="br0">&#125;</span>, <span class="nu0">1</span>, Quadratic.<span class="me1">easeOut</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="kw3">push</span><span class="br0">&#40;</span>_arrow, <span class="br0">&#123;</span> rotation: -<span class="nu0">180</span> <span class="br0">&#125;</span>, <span class="nu0">1</span>, Elastic.<span class="me1">easeOut</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="kw3">push</span><span class="br0">&#40;</span>_arrow, <span class="br0">&#123;</span> x: <span class="nu0">50</span> <span class="br0">&#125;</span>, <span class="nu0">1</span>, Quadratic.<span class="me1">easeOut</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="kw3">push</span><span class="br0">&#40;</span>_arrow, <span class="br0">&#123;</span> rotation: -<span class="nu0">90</span> <span class="br0">&#125;</span>, <span class="nu0">1</span>, Elastic.<span class="me1">easeOut</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="kw3">push</span><span class="br0">&#40;</span>_arrow, <span class="br0">&#123;</span> y: <span class="nu0">50</span> <span class="br0">&#125;</span>, <span class="nu0">1</span>, Quadratic.<span class="me1">easeOut</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="kw3">push</span><span class="br0">&#40;</span>_arrow, <span class="br0">&#123;</span> rotation: 0 <span class="br0">&#125;</span>, <span class="nu0">1</span>, Elastic.<span class="me1">easeOut</span>, 0, <span class="nu0">1</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="me1">onComplete</span> = onTweensySequenceComplete;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onTweensySequenceComplete<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="kw3">stop</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="me1">replay</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initButton<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _button = <span class="kw2">new</span> <span class="kw3">Button</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _button.<span class="me1">label</span> = <span class="st0">'pause()'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _button.<span class="me1">addEventListener</span><span class="br0">&#40;</span>MouseEvent.<span class="me1">CLICK</span>, onButtonClick<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_button<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startTweensySequence<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="kw3">start</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonClick<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>_tweensySequence.<span class="me1">paused</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="me1">resume</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _button.<span class="me1">label</span> = <span class="st0">'pause()'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensySequence.<span class="kw3">pause</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _button.<span class="me1">label</span> = <span class="st0">'resume()'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Graphics</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="me1">events</span>.<span class="me1">MouseEvent</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">BevelFilter</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">internal <span class="kw2">class</span> <span class="kw3">Button</span> <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _textField:<span class="kw3">TextField</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">get</span> label<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">String</span> <span class="br0">&#123;</span> <span class="kw1">return</span> _textField.<span class="kw3">text</span>; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">set</span> label<span class="br0">&#40;</span>value:<span class="kw3">String</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">text</span> = value;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; updateFill<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">Button</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">defaultTextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0x333333, <span class="kw2">true</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">autoSize</span> = TextFieldAutoSize.<span class="kw3">LEFT</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">x</span> = <span class="nu0">8</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">y</span> = <span class="nu0">4</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_textField<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; filters = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">45</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; buttonMode = <span class="kw2">true</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; mouseChildren = <span class="kw2">false</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>MouseEvent.<span class="me1">MOUSE_UP</span>, onButtonMouseUp<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>MouseEvent.<span class="me1">MOUSE_DOWN</span>, onButtonMouseDown<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonMouseUp<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:Sprite = <span class="kw3">e</span>.<span class="me1">currentTarget</span> as Sprite;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">45</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonMouseDown<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:Sprite = <span class="kw3">e</span>.<span class="me1">currentTarget</span> as Sprite;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">225</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> updateFill<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">clear</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">beginFill</span><span class="br0">&#40;</span>0xCCCCCC<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="me1">drawRect</span><span class="br0">&#40;</span>0, 0, _textField.<span class="kw3">textWidth</span> + <span class="nu0">20</span>, _textField.<span class="kw3">textHeight</span> + <span class="nu0">14</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">endFill</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span></div></li>
</ol></div>
</div></div><br />]]></content:encoded>
			<wfw:commentRss>http://ferv.jp/blog/2009/05/21/tweensy_12/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TweensyGroup - shortCuts</title>
		<link>http://ferv.jp/blog/2009/05/20/tweensy_11/</link>
		<comments>http://ferv.jp/blog/2009/05/20/tweensy_11/#comments</comments>
		<pubDate>Tue, 19 May 2009 16:04:36 +0000</pubDate>
		<dc:creator>dsk</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[Tweensy]]></category>

		<guid isPermaLink="false">http://flabo.org/?p=678</guid>
		<description><![CDATA[TweensyGroupクラスには、ショートカットメソッドが用意されている。
TweensyGroupのASDocによるとこんな感じ。

alphaTo
brightnessTo
colorTo
colorTransformTo
contrastTo
filterTo
matrixTo
rotateTo
scaleTo
slideTo
soundTransformTo

ここまでやるなら、contrastTo/hueRotationTo/saturationTo/volumeTo/panToとかもあってもいいけどまだないみたい。
今回は、alphaTo/scaleTo/rotateTo/slideToを使ってみた。
TestTweensy_11.swf
			ActionScript		TestTweensy_11.as	Sourcepackage  {
]]></description>
			<content:encoded><![CDATA[<p>TweensyGroupクラスには、ショートカットメソッドが用意されている。</p>
<p><a href="http://docs.flashdynamix.com/tweensy/original/com/flashdynamix/motion/TweensyGroup.html">TweensyGroupのASDoc</a>によるとこんな感じ。
<ul>
<li>alphaTo</li>
<li>brightnessTo</li>
<li>colorTo</li>
<li>colorTransformTo</li>
<li>contrastTo</li>
<li>filterTo</li>
<li>matrixTo</li>
<li>rotateTo</li>
<li>scaleTo</li>
<li>slideTo</li>
<li>soundTransformTo</li>
</ul>
ここまでやるなら、contrastTo/hueRotationTo/saturationTo/volumeTo/panToとかもあってもいいけどまだないみたい。</p>
<p>今回は、alphaTo/scaleTo/rotateTo/slideToを使ってみた。</p>
<p><a rel="shadowbox;width=600;height=400;" href="http://ferv.jp/blog/wp-content/uploads/2009/05/testtweensy_11.swf">TestTweensy_11.swf</a><p>
	<ul class="syntax_hilite_header">		<li class="language">ActionScript</li>		<li class="filename">TestTweensy_11.as</li>	<li class="source"><a href="#actionscript-6_plane" rel="shadowbox;">Source</a></li></ul><div class="syntax_hilite_planecode" id="actionscript-6_plane"><pre>package  {
	import com.flashdynamix.motion.TweensyGroup;
	import fl.motion.easing.Bounce;
	import fl.motion.easing.Elastic;
	import fl.motion.easing.Linear;
	import fl.motion.easing.Quadratic;
	import flash.display.Graphics;
	import flash.display.Sprite;
	import flash.text.TextField;
	import flash.text.TextFieldAutoSize;
	import flash.text.TextFormat;

	[SWF(backgroundColor = 0x000000, width = 600, height = 400, frameRate = 30)]
	public class TestTweensy_11 extends Sprite {

		private var _arrow:Sprite;
		private var _textField:TextField;

		public function TestTweensy_11() {
			initArrow();
			initTextField();

			startTweensyGroup();
		}

		private function initArrow():void {
			_arrow = createArrow();
			_arrow.x = stage.stageWidth / 2;
			_arrow.y = stage.stageHeight / 2;
			addChild(_arrow);
		}

		private function createArrow():Sprite {
			var arrow:Sprite = new Sprite();
			var graphics:Graphics = arrow.graphics;
			var commands:Vector.<int> = new Vector.<int>(8, true);
			var data:Vector.<number> = new Vector.<number>(16, true);

			commands[0] = 1;
			commands[1] = commands[2] = commands[3] = commands[4] = commands[5] = commands[6] = commands[7] = 2;
			data[0] = 10; data[1] = 0;
			data[2] = 0; data[3] = -10;
			data[4] = 0; data[5] = -5;
			data[6] = -10; data[7] = -5;
			data[8] = -10; data[9] = 5;
			data[10] = 0; data[11] = 5;
			data[12] = 0; data[13] = 10;
			data[14] = 10; data[15] = 0;

			graphics.beginFill(0x0099cc);
			graphics.drawPath(commands, data);
			graphics.endFill();

			return arrow;
		}

		private function initTextField():void{
			_textField = createTextField();
			_textField.x = 10;
			_textField.y = 10;
			addChild(_textField);
		}

		private function createTextField():TextField {
			var textField:TextField = new TextField();
			var textFormat:TextFormat = new TextFormat('_等幅', 10, 0xffffff);

			textField.defaultTextFormat = textFormat;
			textField.autoSize = TextFieldAutoSize.LEFT;

			return textField;
		}

		private function startTweensyGroup():void {
			var tweensyGroup:TweensyGroup = new TweensyGroup();
			var targetX:Number = Math.random() * stage.stageWidth;
			var targetY:Number = Math.random() * stage.stageHeight;
			var targetRotation:Number = Math.atan2(targetY - _arrow.y, targetX - _arrow.x) / Math.PI * 180;

			tweensyGroup.slideTo(_arrow, targetX, targetY, 3, Quadratic.easeInOut, 1);
			tweensyGroup.scaleTo(_arrow, 1 + Math.random() * 4, 2, Bounce.easeOut, 2);
			tweensyGroup.rotateTo(_arrow, targetRotation, 4, Elastic.easeOut);
			tweensyGroup.alphaTo(_arrow, 0.5 + Math.random() * 0.5, 1, Linear.easeNone, 3);

			tweensyGroup.onUpdate = onTweensyGroupUpdate;
			tweensyGroup.onComplete = onTweensyGroupComplete;
		}

		private function onTweensyGroupUpdate():void{
			var text:String = '';

			text += '_arrow.x = ' + _arrow.x + '\n';
			text += '_arrow.y = ' + _arrow.y + '\n';
			text += '_arrow.scaleX = ' + _arrow.scaleX + '\n';
			text += '_arrow.scaleY = ' + _arrow.scaleY + '\n';
			text += '_arrow.rotation = ' + _arrow.rotation + '\n';
			text += '_arrow.alpha = ' + _arrow.alpha;

			_textField.text = text;
		}

		private function onTweensyGroupComplete():void{
			startTweensyGroup();
		}


	}

}</pre></div><div class="syntax_hilite">
<div id="actionscript-6">
<div class="actionscript actionscript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">package &nbsp;<span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">TweensyGroup</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Bounce</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Elastic</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Linear</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Quadratic</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Graphics</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>SWF<span class="br0">&#40;</span><span class="kw3">backgroundColor</span> = 0x000000, <span class="kw3">width</span> = <span class="nu0">600</span>, <span class="kw3">height</span> = <span class="nu0">400</span>, frameRate = <span class="nu0">30</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">class</span> TestTweensy_11 <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _arrow:Sprite;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _textField:<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> TestTweensy_11<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initArrow<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initTextField<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startTweensyGroup<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initArrow<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _arrow = createArrow<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _arrow.<span class="me1">x</span> = <span class="kw3">stage</span>.<span class="me1">stageWidth</span> <span class="sy0">/</span> <span class="nu0">2</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _arrow.<span class="me1">y</span> = <span class="kw3">stage</span>.<span class="me1">stageHeight</span> <span class="sy0">/</span> <span class="nu0">2</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_arrow<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> createArrow<span class="br0">&#40;</span><span class="br0">&#41;</span>:Sprite <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> arrow:Sprite = <span class="kw2">new</span> Sprite<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> graphics:Graphics = arrow.<span class="me1">graphics</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> commands:Vector.<span class="sy0">&lt;</span>int<span class="sy0">&gt;</span> = <span class="kw2">new</span> Vector.<span class="sy0">&lt;</span>int<span class="sy0">&gt;</span><span class="br0">&#40;</span><span class="nu0">8</span>, <span class="kw2">true</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">data</span>:Vector.<span class="sy0">&lt;</span>number<span class="sy0">&gt;</span> = <span class="kw2">new</span> Vector.<span class="sy0">&lt;</span>number<span class="sy0">&gt;</span><span class="br0">&#40;</span><span class="nu0">16</span>, <span class="kw2">true</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; commands<span class="br0">&#91;</span>0<span class="br0">&#93;</span> = <span class="nu0">1</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; commands<span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">4</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">5</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">6</span><span class="br0">&#93;</span> = commands<span class="br0">&#91;</span><span class="nu0">7</span><span class="br0">&#93;</span> = <span class="nu0">2</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span>0<span class="br0">&#93;</span> = <span class="nu0">10</span>; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span> = 0;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span> = 0; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span> = -<span class="nu0">10</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">4</span><span class="br0">&#93;</span> = 0; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">5</span><span class="br0">&#93;</span> = -<span class="nu0">5</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">6</span><span class="br0">&#93;</span> = -<span class="nu0">10</span>; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">7</span><span class="br0">&#93;</span> = -<span class="nu0">5</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">8</span><span class="br0">&#93;</span> = -<span class="nu0">10</span>; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">9</span><span class="br0">&#93;</span> = <span class="nu0">5</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">10</span><span class="br0">&#93;</span> = 0; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">11</span><span class="br0">&#93;</span> = <span class="nu0">5</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">12</span><span class="br0">&#93;</span> = 0; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">13</span><span class="br0">&#93;</span> = <span class="nu0">10</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">14</span><span class="br0">&#93;</span> = <span class="nu0">10</span>; <span class="kw3">data</span><span class="br0">&#91;</span><span class="nu0">15</span><span class="br0">&#93;</span> = 0;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">beginFill</span><span class="br0">&#40;</span>0x0099cc<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="me1">drawPath</span><span class="br0">&#40;</span>commands, <span class="kw3">data</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">endFill</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> arrow;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initTextField<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _textField = <span class="kw3">createTextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">x</span> = <span class="nu0">10</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">y</span> = <span class="nu0">10</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_textField<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> <span class="kw3">createTextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">TextField</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">textField</span>:<span class="kw3">TextField</span> = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">textFormat</span>:<span class="kw3">TextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0xffffff<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">defaultTextFormat</span> = <span class="kw3">textFormat</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="kw3">autoSize</span> = TextFieldAutoSize.<span class="kw3">LEFT</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="kw3">textField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startTweensyGroup<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> tweensyGroup:TweensyGroup = <span class="kw2">new</span> TweensyGroup<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> targetX:<span class="kw3">Number</span> = <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="kw3">stage</span>.<span class="me1">stageWidth</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> targetY:<span class="kw3">Number</span> = <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="kw3">stage</span>.<span class="me1">stageHeight</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> targetRotation:<span class="kw3">Number</span> = <span class="kw3">Math</span>.<span class="kw3">atan2</span><span class="br0">&#40;</span>targetY - _arrow.<span class="me1">y</span>, targetX - _arrow.<span class="me1">x</span><span class="br0">&#41;</span> <span class="sy0">/</span> <span class="kw3">Math</span>.<span class="kw3">PI</span> <span class="sy0">*</span> <span class="nu0">180</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="me1">slideTo</span><span class="br0">&#40;</span>_arrow, targetX, targetY, <span class="nu0">3</span>, Quadratic.<span class="me1">easeInOut</span>, <span class="nu0">1</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="me1">scaleTo</span><span class="br0">&#40;</span>_arrow, <span class="nu0">1</span> + <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="nu0">4</span>, <span class="nu0">2</span>, Bounce.<span class="me1">easeOut</span>, <span class="nu0">2</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="me1">rotateTo</span><span class="br0">&#40;</span>_arrow, targetRotation, <span class="nu0">4</span>, Elastic.<span class="me1">easeOut</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="me1">alphaTo</span><span class="br0">&#40;</span>_arrow, <span class="nu0">0.5</span> + <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="nu0">0.5</span>, <span class="nu0">1</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">3</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="kw3">onUpdate</span> = onTweensyGroupUpdate;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="me1">onComplete</span> = onTweensyGroupComplete;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onTweensyGroupUpdate<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">text</span>:<span class="kw3">String</span> = <span class="st0">''</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'_arrow.x = '</span> + _arrow.<span class="me1">x</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'_arrow.y = '</span> + _arrow.<span class="me1">y</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'_arrow.scaleX = '</span> + _arrow.<span class="me1">scaleX</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'_arrow.scaleY = '</span> + _arrow.<span class="me1">scaleY</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'_arrow.rotation = '</span> + _arrow.<span class="me1">rotation</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'_arrow.alpha = '</span> + _arrow.<span class="me1">alpha</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">text</span> = <span class="kw3">text</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onTweensyGroupComplete<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startTweensyGroup<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div>
</div></div><br />]]></content:encoded>
			<wfw:commentRss>http://ferv.jp/blog/2009/05/20/tweensy_11/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TweensyGroup - to</title>
		<link>http://ferv.jp/blog/2009/05/19/tweensy_10/</link>
		<comments>http://ferv.jp/blog/2009/05/19/tweensy_10/#comments</comments>
		<pubDate>Mon, 18 May 2009 16:29:32 +0000</pubDate>
		<dc:creator>dsk</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[Tweensy]]></category>

		<guid isPermaLink="false">http://flabo.org/?p=670</guid>
		<description><![CDATA[Tweensyで色々なプロパティを動かすんだけど、それらを一括のトゥィーンとして管理したい。そんな時に使うのがTweensyGroupクラス。
下の例では、Spriteを大きくしながら回転させるアニメーションをTweensy.to()とTweensyGroup.to()で動かしてみる。両者とも動きは同じ。Tweensy.to()の場]]></description>
			<content:encoded><![CDATA[<p>Tweensyで色々なプロパティを動かすんだけど、それらを一括のトゥィーンとして管理したい。そんな時に使うのがTweensyGroupクラス。</p>
<p>下の例では、Spriteを大きくしながら回転させるアニメーションをTweensy.to()とTweensyGroup.to()で動かしてみる。両者とも動きは同じ。Tweensy.to()の場合は、scaleX/scaleYのonUpdate/onCompleteとrotationのonUpdate/onCompleteがそれぞれバラバラにイベント処理される。TweensyGroup.to()の場合はscaleX/scaleY/rotationのonUpdate/onCompleteが一括でイベント処理される。</p>
<p><a rel="shadowbox;width=600;height=400;" href="http://ferv.jp/blog/wp-content/uploads/2009/05/testtweensy_10.swf">TestTweensy_10.swf</a><p>
	<ul class="syntax_hilite_header">		<li class="language">ActionScript</li>		<li class="filename">TestTweensy_10.as</li>	<li class="source"><a href="#actionscript-8_plane" rel="shadowbox;">Source</a></li></ul><div class="syntax_hilite_planecode" id="actionscript-8_plane"><pre>package  {
	import com.flashdynamix.motion.Tweensy;
	import com.flashdynamix.motion.TweensyGroup;
	import com.flashdynamix.motion.TweensyTimeline;
	import fl.motion.easing.Quadratic;
	import flash.display.Graphics;
	import flash.display.Sprite;
	import flash.events.MouseEvent;
	import flash.text.TextField;
	import flash.text.TextFieldAutoSize;
	import flash.text.TextFormat;

	[SWF(backgroundColor = 0x000000, width = 600, height = 400, frameRate = 30)]
	public class TestTweensy_10 extends Sprite {

		private var _boxTweensy:Sprite;
		private var _boxTweensyGroup:Sprite;
		private var _tweensyTimeline0TextField:TextField;
		private var _tweensyTimeline1TextField:TextField;
		private var _tweensyGroupTextField:TextField;

		public function TestTweensy_10() {
			initInstances();
			initTextFields();
			initButton();
		}

		private function initInstances():void{
			_boxTweensy = createBox();
			_boxTweensy.x = 300;
			_boxTweensy.y = 100;
			addChild(_boxTweensy);

			_boxTweensyGroup = createBox();
			_boxTweensyGroup.x = 300;
			_boxTweensyGroup.y = 300;
			addChild(_boxTweensyGroup);
		}

		private function createBox():Sprite {
			var box:Sprite = new Sprite();
			var graphics:Graphics = box.graphics;

			graphics.beginFill(0x0099cc);
			graphics.drawRect(-5, -5, 10, 10);
			graphics.endFill();

			return box;
		}

		private function initTextFields():void {
			_tweensyTimeline0TextField = createTextField();
			_tweensyTimeline0TextField.x = 10;
			_tweensyTimeline0TextField.y = 50;
			addChild(_tweensyTimeline0TextField);

			_tweensyTimeline1TextField = createTextField();
			_tweensyTimeline1TextField.x = 10;
			_tweensyTimeline1TextField.y = 100;
			addChild(_tweensyTimeline1TextField);

			_tweensyGroupTextField = createTextField();
			_tweensyGroupTextField.x = 10;
			_tweensyGroupTextField.y = 250;
			addChild(_tweensyGroupTextField);
		}

		private function createTextField():TextField {
			var textField:TextField = new TextField();
			var textFormat:TextFormat = new TextFormat('_等幅', 10, 0xffffff);

			textField.defaultTextFormat = textFormat;
			textField.autoSize = TextFieldAutoSize.LEFT;

			return textField;
		}

		private function initButton():void {
			var button:Button = new Button();
			button.label = 'start';
			button.addEventListener(MouseEvent.CLICK, onButtonClick);
			addChild(button);
		}

		private function onButtonClick(e:MouseEvent):void {
			startTweensy();
			startTweensyGroup();
		}

		private function startTweensy():void {
			_boxTweensy.scaleX = 1;
			_boxTweensy.scaleY = 1;
			_boxTweensy.rotation = 0;
			_tweensyTimeline0TextField.text = '';
			_tweensyTimeline1TextField.text = '';

			var tweensyTimeline0:TweensyTimeline = Tweensy.to(_boxTweensy, { scaleX: 5, scaleY: 5 }, 3, Quadratic.easeOut, 1);
			var tweensyTimeline1:TweensyTimeline = Tweensy.to(_boxTweensy, { rotation: 90 }, 3, Quadratic.easeOut, 2);

			tweensyTimeline0.onUpdate = logTweensyTimeline0;
			tweensyTimeline0.onUpdateParams = ['onUpdate'];
			tweensyTimeline0.onComplete = logTweensyTimeline0;
			tweensyTimeline0.onCompleteParams = ['onComplete'];
			tweensyTimeline1.onUpdate = logTweensyTimeline1;
			tweensyTimeline1.onUpdateParams = ['onUpdate'];
			tweensyTimeline1.onComplete = logTweensyTimeline1;
			tweensyTimeline1.onCompleteParams = ['onComplete'];
		}

		private function startTweensyGroup():void{
			_boxTweensyGroup.scaleX = 1;
			_boxTweensyGroup.scaleY = 1;
			_boxTweensyGroup.rotation = 0;
			_tweensyGroupTextField.text = '';

			var tweensyGroup:TweensyGroup = new TweensyGroup();

			tweensyGroup.to(_boxTweensyGroup, { scaleX: 5, scaleY: 5 }, 3, Quadratic.easeOut, 1);
			tweensyGroup.to(_boxTweensyGroup, { rotation: 90 }, 3, Quadratic.easeOut, 2);

			tweensyGroup.onUpdate = logTweensyGroup;
			tweensyGroup.onUpdateParams = ['onUpdate'];
			tweensyGroup.onComplete = logTweensyGroup;
			tweensyGroup.onCompleteParams = ['onComplete'];
		}

		private function logTweensyTimeline0(text:String):void {
			text += '\n';
			text += 'scaleX = ' + _boxTweensy.scaleX.toString() + '\n';
			text += 'scaleY = ' + _boxTweensy.scaleY.toString();

			_tweensyTimeline0TextField.text = text;
		}

		private function logTweensyTimeline1(text:String):void{
			text += '\n';
			text += 'rotation = ' + _boxTweensy.rotation.toString();

			_tweensyTimeline1TextField.text = text;
		}

		private function logTweensyGroup(text:String):void {
			text += '\n';
			text += 'scaleX = ' + _boxTweensyGroup.scaleX.toString() + '\n';
			text += 'scaleY = ' + _boxTweensyGroup.scaleY.toString() + '\n';
			text += 'rotation = ' + _boxTweensyGroup.rotation.toString();

			_tweensyGroupTextField.text = text;
		}


	}

}


import flash.display.Graphics;
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.filters.BevelFilter;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;

internal class Button extends Sprite {

	private var _textField:TextField;

	public function get label():String { return _textField.text; }
	public function set label(value:String):void {
		_textField.text = value;
		updateFill();
	}

	public function Button() {
		_textField = new TextField();
		_textField.defaultTextFormat = new TextFormat('_等幅', 10, 0x333333, true);
		_textField.autoSize = TextFieldAutoSize.LEFT;
		_textField.x = 8;
		_textField.y = 4;
		addChild(_textField);

		filters = [new BevelFilter(1, 45, 0xdddddd, 0xbbbbbb)];
		buttonMode = true;
		mouseChildren = false;
		addEventListener(MouseEvent.MOUSE_UP, onButtonMouseUp);
		addEventListener(MouseEvent.MOUSE_DOWN, onButtonMouseDown);
	}

	private function onButtonMouseUp(e:MouseEvent):void {
		var button:Sprite = e.currentTarget as Sprite;

		button.filters = null;
		button.filters = [new BevelFilter(1, 45, 0xdddddd, 0xbbbbbb)];
	}

	private function onButtonMouseDown(e:MouseEvent):void {
		var button:Sprite = e.currentTarget as Sprite;

		button.filters = null;
		button.filters = [new BevelFilter(1, 225, 0xdddddd, 0xbbbbbb)];
	}

	private function updateFill():void {
		graphics.clear();
		graphics.beginFill(0xCCCCCC);
		graphics.drawRect(0, 0, _textField.textWidth + 20, _textField.textHeight + 14);
		graphics.endFill();
	}

}</pre></div><div class="syntax_hilite">
<div id="actionscript-8">
<div class="actionscript actionscript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">package &nbsp;<span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">Tweensy</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">TweensyGroup</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">TweensyTimeline</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Quadratic</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Graphics</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">events</span>.<span class="me1">MouseEvent</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>SWF<span class="br0">&#40;</span><span class="kw3">backgroundColor</span> = 0x000000, <span class="kw3">width</span> = <span class="nu0">600</span>, <span class="kw3">height</span> = <span class="nu0">400</span>, frameRate = <span class="nu0">30</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">class</span> TestTweensy_10 <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _boxTweensy:Sprite;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _boxTweensyGroup:Sprite;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _tweensyTimeline0TextField:<span class="kw3">TextField</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _tweensyTimeline1TextField:<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _tweensyGroupTextField:<span class="kw3">TextField</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> TestTweensy_10<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initInstances<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initTextFields<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initButton<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initInstances<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensy = createBox<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensy.<span class="me1">x</span> = <span class="nu0">300</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensy.<span class="me1">y</span> = <span class="nu0">100</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_boxTweensy<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensyGroup = createBox<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensyGroup.<span class="me1">x</span> = <span class="nu0">300</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensyGroup.<span class="me1">y</span> = <span class="nu0">300</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_boxTweensyGroup<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> createBox<span class="br0">&#40;</span><span class="br0">&#41;</span>:Sprite <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> box:Sprite = <span class="kw2">new</span> Sprite<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> graphics:Graphics = box.<span class="me1">graphics</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">beginFill</span><span class="br0">&#40;</span>0x0099cc<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="me1">drawRect</span><span class="br0">&#40;</span>-<span class="nu0">5</span>, -<span class="nu0">5</span>, <span class="nu0">10</span>, <span class="nu0">10</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">endFill</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> box;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initTextFields<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyTimeline0TextField = <span class="kw3">createTextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyTimeline0TextField.<span class="me1">x</span> = <span class="nu0">10</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyTimeline0TextField.<span class="me1">y</span> = <span class="nu0">50</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_tweensyTimeline0TextField<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyTimeline1TextField = <span class="kw3">createTextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyTimeline1TextField.<span class="me1">x</span> = <span class="nu0">10</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyTimeline1TextField.<span class="me1">y</span> = <span class="nu0">100</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_tweensyTimeline1TextField<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyGroupTextField = <span class="kw3">createTextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyGroupTextField.<span class="me1">x</span> = <span class="nu0">10</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyGroupTextField.<span class="me1">y</span> = <span class="nu0">250</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_tweensyGroupTextField<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> <span class="kw3">createTextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">TextField</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">textField</span>:<span class="kw3">TextField</span> = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">textFormat</span>:<span class="kw3">TextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0xffffff<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">defaultTextFormat</span> = <span class="kw3">textFormat</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="kw3">autoSize</span> = TextFieldAutoSize.<span class="kw3">LEFT</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="kw3">textField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initButton<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:<span class="kw3">Button</span> = <span class="kw2">new</span> <span class="kw3">Button</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">label</span> = <span class="st0">'start'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">addEventListener</span><span class="br0">&#40;</span>MouseEvent.<span class="me1">CLICK</span>, onButtonClick<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw3">button</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonClick<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startTweensy<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startTweensyGroup<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startTweensy<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensy.<span class="me1">scaleX</span> = <span class="nu0">1</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensy.<span class="me1">scaleY</span> = <span class="nu0">1</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensy.<span class="me1">rotation</span> = 0;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyTimeline0TextField.<span class="kw3">text</span> = <span class="st0">''</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyTimeline1TextField.<span class="kw3">text</span> = <span class="st0">''</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> tweensyTimeline0:TweensyTimeline = Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>_boxTweensy, <span class="br0">&#123;</span> scaleX: <span class="nu0">5</span>, scaleY: <span class="nu0">5</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Quadratic.<span class="me1">easeOut</span>, <span class="nu0">1</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> tweensyTimeline1:TweensyTimeline = Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>_boxTweensy, <span class="br0">&#123;</span> rotation: <span class="nu0">90</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Quadratic.<span class="me1">easeOut</span>, <span class="nu0">2</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyTimeline0.<span class="kw3">onUpdate</span> = logTweensyTimeline0;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyTimeline0.<span class="me1">onUpdateParams</span> = <span class="br0">&#91;</span><span class="st0">'onUpdate'</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyTimeline0.<span class="me1">onComplete</span> = logTweensyTimeline0;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyTimeline0.<span class="me1">onCompleteParams</span> = <span class="br0">&#91;</span><span class="st0">'onComplete'</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyTimeline1.<span class="kw3">onUpdate</span> = logTweensyTimeline1;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyTimeline1.<span class="me1">onUpdateParams</span> = <span class="br0">&#91;</span><span class="st0">'onUpdate'</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyTimeline1.<span class="me1">onComplete</span> = logTweensyTimeline1;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyTimeline1.<span class="me1">onCompleteParams</span> = <span class="br0">&#91;</span><span class="st0">'onComplete'</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startTweensyGroup<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensyGroup.<span class="me1">scaleX</span> = <span class="nu0">1</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensyGroup.<span class="me1">scaleY</span> = <span class="nu0">1</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxTweensyGroup.<span class="me1">rotation</span> = 0;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyGroupTextField.<span class="kw3">text</span> = <span class="st0">''</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> tweensyGroup:TweensyGroup = <span class="kw2">new</span> TweensyGroup<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="me1">to</span><span class="br0">&#40;</span>_boxTweensyGroup, <span class="br0">&#123;</span> scaleX: <span class="nu0">5</span>, scaleY: <span class="nu0">5</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Quadratic.<span class="me1">easeOut</span>, <span class="nu0">1</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="me1">to</span><span class="br0">&#40;</span>_boxTweensyGroup, <span class="br0">&#123;</span> rotation: <span class="nu0">90</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Quadratic.<span class="me1">easeOut</span>, <span class="nu0">2</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="kw3">onUpdate</span> = logTweensyGroup;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="me1">onUpdateParams</span> = <span class="br0">&#91;</span><span class="st0">'onUpdate'</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="me1">onComplete</span> = logTweensyGroup;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tweensyGroup.<span class="me1">onCompleteParams</span> = <span class="br0">&#91;</span><span class="st0">'onComplete'</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> logTweensyTimeline0<span class="br0">&#40;</span><span class="kw3">text</span>:<span class="kw3">String</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'scaleX = '</span> + _boxTweensy.<span class="me1">scaleX</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'scaleY = '</span> + _boxTweensy.<span class="me1">scaleY</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyTimeline0TextField.<span class="kw3">text</span> = <span class="kw3">text</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> logTweensyTimeline1<span class="br0">&#40;</span><span class="kw3">text</span>:<span class="kw3">String</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'rotation = '</span> + _boxTweensy.<span class="me1">rotation</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyTimeline1TextField.<span class="kw3">text</span> = <span class="kw3">text</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> logTweensyGroup<span class="br0">&#40;</span><span class="kw3">text</span>:<span class="kw3">String</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'scaleX = '</span> + _boxTweensyGroup.<span class="me1">scaleX</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'scaleY = '</span> + _boxTweensyGroup.<span class="me1">scaleY</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'rotation = '</span> + _boxTweensyGroup.<span class="me1">rotation</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _tweensyGroupTextField.<span class="kw3">text</span> = <span class="kw3">text</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Graphics</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="me1">events</span>.<span class="me1">MouseEvent</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">BevelFilter</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">internal <span class="kw2">class</span> <span class="kw3">Button</span> <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _textField:<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">get</span> label<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">String</span> <span class="br0">&#123;</span> <span class="kw1">return</span> _textField.<span class="kw3">text</span>; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">set</span> label<span class="br0">&#40;</span>value:<span class="kw3">String</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">text</span> = value;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; updateFill<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">Button</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">defaultTextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0x333333, <span class="kw2">true</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">autoSize</span> = TextFieldAutoSize.<span class="kw3">LEFT</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">x</span> = <span class="nu0">8</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">y</span> = <span class="nu0">4</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_textField<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; filters = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">45</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; buttonMode = <span class="kw2">true</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; mouseChildren = <span class="kw2">false</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>MouseEvent.<span class="me1">MOUSE_UP</span>, onButtonMouseUp<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>MouseEvent.<span class="me1">MOUSE_DOWN</span>, onButtonMouseDown<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonMouseUp<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:Sprite = <span class="kw3">e</span>.<span class="me1">currentTarget</span> as Sprite;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">45</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonMouseDown<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:Sprite = <span class="kw3">e</span>.<span class="me1">currentTarget</span> as Sprite;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">225</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> updateFill<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">clear</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">beginFill</span><span class="br0">&#40;</span>0xCCCCCC<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="me1">drawRect</span><span class="br0">&#40;</span>0, 0, _textField.<span class="kw3">textWidth</span> + <span class="nu0">20</span>, _textField.<span class="kw3">textHeight</span> + <span class="nu0">14</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">endFill</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div>
</div></div><br />]]></content:encoded>
			<wfw:commentRss>http://ferv.jp/blog/2009/05/19/tweensy_10/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tweensy - sound</title>
		<link>http://ferv.jp/blog/2009/05/18/tweensy_9/</link>
		<comments>http://ferv.jp/blog/2009/05/18/tweensy_9/#comments</comments>
		<pubDate>Mon, 18 May 2009 06:31:49 +0000</pubDate>
		<dc:creator>dsk</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[Tweensy]]></category>

		<guid isPermaLink="false">http://flabo.org/?p=665</guid>
		<description><![CDATA[TweensyでSoundTransformのプロパティをアニメーションしてみる。SoundTransformオブジェクトを作ってそのSoundTransformオブジェクトのプロパティをTweensyでTweenするイメージ。で、updateパラメータにそのSoundTransformを適用するSoundChannelインスタンスを指定する。
mp3ファイルはFLASH KITからFreewareを選んで拝借。
TestTweensy_9.swf（音が出ま]]></description>
			<content:encoded><![CDATA[<p>TweensyでSoundTransformのプロパティをアニメーションしてみる。SoundTransformオブジェクトを作ってそのSoundTransformオブジェクトのプロパティをTweensyでTweenするイメージ。で、updateパラメータにそのSoundTransformを適用するSoundChannelインスタンスを指定する。</p>
<p>mp3ファイルは<a href="http://www.flashkit.com/loops/Ambient/Electronica/intruder-rimela-3386/index.php">FLASH KIT</a>からFreewareを選んで拝借。</p>
<p><a rel="shadowbox;width=600;height=100;" href="http://ferv.jp/blog/wp-content/uploads/2009/05/testtweensy_9.swf">TestTweensy_9.swf</a>（音が出ます。）<p>
	<ul class="syntax_hilite_header">		<li class="language">ActionScript</li>		<li class="filename">TestTweensy_9.as</li>	<li class="source"><a href="#actionscript-10_plane" rel="shadowbox;">Source</a></li></ul><div class="syntax_hilite_planecode" id="actionscript-10_plane"><pre>package  {
	import com.flashdynamix.motion.Tweensy;
	import com.flashdynamix.motion.TweensyTimeline;
	import fl.motion.easing.Linear;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
	import flash.media.Sound;
	import flash.media.SoundChannel;
	import flash.media.SoundTransform;
	import flash.net.URLRequest;
	import flash.text.TextField;
	import flash.text.TextFieldAutoSize;
	import flash.text.TextFormat;

	[SWF(backgroundColor = 0x000000, width = 600, height = 100, frameRate = 30)]
	public class TestTweensy_9 extends Sprite {

		private var _sound:Sound;
		private var _soundChannel:SoundChannel;
		private var _textField:TextField;

		public function TestTweensy_9() {
			initSound();
			initTextField();
			initButtons();
		}

		private function initSound():void{
			var urlRequest:URLRequest = new URLRequest('*.mp3');    // パスは省略

			_sound = new Sound();
			_sound.load(urlRequest);

			_soundChannel = _sound.play();
			_soundChannel.addEventListener(Event.SOUND_COMPLETE, onSoundComplete);
		}

		private function onSoundComplete(e:Event):void {
			_soundChannel.removeEventListener(Event.SOUND_COMPLETE, onSoundComplete);
			_soundChannel = null;

			_soundChannel = _sound.play();
			_soundChannel.addEventListener(Event.SOUND_COMPLETE, onSoundComplete);
		}

		private function initTextField():void {
			var textFormat:TextFormat = new TextFormat('_等幅', 10, 0xffffff);

			_textField = new TextField();
			_textField.defaultTextFormat = textFormat;
			_textField.autoSize = TextFieldAutoSize.LEFT;
			_textField.y = 50;

			addChild(_textField);
		}

		private function initButtons():void {
			var labels:Array = ['VolumeOn', 'VolumeOff', 'PanLeft', 'PanRight'];
			var clickHandlers:Array = [onVolumeOnClick, onVolumeOffClick, onPanLeftClick, onPanRightClick];

			var i:int, button:Button, x:Number;
			for (i = 0; i < 4; i ++) {
				x = (button == null)? 0: button.x + button.width;
				button = new Button();
				button.label = labels[i];
				button.x = x;
				button.addEventListener(MouseEvent.CLICK, clickHandlers[i]);
				addChild(button);
			}
		}

		private function onVolumeOnClick(e:MouseEvent):void {
			var timeline:TweensyTimeline = Tweensy.to(_soundChannel.soundTransform, { volume: 1 }, 3, Linear.easeNone, 0, _soundChannel);
			timeline.onUpdate = onSoundTransformUpdate;
		}

		private function onVolumeOffClick(e:MouseEvent):void {
			var timeline:TweensyTimeline = Tweensy.to(_soundChannel.soundTransform, { volume: 0 }, 3, Linear.easeNone, 0, _soundChannel);
			timeline.onUpdate = onSoundTransformUpdate;
		}

		private function onPanLeftClick(e:MouseEvent):void {
			var timeline:TweensyTimeline = Tweensy.to(_soundChannel.soundTransform, { pan: -1 }, 3, Linear.easeNone, 0, _soundChannel);
			timeline.onUpdate = onSoundTransformUpdate;
		}

		private function onPanRightClick(e:MouseEvent):void {
			var timeline:TweensyTimeline = Tweensy.to(_soundChannel.soundTransform, { pan: 1 }, 3, Linear.easeNone, 0, _soundChannel);
			timeline.onUpdate = onSoundTransformUpdate;
		}

		private function onSoundTransformUpdate():void{
			var soundTransform:SoundTransform = _soundChannel.soundTransform;
			var text:String = '';

			text += '_soundChannel.soundTransform.volume = ' + _soundChannel.soundTransform.volume.toString() + '\n';
			text += '_soundChannel.soundTransform.pan = ' + _soundChannel.soundTransform.pan.toString();

			_textField.text = text;
		}


	}

}


import flash.display.Graphics;
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.filters.BevelFilter;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;

internal class Button extends Sprite {

	private var _textField:TextField;

	public function get label():String { return _textField.text; }
	public function set label(value:String):void {
		_textField.text = value;
		updateFill();
	}

	public function Button() {
		_textField = new TextField();
		_textField.defaultTextFormat = new TextFormat('_等幅', 10, 0x333333, true);
		_textField.autoSize = TextFieldAutoSize.LEFT;
		_textField.x = 8;
		_textField.y = 4;
		addChild(_textField);

		filters = [new BevelFilter(1, 45, 0xdddddd, 0xbbbbbb)];
		buttonMode = true;
		mouseChildren = false;
		addEventListener(MouseEvent.MOUSE_UP, onButtonMouseUp);
		addEventListener(MouseEvent.MOUSE_DOWN, onButtonMouseDown);
	}

	private function onButtonMouseUp(e:MouseEvent):void {
		var button:Sprite = e.currentTarget as Sprite;

		button.filters = null;
		button.filters = [new BevelFilter(1, 45, 0xdddddd, 0xbbbbbb)];
	}

	private function onButtonMouseDown(e:MouseEvent):void {
		var button:Sprite = e.currentTarget as Sprite;

		button.filters = null;
		button.filters = [new BevelFilter(1, 225, 0xdddddd, 0xbbbbbb)];
	}

	private function updateFill():void {
		graphics.clear();
		graphics.beginFill(0xCCCCCC);
		graphics.drawRect(0, 0, _textField.textWidth + 20, _textField.textHeight + 14);
		graphics.endFill();
	}

}</pre></div><div class="syntax_hilite">
<div id="actionscript-10">
<div class="actionscript actionscript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">package &nbsp;<span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">Tweensy</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">TweensyTimeline</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Linear</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">events</span>.<span class="me1">Event</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">events</span>.<span class="me1">MouseEvent</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">media</span>.<span class="kw3">Sound</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">media</span>.<span class="me1">SoundChannel</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">media</span>.<span class="me1">SoundTransform</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">net</span>.<span class="me1">URLRequest</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#91;</span>SWF<span class="br0">&#40;</span><span class="kw3">backgroundColor</span> = 0x000000, <span class="kw3">width</span> = <span class="nu0">600</span>, <span class="kw3">height</span> = <span class="nu0">100</span>, frameRate = <span class="nu0">30</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">class</span> TestTweensy_9 <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _sound:<span class="kw3">Sound</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _soundChannel:SoundChannel;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _textField:<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> TestTweensy_9<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initSound<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initTextField<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initButtons<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initSound<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> urlRequest:URLRequest = <span class="kw2">new</span> URLRequest<span class="br0">&#40;</span><span class="st0">'*.mp3'</span><span class="br0">&#41;</span>; &nbsp; &nbsp;<span class="co1">// パスは省略</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _sound = <span class="kw2">new</span> <span class="kw3">Sound</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _sound.<span class="kw3">load</span><span class="br0">&#40;</span>urlRequest<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _soundChannel = _sound.<span class="kw3">play</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _soundChannel.<span class="me1">addEventListener</span><span class="br0">&#40;</span>Event.<span class="me1">SOUND_COMPLETE</span>, <span class="kw3">onSoundComplete</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> <span class="kw3">onSoundComplete</span><span class="br0">&#40;</span><span class="kw3">e</span>:Event<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _soundChannel.<span class="me1">removeEventListener</span><span class="br0">&#40;</span>Event.<span class="me1">SOUND_COMPLETE</span>, <span class="kw3">onSoundComplete</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _soundChannel = <span class="kw2">null</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _soundChannel = _sound.<span class="kw3">play</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _soundChannel.<span class="me1">addEventListener</span><span class="br0">&#40;</span>Event.<span class="me1">SOUND_COMPLETE</span>, <span class="kw3">onSoundComplete</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initTextField<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">textFormat</span>:<span class="kw3">TextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0xffffff<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _textField = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">defaultTextFormat</span> = <span class="kw3">textFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">autoSize</span> = TextFieldAutoSize.<span class="kw3">LEFT</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">y</span> = <span class="nu0">50</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_textField<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initButtons<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> labels:<span class="kw3">Array</span> = <span class="br0">&#91;</span><span class="st0">'VolumeOn'</span>, <span class="st0">'VolumeOff'</span>, <span class="st0">'PanLeft'</span>, <span class="st0">'PanRight'</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> clickHandlers:<span class="kw3">Array</span> = <span class="br0">&#91;</span>onVolumeOnClick, onVolumeOffClick, onPanLeftClick, onPanRightClick<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> i:<span class="kw3">int</span>, <span class="kw3">button</span>:<span class="kw3">Button</span>, x:<span class="kw3">Number</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span>i = 0; i <span class="sy0">&lt;</span> <span class="nu0">4</span>; i ++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; x = <span class="br0">&#40;</span><span class="kw3">button</span> == <span class="kw2">null</span><span class="br0">&#41;</span>? 0: <span class="kw3">button</span>.<span class="me1">x</span> + <span class="kw3">button</span>.<span class="kw3">width</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span> = <span class="kw2">new</span> <span class="kw3">Button</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">label</span> = labels<span class="br0">&#91;</span>i<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">x</span> = x;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">addEventListener</span><span class="br0">&#40;</span>MouseEvent.<span class="me1">CLICK</span>, clickHandlers<span class="br0">&#91;</span>i<span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw3">button</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onVolumeOnClick<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> timeline:TweensyTimeline = Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>_soundChannel.<span class="me1">soundTransform</span>, <span class="br0">&#123;</span> volume: <span class="nu0">1</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, 0, _soundChannel<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; timeline.<span class="kw3">onUpdate</span> = onSoundTransformUpdate;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onVolumeOffClick<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> timeline:TweensyTimeline = Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>_soundChannel.<span class="me1">soundTransform</span>, <span class="br0">&#123;</span> volume: 0 <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, 0, _soundChannel<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; timeline.<span class="kw3">onUpdate</span> = onSoundTransformUpdate;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onPanLeftClick<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> timeline:TweensyTimeline = Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>_soundChannel.<span class="me1">soundTransform</span>, <span class="br0">&#123;</span> pan: -<span class="nu0">1</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, 0, _soundChannel<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; timeline.<span class="kw3">onUpdate</span> = onSoundTransformUpdate;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onPanRightClick<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> timeline:TweensyTimeline = Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>_soundChannel.<span class="me1">soundTransform</span>, <span class="br0">&#123;</span> pan: <span class="nu0">1</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, 0, _soundChannel<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; timeline.<span class="kw3">onUpdate</span> = onSoundTransformUpdate;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onSoundTransformUpdate<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> soundTransform:SoundTransform = _soundChannel.<span class="me1">soundTransform</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">text</span>:<span class="kw3">String</span> = <span class="st0">''</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'_soundChannel.soundTransform.volume = '</span> + _soundChannel.<span class="me1">soundTransform</span>.<span class="me1">volume</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'_soundChannel.soundTransform.pan = '</span> + _soundChannel.<span class="me1">soundTransform</span>.<span class="me1">pan</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">text</span> = <span class="kw3">text</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Graphics</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="me1">events</span>.<span class="me1">MouseEvent</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">BevelFilter</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">internal <span class="kw2">class</span> <span class="kw3">Button</span> <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _textField:<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">get</span> label<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">String</span> <span class="br0">&#123;</span> <span class="kw1">return</span> _textField.<span class="kw3">text</span>; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">set</span> label<span class="br0">&#40;</span>value:<span class="kw3">String</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">text</span> = value;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; updateFill<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">Button</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">defaultTextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0x333333, <span class="kw2">true</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">autoSize</span> = TextFieldAutoSize.<span class="kw3">LEFT</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">x</span> = <span class="nu0">8</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">y</span> = <span class="nu0">4</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_textField<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; filters = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">45</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; buttonMode = <span class="kw2">true</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; mouseChildren = <span class="kw2">false</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>MouseEvent.<span class="me1">MOUSE_UP</span>, onButtonMouseUp<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>MouseEvent.<span class="me1">MOUSE_DOWN</span>, onButtonMouseDown<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonMouseUp<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:Sprite = <span class="kw3">e</span>.<span class="me1">currentTarget</span> as Sprite;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">45</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonMouseDown<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:Sprite = <span class="kw3">e</span>.<span class="me1">currentTarget</span> as Sprite;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">225</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> updateFill<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">clear</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">beginFill</span><span class="br0">&#40;</span>0xCCCCCC<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="me1">drawRect</span><span class="br0">&#40;</span>0, 0, _textField.<span class="kw3">textWidth</span> + <span class="nu0">20</span>, _textField.<span class="kw3">textHeight</span> + <span class="nu0">14</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">endFill</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div>
</div></div><br />]]></content:encoded>
			<wfw:commentRss>http://ferv.jp/blog/2009/05/18/tweensy_9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tweensy - filter</title>
		<link>http://ferv.jp/blog/2009/05/16/tweensy_8/</link>
		<comments>http://ferv.jp/blog/2009/05/16/tweensy_8/#comments</comments>
		<pubDate>Fri, 15 May 2009 16:26:11 +0000</pubDate>
		<dc:creator>dsk</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[Tweensy]]></category>

		<guid isPermaLink="false">http://flabo.org/?p=617</guid>
		<description><![CDATA[
TweensyでFilterのプロパティをアニメーションしてみる。Filterオブジェクトを作ってそのFilterオブジェクトのプロパティをTweensyでTweenするイメージ。で、updateパラメータにそのFilterを適用するインスタンスを指定する。
			ActionScript		TestTweensy_8.as	Sourcepackage  {
	import com.flashdynamix.motion.extras.ColorMatrix;
	import com.flashdynamix.motion.Tweensy;
	import fl.motion.easing.Linear;
	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.display.BitmapDataChannel;
]]></description>
			<content:encoded><![CDATA[<p><a rel="shadowbox;width=600;height=400;" href="http://ferv.jp/blog/wp-content/uploads/2009/05/testtweensy_8.swf"><img src="http://ferv.jp/blog/wp-content/uploads/2009/05/tweensy_8.png" alt="tweensy_8" title="tweensy_8" width="600" height="150" class="alignnone size-full wp-image-826" /></a><p>
<p>TweensyでFilterのプロパティをアニメーションしてみる。Filterオブジェクトを作ってそのFilterオブジェクトのプロパティをTweensyでTweenするイメージ。で、updateパラメータにそのFilterを適用するインスタンスを指定する。</p>
	<ul class="syntax_hilite_header">		<li class="language">ActionScript</li>		<li class="filename">TestTweensy_8.as</li>	<li class="source"><a href="#actionscript-12_plane" rel="shadowbox;">Source</a></li></ul><div class="syntax_hilite_planecode" id="actionscript-12_plane"><pre>package  {
	import com.flashdynamix.motion.extras.ColorMatrix;
	import com.flashdynamix.motion.Tweensy;
	import fl.motion.easing.Linear;
	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.display.BitmapDataChannel;
	import flash.display.GradientType;
	import flash.display.Graphics;
	import flash.display.Shape;
	import flash.display.SpreadMethod;
	import flash.display.Sprite;
	import flash.events.MouseEvent;
	import flash.filters.BevelFilter;
	import flash.filters.BlurFilter;
	import flash.filters.ColorMatrixFilter;
	import flash.filters.ConvolutionFilter;
	import flash.filters.DisplacementMapFilter;
	import flash.filters.DisplacementMapFilterMode;
	import flash.filters.DropShadowFilter;
	import flash.filters.GlowFilter;
	import flash.filters.GradientBevelFilter;
	import flash.filters.GradientGlowFilter;
	import flash.geom.Matrix;
	import flash.geom.Point;
	import flash.text.TextField;
	import flash.text.TextFieldAutoSize;
	import flash.text.TextFormat;

	[SWF(backgroundColor = 0x000000, width = 600, height = 400, frameRate = 30)]
	public class TestTweensy_8 extends Sprite {

		[Embed (source="fl_64.png")]
		private var SampleImage:Class;

		private var _bitmaps:Array;

		public function TestTweensy_8() {
			initInstances();
			initButton();
		}

		private function initInstances():void {
			_bitmaps = [];

			var texts:Array = [
				'BevelFilter', 'BlurFilter', 'ColorMatrixFilter',
				'ConvolutionFilter', 'DisplacementMapFilter', 'DropShadowFilter',
				'GlowFilter', 'GradientBevelFilter', 'GradientGlowFilter'
			];
			var textFormat:TextFormat = new TextFormat('_等幅', 10, 0xffffff);
			var i:int, bitmap:Bitmap, textField:TextField;
			for (i = 0; i < 9; i ++) {
				bitmap = new SampleImage();
				bitmap.x = 100 + 200 * Math.floor(i / 3);
				bitmap.y = 60 + (bitmap.height + 50) * (i % 3);
				addChild(bitmap);
				_bitmaps[i] = bitmap;

				textField = new TextField();
				textField.defaultTextFormat = textFormat;
				textField.autoSize = TextFieldAutoSize.RIGHT;
				textField.x = bitmap.x - textField.width;
				textField.y = bitmap.y;
				textField.text = texts[i];
				addChild(textField);
			}
		}

		private function initButton():void {
			var button:Button = new Button();

			button.label = 'Tweensy.to()';
			button.addEventListener(MouseEvent.CLICK, onButtonClick);

			addChild(button);
		}

		private function onButtonClick(e:MouseEvent):void {
			startTweensy();
		}

		private function startTweensy():void {
			startBevelFilter(_bitmaps[0]);
			startBlurFilter(_bitmaps[1]);
			startColorMatrixFilter(_bitmaps[2]);
			startConvolutionFilter(_bitmaps[3]);
			startDisplacementMapFilter(_bitmaps[4]);
			startDropShadowFilter(_bitmaps[5]);
			startGlowFilter(_bitmaps[6]);
			startGradientBevelFilter(_bitmaps[7]);
			startGradientGlowFilter(_bitmaps[8]);
		}

		private function startBevelFilter(bitmap:Bitmap):void {
			bitmap.filters = null;

			var bevelFilter:BevelFilter = new BevelFilter(5, 45, 0xbf1424, 1, 0x500710, 1, 10, 10);
			Tweensy.to(bevelFilter, { angle: 225 }, 3, Linear.easeNone, 1, bitmap);
		}

		private function startBlurFilter(bitmap:Bitmap):void{
			bitmap.filters = null;

			var blurFilter:BlurFilter = new BlurFilter(0, 0, 1);
			Tweensy.to(blurFilter, { blurX: 10, blurY: 10 }, 3, Linear.easeNone, 1, bitmap);
		}

		private function startColorMatrixFilter(bitmap:Bitmap):void{
			bitmap.filters = null;

			var colorMatrix:ColorMatrix = new ColorMatrix(0, 1);
			var colorMatrixFilter:ColorMatrixFilter = new ColorMatrixFilter(colorMatrix);
			Tweensy.to(colorMatrixFilter, new ColorMatrix(0, 0), 3, Linear.easeNone, 1, bitmap);
		}

		private function startConvolutionFilter(bitmap:Bitmap):void{
			bitmap.filters = null;

			var convolutionFilter:ConvolutionFilter = new ConvolutionFilter(3, 3, [1, 1, 1, 1, -8, 1, 1, 1, 1], 0.30);
			Tweensy.to(convolutionFilter, { divisor: 0.01 }, 3, Linear.easeNone, 1, bitmap);
		}

		private function startDisplacementMapFilter(bitmap:Bitmap):void{
			bitmap.filters = null;

			var shape:Shape = new Shape();
			var graphics:Graphics = shape.graphics;
			var matrix:Matrix = new Matrix();
			matrix.createGradientBox(32, 0, 0, 0, 0);
			graphics.beginGradientFill(GradientType.LINEAR, [0x000000, 0xff0000], [1, 1], [0, 255], matrix, SpreadMethod.REFLECT);
			graphics.drawRect(0, 0, 64, 64);
			graphics.endFill();
			var bitmapData:BitmapData = new BitmapData(64, 64);
			bitmapData.draw(shape);

			var displacementMapFilter:DisplacementMapFilter = new DisplacementMapFilter(bitmapData, new Point(), 0, BitmapDataChannel.RED, 0, 0, DisplacementMapFilterMode.CLAMP);
			Tweensy.to(displacementMapFilter, { scaleY: 30 }, 3, Linear.easeNone, 1, bitmap);
		}

		private function startDropShadowFilter(bitmap:Bitmap):void{
			bitmap.filters = null;

			var dropShadowFilter:DropShadowFilter = new DropShadowFilter(4, 45, 0x666666);
			Tweensy.to(dropShadowFilter, { angle:225 }, 3, Linear.easeNone, 1, bitmap);
		}

		private function startGlowFilter(bitmap:Bitmap):void{
			bitmap.filters = null;

			var glowFilter:GlowFilter = new GlowFilter(0xbf1424, 1, 0, 0, 3);
			Tweensy.to(glowFilter, { blurX: 10, blurY: 10 }, 3, Linear.easeNone, 1, bitmap);
		}

		private function startGradientBevelFilter(bitmap:Bitmap):void{
			bitmap.filters = null;

			var gradientBevelFilter:GradientBevelFilter = new GradientBevelFilter(4, 45, [0xbf1424, 0x500710, 0x000000], [1, 0, 1], [0, 128, 255], 10, 10);
			Tweensy.to(gradientBevelFilter, { angle: 225 }, 3, Linear.easeNone, 1, bitmap);
		}

		private function startGradientGlowFilter(bitmap:Bitmap):void{
			bitmap.filters = null;

			var gradientGlowFilter:GradientGlowFilter = new GradientGlowFilter(0, 0, [0xbf1424, 0x500710, 0xbf1424], [0, 1, 0], [0, 128, 255], 0, 0);
			Tweensy.to(gradientGlowFilter, { blurX: 10, blurY: 10 }, 3, Linear.easeNone, 1, bitmap);
		}


	}

}


import flash.display.Graphics;
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.filters.BevelFilter;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;

internal class Button extends Sprite {

	private var _textField:TextField;

	public function get label():String { return _textField.text; }
	public function set label(value:String):void {
		_textField.text = value;
		updateFill();
	}

	public function Button() {
		_textField = new TextField();
		_textField.defaultTextFormat = new TextFormat('_等幅', 10, 0x333333, true);
		_textField.autoSize = TextFieldAutoSize.LEFT;
		_textField.x = 8;
		_textField.y = 4;
		addChild(_textField);

		filters = [new BevelFilter(1, 45, 0xdddddd, 0xbbbbbb)];
		buttonMode = true;
		mouseChildren = false;
		addEventListener(MouseEvent.MOUSE_UP, onButtonMouseUp);
		addEventListener(MouseEvent.MOUSE_DOWN, onButtonMouseDown);
	}

	private function onButtonMouseUp(e:MouseEvent):void {
		var button:Sprite = e.currentTarget as Sprite;

		button.filters = null;
		button.filters = [new BevelFilter(1, 45, 0xdddddd, 0xbbbbbb)];
	}

	private function onButtonMouseDown(e:MouseEvent):void {
		var button:Sprite = e.currentTarget as Sprite;

		button.filters = null;
		button.filters = [new BevelFilter(1, 225, 0xdddddd, 0xbbbbbb)];
	}

	private function updateFill():void {
		graphics.clear();
		graphics.beginFill(0xCCCCCC);
		graphics.drawRect(0, 0, _textField.textWidth + 20, _textField.textHeight + 14);
		graphics.endFill();
	}

}</pre></div><div class="syntax_hilite">
<div id="actionscript-12">
<div class="actionscript actionscript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">package &nbsp;<span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">extras</span>.<span class="me1">ColorMatrix</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">Tweensy</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Linear</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Bitmap</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">BitmapData</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">BitmapDataChannel</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">GradientType</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Graphics</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Shape</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">SpreadMethod</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">events</span>.<span class="me1">MouseEvent</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">BevelFilter</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">BlurFilter</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">ColorMatrixFilter</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">ConvolutionFilter</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">DisplacementMapFilter</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">DisplacementMapFilterMode</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">DropShadowFilter</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">GlowFilter</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">GradientBevelFilter</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">GradientGlowFilter</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">geom</span>.<span class="me1">Matrix</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">geom</span>.<span class="me1">Point</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#91;</span>SWF<span class="br0">&#40;</span><span class="kw3">backgroundColor</span> = 0x000000, <span class="kw3">width</span> = <span class="nu0">600</span>, <span class="kw3">height</span> = <span class="nu0">400</span>, frameRate = <span class="nu0">30</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">class</span> TestTweensy_8 <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>Embed <span class="br0">&#40;</span>source=<span class="st0">&quot;fl_64.png&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> SampleImage:<span class="kw2">Class</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _bitmaps:<span class="kw3">Array</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> TestTweensy_8<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initInstances<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initButton<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initInstances<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _bitmaps = <span class="br0">&#91;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> texts:<span class="kw3">Array</span> = <span class="br0">&#91;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">'BevelFilter'</span>, <span class="st0">'BlurFilter'</span>, <span class="st0">'ColorMatrixFilter'</span>,</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">'ConvolutionFilter'</span>, <span class="st0">'DisplacementMapFilter'</span>, <span class="st0">'DropShadowFilter'</span>,</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">'GlowFilter'</span>, <span class="st0">'GradientBevelFilter'</span>, <span class="st0">'GradientGlowFilter'</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">textFormat</span>:<span class="kw3">TextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0xffffff<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> i:<span class="kw3">int</span>, bitmap:Bitmap, <span class="kw3">textField</span>:<span class="kw3">TextField</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span>i = 0; i <span class="sy0">&lt;</span> <span class="nu0">9</span>; i ++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap = <span class="kw2">new</span> SampleImage<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">x</span> = <span class="nu0">100</span> + <span class="nu0">200</span> <span class="sy0">*</span> <span class="kw3">Math</span>.<span class="kw3">floor</span><span class="br0">&#40;</span>i <span class="sy0">/</span> <span class="nu0">3</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">y</span> = <span class="nu0">60</span> + <span class="br0">&#40;</span>bitmap.<span class="kw3">height</span> + <span class="nu0">50</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="br0">&#40;</span>i <span class="sy0">%</span> <span class="nu0">3</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>bitmap<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _bitmaps<span class="br0">&#91;</span>i<span class="br0">&#93;</span> = bitmap;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span> = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">defaultTextFormat</span> = <span class="kw3">textFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="kw3">autoSize</span> = TextFieldAutoSize.<span class="kw3">RIGHT</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">x</span> = bitmap.<span class="me1">x</span> - <span class="kw3">textField</span>.<span class="kw3">width</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">y</span> = bitmap.<span class="me1">y</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="kw3">text</span> = texts<span class="br0">&#91;</span>i<span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw3">textField</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initButton<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:<span class="kw3">Button</span> = <span class="kw2">new</span> <span class="kw3">Button</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">label</span> = <span class="st0">'Tweensy.to()'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">addEventListener</span><span class="br0">&#40;</span>MouseEvent.<span class="me1">CLICK</span>, onButtonClick<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw3">button</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonClick<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startTweensy<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startTweensy<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startBevelFilter<span class="br0">&#40;</span>_bitmaps<span class="br0">&#91;</span>0<span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startBlurFilter<span class="br0">&#40;</span>_bitmaps<span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startColorMatrixFilter<span class="br0">&#40;</span>_bitmaps<span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startConvolutionFilter<span class="br0">&#40;</span>_bitmaps<span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startDisplacementMapFilter<span class="br0">&#40;</span>_bitmaps<span class="br0">&#91;</span><span class="nu0">4</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startDropShadowFilter<span class="br0">&#40;</span>_bitmaps<span class="br0">&#91;</span><span class="nu0">5</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startGlowFilter<span class="br0">&#40;</span>_bitmaps<span class="br0">&#91;</span><span class="nu0">6</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startGradientBevelFilter<span class="br0">&#40;</span>_bitmaps<span class="br0">&#91;</span><span class="nu0">7</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startGradientGlowFilter<span class="br0">&#40;</span>_bitmaps<span class="br0">&#91;</span><span class="nu0">8</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startBevelFilter<span class="br0">&#40;</span>bitmap:Bitmap<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> bevelFilter:BevelFilter = <span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">5</span>, <span class="nu0">45</span>, 0xbf1424, <span class="nu0">1</span>, 0x500710, <span class="nu0">1</span>, <span class="nu0">10</span>, <span class="nu0">10</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>bevelFilter, <span class="br0">&#123;</span> angle: <span class="nu0">225</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, bitmap<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startBlurFilter<span class="br0">&#40;</span>bitmap:Bitmap<span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> blurFilter:BlurFilter = <span class="kw2">new</span> BlurFilter<span class="br0">&#40;</span>0, 0, <span class="nu0">1</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>blurFilter, <span class="br0">&#123;</span> blurX: <span class="nu0">10</span>, blurY: <span class="nu0">10</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, bitmap<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startColorMatrixFilter<span class="br0">&#40;</span>bitmap:Bitmap<span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> colorMatrix:ColorMatrix = <span class="kw2">new</span> ColorMatrix<span class="br0">&#40;</span>0, <span class="nu0">1</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> colorMatrixFilter:ColorMatrixFilter = <span class="kw2">new</span> ColorMatrixFilter<span class="br0">&#40;</span>colorMatrix<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>colorMatrixFilter, <span class="kw2">new</span> ColorMatrix<span class="br0">&#40;</span>0, 0<span class="br0">&#41;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, bitmap<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startConvolutionFilter<span class="br0">&#40;</span>bitmap:Bitmap<span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> convolutionFilter:ConvolutionFilter = <span class="kw2">new</span> ConvolutionFilter<span class="br0">&#40;</span><span class="nu0">3</span>, <span class="nu0">3</span>, <span class="br0">&#91;</span><span class="nu0">1</span>, <span class="nu0">1</span>, <span class="nu0">1</span>, <span class="nu0">1</span>, -<span class="nu0">8</span>, <span class="nu0">1</span>, <span class="nu0">1</span>, <span class="nu0">1</span>, <span class="nu0">1</span><span class="br0">&#93;</span>, <span class="nu0">0.30</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>convolutionFilter, <span class="br0">&#123;</span> divisor: <span class="nu0">0.01</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, bitmap<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startDisplacementMapFilter<span class="br0">&#40;</span>bitmap:Bitmap<span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> shape:Shape = <span class="kw2">new</span> Shape<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> graphics:Graphics = shape.<span class="me1">graphics</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> matrix:Matrix = <span class="kw2">new</span> Matrix<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; matrix.<span class="me1">createGradientBox</span><span class="br0">&#40;</span><span class="nu0">32</span>, 0, 0, 0, 0<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">beginGradientFill</span><span class="br0">&#40;</span>GradientType.<span class="me1">LINEAR</span>, <span class="br0">&#91;</span>0x000000, 0xff0000<span class="br0">&#93;</span>, <span class="br0">&#91;</span><span class="nu0">1</span>, <span class="nu0">1</span><span class="br0">&#93;</span>, <span class="br0">&#91;</span>0, <span class="nu0">255</span><span class="br0">&#93;</span>, matrix, SpreadMethod.<span class="me1">REFLECT</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="me1">drawRect</span><span class="br0">&#40;</span>0, 0, <span class="nu0">64</span>, <span class="nu0">64</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">endFill</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> bitmapData:BitmapData = <span class="kw2">new</span> BitmapData<span class="br0">&#40;</span><span class="nu0">64</span>, <span class="nu0">64</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmapData.<span class="me1">draw</span><span class="br0">&#40;</span>shape<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> displacementMapFilter:DisplacementMapFilter = <span class="kw2">new</span> DisplacementMapFilter<span class="br0">&#40;</span>bitmapData, <span class="kw2">new</span> Point<span class="br0">&#40;</span><span class="br0">&#41;</span>, 0, BitmapDataChannel.<span class="me1">RED</span>, 0, 0, DisplacementMapFilterMode.<span class="me1">CLAMP</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>displacementMapFilter, <span class="br0">&#123;</span> scaleY: <span class="nu0">30</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, bitmap<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startDropShadowFilter<span class="br0">&#40;</span>bitmap:Bitmap<span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> dropShadowFilter:DropShadowFilter = <span class="kw2">new</span> DropShadowFilter<span class="br0">&#40;</span><span class="nu0">4</span>, <span class="nu0">45</span>, 0x666666<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>dropShadowFilter, <span class="br0">&#123;</span> angle:<span class="nu0">225</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, bitmap<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startGlowFilter<span class="br0">&#40;</span>bitmap:Bitmap<span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> glowFilter:GlowFilter = <span class="kw2">new</span> GlowFilter<span class="br0">&#40;</span>0xbf1424, <span class="nu0">1</span>, 0, 0, <span class="nu0">3</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>glowFilter, <span class="br0">&#123;</span> blurX: <span class="nu0">10</span>, blurY: <span class="nu0">10</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, bitmap<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startGradientBevelFilter<span class="br0">&#40;</span>bitmap:Bitmap<span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> gradientBevelFilter:GradientBevelFilter = <span class="kw2">new</span> GradientBevelFilter<span class="br0">&#40;</span><span class="nu0">4</span>, <span class="nu0">45</span>, <span class="br0">&#91;</span>0xbf1424, 0x500710, 0x000000<span class="br0">&#93;</span>, <span class="br0">&#91;</span><span class="nu0">1</span>, 0, <span class="nu0">1</span><span class="br0">&#93;</span>, <span class="br0">&#91;</span>0, <span class="nu0">128</span>, <span class="nu0">255</span><span class="br0">&#93;</span>, <span class="nu0">10</span>, <span class="nu0">10</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>gradientBevelFilter, <span class="br0">&#123;</span> angle: <span class="nu0">225</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, bitmap<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startGradientGlowFilter<span class="br0">&#40;</span>bitmap:Bitmap<span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> gradientGlowFilter:GradientGlowFilter = <span class="kw2">new</span> GradientGlowFilter<span class="br0">&#40;</span>0, 0, <span class="br0">&#91;</span>0xbf1424, 0x500710, 0xbf1424<span class="br0">&#93;</span>, <span class="br0">&#91;</span>0, <span class="nu0">1</span>, 0<span class="br0">&#93;</span>, <span class="br0">&#91;</span>0, <span class="nu0">128</span>, <span class="nu0">255</span><span class="br0">&#93;</span>, 0, 0<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>gradientGlowFilter, <span class="br0">&#123;</span> blurX: <span class="nu0">10</span>, blurY: <span class="nu0">10</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, bitmap<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Graphics</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="me1">events</span>.<span class="me1">MouseEvent</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">BevelFilter</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">internal <span class="kw2">class</span> <span class="kw3">Button</span> <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _textField:<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">get</span> label<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">String</span> <span class="br0">&#123;</span> <span class="kw1">return</span> _textField.<span class="kw3">text</span>; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">set</span> label<span class="br0">&#40;</span>value:<span class="kw3">String</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">text</span> = value;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; updateFill<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">Button</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">defaultTextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0x333333, <span class="kw2">true</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">autoSize</span> = TextFieldAutoSize.<span class="kw3">LEFT</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">x</span> = <span class="nu0">8</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">y</span> = <span class="nu0">4</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_textField<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; filters = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">45</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; buttonMode = <span class="kw2">true</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; mouseChildren = <span class="kw2">false</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>MouseEvent.<span class="me1">MOUSE_UP</span>, onButtonMouseUp<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>MouseEvent.<span class="me1">MOUSE_DOWN</span>, onButtonMouseDown<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonMouseUp<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:Sprite = <span class="kw3">e</span>.<span class="me1">currentTarget</span> as Sprite;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">45</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonMouseDown<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:Sprite = <span class="kw3">e</span>.<span class="me1">currentTarget</span> as Sprite;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">225</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> updateFill<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">clear</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">beginFill</span><span class="br0">&#40;</span>0xCCCCCC<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="me1">drawRect</span><span class="br0">&#40;</span>0, 0, _textField.<span class="kw3">textWidth</span> + <span class="nu0">20</span>, _textField.<span class="kw3">textHeight</span> + <span class="nu0">14</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">endFill</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div>
</div></div><br />]]></content:encoded>
			<wfw:commentRss>http://ferv.jp/blog/2009/05/16/tweensy_8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tweensy - color</title>
		<link>http://ferv.jp/blog/2009/05/15/tweensy_7/</link>
		<comments>http://ferv.jp/blog/2009/05/15/tweensy_7/#comments</comments>
		<pubDate>Fri, 15 May 2009 02:57:00 +0000</pubDate>
		<dc:creator>dsk</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[Tweensy]]></category>

		<guid isPermaLink="false">http://flabo.org/?p=611</guid>
		<description><![CDATA[
TweensyでColorTransformのプロパティをアニメーションしてみる。ColorTransformオブジェクトを作ってそのColorTransformオブジェクトのプロパティをTweensyでTweenするイメージ。で、updateパラメータにそのColorTransformを適用するインスタンスを指定する。
			ActionScript		TestTweensy_7.as	Sourcepackage  {
	import com.flashdynamix.motion.Tweensy;
	import fl.motion.easing.Linear;
	import flash.display.Bitmap;
	import flash.display.Sprite;
	import flash.events.MouseEvent;
	import flash.geom.ColorTransform;
]]></description>
			<content:encoded><![CDATA[<p><a rel="shadowbox;width=600;height=400;" href="http://ferv.jp/blog/wp-content/uploads/2009/05/testtweensy_7.swf"><img src="http://ferv.jp/blog/wp-content/uploads/2009/05/tweensy_7.png" alt="tweensy_7" title="tweensy_7" width="600" height="150" class="alignnone size-full wp-image-830" /></a><p>
<p>TweensyでColorTransformのプロパティをアニメーションしてみる。ColorTransformオブジェクトを作ってそのColorTransformオブジェクトのプロパティをTweensyでTweenするイメージ。で、updateパラメータにそのColorTransformを適用するインスタンスを指定する。</p>
	<ul class="syntax_hilite_header">		<li class="language">ActionScript</li>		<li class="filename">TestTweensy_7.as</li>	<li class="source"><a href="#actionscript-14_plane" rel="shadowbox;">Source</a></li></ul><div class="syntax_hilite_planecode" id="actionscript-14_plane"><pre>package  {
	import com.flashdynamix.motion.Tweensy;
	import fl.motion.easing.Linear;
	import flash.display.Bitmap;
	import flash.display.Sprite;
	import flash.events.MouseEvent;
	import flash.geom.ColorTransform;
	import flash.text.TextField;
	import flash.text.TextFieldAutoSize;
	import flash.text.TextFormat;

	[SWF(backgroundColor = 0x000000, width = 600, height = 400, frameRate = 30)]
	public class TestTweensy_7 extends Sprite {

		[Embed (source="fl_64.png")]
		private var SampleImage:Class;

		private var _bitmaps:Array;

		public function TestTweensy_7() {
			initBitmaps();
			initButton();
		}

		private function initBitmaps():void{
			_bitmaps = [];

			var texts:Array = [
				'redMultiplier: 0.5', 'greenMultiplier: 0.5', 'blueMultiplier: 0.5',
				'alphaMultiplier: 0.5', 'redOffset: 100', 'greenOffset: 100',
				'blueOffset: 100', 'alphaOffset: -100', 'color: 0x0099cc'
			];
			var textFormat:TextFormat = new TextFormat('_等幅', 10, 0xffffff);
			var i:int, bitmap:Bitmap, textField:TextField;
			for (i = 0; i < texts.length; i ++) {
				bitmap = new SampleImage();
				bitmap.x = 120 + 200 * Math.floor(i / 3);
				bitmap.y = 60 + (bitmap.height + 50) * (i % 3);
				addChild(bitmap);
				_bitmaps[i] = bitmap;

				textField = new TextField();
				textField.defaultTextFormat = textFormat;
				textField.autoSize = TextFieldAutoSize.RIGHT;
				textField.x = bitmap.x - textField.width - 10;
				textField.y = bitmap.y;
				textField.text = texts[i];
				addChild(textField);
			}
		}

		private function initButton():void {
			var button:Button = new Button();

			button.label = 'Tweensy.to()';
			button.addEventListener(MouseEvent.CLICK, onButtonClick);

			addChild(button);
		}

		private function onButtonClick(e:MouseEvent):void {
			Tweensy.to(new ColorTransform(), { redMultiplier: 0.5 }, 3, Linear.easeNone, 1, _bitmaps[0]);
			Tweensy.to(new ColorTransform(), { greenMultiplier: 0.5 }, 3, Linear.easeNone, 1, _bitmaps[1]);
			Tweensy.to(new ColorTransform(), { blueMultiplier: 0.5 }, 3, Linear.easeNone, 1, _bitmaps[2]);
			Tweensy.to(new ColorTransform(), { alphaMultiplier: 0.5 }, 3, Linear.easeNone, 1, _bitmaps[3]);
			Tweensy.to(new ColorTransform(), { redOffset: 100 }, 3, Linear.easeNone, 1, _bitmaps[4]);
			Tweensy.to(new ColorTransform(), { greenOffset: 100 }, 3, Linear.easeNone, 1, _bitmaps[5]);
			Tweensy.to(new ColorTransform(), { blueOffset: 100 }, 3, Linear.easeNone, 1, _bitmaps[6]);
			Tweensy.to(new ColorTransform(), { alphaOffset: -100 }, 3, Linear.easeNone, 1, _bitmaps[7]);

			// 色を指定してアニメーションする場合
			var colorTransform:ColorTransform = new ColorTransform();
			colorTransform.color = 0x0099cc;
			Tweensy.to(new ColorTransform(), colorTransform, 3, Linear.easeNone, 1, _bitmaps[8]);
		}


	}

}


import flash.display.Graphics;
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.filters.BevelFilter;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;

internal class Button extends Sprite {

	private var _textField:TextField;

	public function get label():String { return _textField.text; }
	public function set label(value:String):void {
		_textField.text = value;
		updateFill();
	}

	public function Button() {
		_textField = new TextField();
		_textField.defaultTextFormat = new TextFormat('_等幅', 10, 0x333333, true);
		_textField.autoSize = TextFieldAutoSize.LEFT;
		_textField.x = 8;
		_textField.y = 4;
		addChild(_textField);

		filters = [new BevelFilter(1, 45, 0xdddddd, 0xbbbbbb)];
		buttonMode = true;
		mouseChildren = false;
		addEventListener(MouseEvent.MOUSE_UP, onButtonMouseUp);
		addEventListener(MouseEvent.MOUSE_DOWN, onButtonMouseDown);
	}

	private function onButtonMouseUp(e:MouseEvent):void {
		var button:Sprite = e.currentTarget as Sprite;

		button.filters = null;
		button.filters = [new BevelFilter(1, 45, 0xdddddd, 0xbbbbbb)];
	}

	private function onButtonMouseDown(e:MouseEvent):void {
		var button:Sprite = e.currentTarget as Sprite;

		button.filters = null;
		button.filters = [new BevelFilter(1, 225, 0xdddddd, 0xbbbbbb)];
	}

	private function updateFill():void {
		graphics.clear();
		graphics.beginFill(0xCCCCCC);
		graphics.drawRect(0, 0, _textField.textWidth + 20, _textField.textHeight + 14);
		graphics.endFill();
	}

}</pre></div><div class="syntax_hilite">
<div id="actionscript-14">
<div class="actionscript actionscript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">package &nbsp;<span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">Tweensy</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Linear</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Bitmap</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">events</span>.<span class="me1">MouseEvent</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">geom</span>.<span class="me1">ColorTransform</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#91;</span>SWF<span class="br0">&#40;</span><span class="kw3">backgroundColor</span> = 0x000000, <span class="kw3">width</span> = <span class="nu0">600</span>, <span class="kw3">height</span> = <span class="nu0">400</span>, frameRate = <span class="nu0">30</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">class</span> TestTweensy_7 <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>Embed <span class="br0">&#40;</span>source=<span class="st0">&quot;fl_64.png&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> SampleImage:<span class="kw2">Class</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _bitmaps:<span class="kw3">Array</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> TestTweensy_7<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initBitmaps<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initButton<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initBitmaps<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _bitmaps = <span class="br0">&#91;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> texts:<span class="kw3">Array</span> = <span class="br0">&#91;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">'redMultiplier: 0.5'</span>, <span class="st0">'greenMultiplier: 0.5'</span>, <span class="st0">'blueMultiplier: 0.5'</span>,</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">'alphaMultiplier: 0.5'</span>, <span class="st0">'redOffset: 100'</span>, <span class="st0">'greenOffset: 100'</span>,</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">'blueOffset: 100'</span>, <span class="st0">'alphaOffset: -100'</span>, <span class="st0">'color: 0x0099cc'</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">textFormat</span>:<span class="kw3">TextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0xffffff<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> i:<span class="kw3">int</span>, bitmap:Bitmap, <span class="kw3">textField</span>:<span class="kw3">TextField</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span>i = 0; i <span class="sy0">&lt;</span> texts.<span class="kw3">length</span>; i ++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap = <span class="kw2">new</span> SampleImage<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">x</span> = <span class="nu0">120</span> + <span class="nu0">200</span> <span class="sy0">*</span> <span class="kw3">Math</span>.<span class="kw3">floor</span><span class="br0">&#40;</span>i <span class="sy0">/</span> <span class="nu0">3</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bitmap.<span class="me1">y</span> = <span class="nu0">60</span> + <span class="br0">&#40;</span>bitmap.<span class="kw3">height</span> + <span class="nu0">50</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="br0">&#40;</span>i <span class="sy0">%</span> <span class="nu0">3</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>bitmap<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _bitmaps<span class="br0">&#91;</span>i<span class="br0">&#93;</span> = bitmap;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span> = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">defaultTextFormat</span> = <span class="kw3">textFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="kw3">autoSize</span> = TextFieldAutoSize.<span class="kw3">RIGHT</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">x</span> = bitmap.<span class="me1">x</span> - <span class="kw3">textField</span>.<span class="kw3">width</span> - <span class="nu0">10</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">y</span> = bitmap.<span class="me1">y</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="kw3">text</span> = texts<span class="br0">&#91;</span>i<span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw3">textField</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initButton<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:<span class="kw3">Button</span> = <span class="kw2">new</span> <span class="kw3">Button</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">label</span> = <span class="st0">'Tweensy.to()'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">addEventListener</span><span class="br0">&#40;</span>MouseEvent.<span class="me1">CLICK</span>, onButtonClick<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw3">button</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonClick<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span><span class="kw2">new</span> ColorTransform<span class="br0">&#40;</span><span class="br0">&#41;</span>, <span class="br0">&#123;</span> redMultiplier: <span class="nu0">0.5</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, _bitmaps<span class="br0">&#91;</span>0<span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span><span class="kw2">new</span> ColorTransform<span class="br0">&#40;</span><span class="br0">&#41;</span>, <span class="br0">&#123;</span> greenMultiplier: <span class="nu0">0.5</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, _bitmaps<span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span><span class="kw2">new</span> ColorTransform<span class="br0">&#40;</span><span class="br0">&#41;</span>, <span class="br0">&#123;</span> blueMultiplier: <span class="nu0">0.5</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, _bitmaps<span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span><span class="kw2">new</span> ColorTransform<span class="br0">&#40;</span><span class="br0">&#41;</span>, <span class="br0">&#123;</span> alphaMultiplier: <span class="nu0">0.5</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, _bitmaps<span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span><span class="kw2">new</span> ColorTransform<span class="br0">&#40;</span><span class="br0">&#41;</span>, <span class="br0">&#123;</span> redOffset: <span class="nu0">100</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, _bitmaps<span class="br0">&#91;</span><span class="nu0">4</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span><span class="kw2">new</span> ColorTransform<span class="br0">&#40;</span><span class="br0">&#41;</span>, <span class="br0">&#123;</span> greenOffset: <span class="nu0">100</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, _bitmaps<span class="br0">&#91;</span><span class="nu0">5</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span><span class="kw2">new</span> ColorTransform<span class="br0">&#40;</span><span class="br0">&#41;</span>, <span class="br0">&#123;</span> blueOffset: <span class="nu0">100</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, _bitmaps<span class="br0">&#91;</span><span class="nu0">6</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span><span class="kw2">new</span> ColorTransform<span class="br0">&#40;</span><span class="br0">&#41;</span>, <span class="br0">&#123;</span> alphaOffset: -<span class="nu0">100</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, _bitmaps<span class="br0">&#91;</span><span class="nu0">7</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// 色を指定してアニメーションする場合</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> colorTransform:ColorTransform = <span class="kw2">new</span> ColorTransform<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; colorTransform.<span class="kw3">color</span> = 0x0099cc;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tweensy.<span class="me1">to</span><span class="br0">&#40;</span><span class="kw2">new</span> ColorTransform<span class="br0">&#40;</span><span class="br0">&#41;</span>, colorTransform, <span class="nu0">3</span>, Linear.<span class="me1">easeNone</span>, <span class="nu0">1</span>, _bitmaps<span class="br0">&#91;</span><span class="nu0">8</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Graphics</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="me1">events</span>.<span class="me1">MouseEvent</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="me1">filters</span>.<span class="me1">BevelFilter</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">internal <span class="kw2">class</span> <span class="kw3">Button</span> <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _textField:<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">get</span> label<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">String</span> <span class="br0">&#123;</span> <span class="kw1">return</span> _textField.<span class="kw3">text</span>; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">set</span> label<span class="br0">&#40;</span>value:<span class="kw3">String</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">text</span> = value;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; updateFill<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> <span class="kw3">Button</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">defaultTextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0x333333, <span class="kw2">true</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">autoSize</span> = TextFieldAutoSize.<span class="kw3">LEFT</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">x</span> = <span class="nu0">8</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="me1">y</span> = <span class="nu0">4</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>_textField<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; filters = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">45</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; buttonMode = <span class="kw2">true</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; mouseChildren = <span class="kw2">false</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>MouseEvent.<span class="me1">MOUSE_UP</span>, onButtonMouseUp<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; addEventListener<span class="br0">&#40;</span>MouseEvent.<span class="me1">MOUSE_DOWN</span>, onButtonMouseDown<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonMouseUp<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:Sprite = <span class="kw3">e</span>.<span class="me1">currentTarget</span> as Sprite;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">45</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onButtonMouseDown<span class="br0">&#40;</span><span class="kw3">e</span>:MouseEvent<span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">button</span>:Sprite = <span class="kw3">e</span>.<span class="me1">currentTarget</span> as Sprite;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="kw2">null</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">button</span>.<span class="me1">filters</span> = <span class="br0">&#91;</span><span class="kw2">new</span> BevelFilter<span class="br0">&#40;</span><span class="nu0">1</span>, <span class="nu0">225</span>, 0xdddddd, 0xbbbbbb<span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> updateFill<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">clear</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">beginFill</span><span class="br0">&#40;</span>0xCCCCCC<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="me1">drawRect</span><span class="br0">&#40;</span>0, 0, _textField.<span class="kw3">textWidth</span> + <span class="nu0">20</span>, _textField.<span class="kw3">textHeight</span> + <span class="nu0">14</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">endFill</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div>
</div></div><br />]]></content:encoded>
			<wfw:commentRss>http://ferv.jp/blog/2009/05/15/tweensy_7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tweensy - repeatType</title>
		<link>http://ferv.jp/blog/2009/05/15/tweensy_6/</link>
		<comments>http://ferv.jp/blog/2009/05/15/tweensy_6/#comments</comments>
		<pubDate>Thu, 14 May 2009 15:28:33 +0000</pubDate>
		<dc:creator>dsk</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[Tweensy]]></category>

		<guid isPermaLink="false">http://flabo.org/?p=597</guid>
		<description><![CDATA[Tweensyはアニメーションをリピートすることができる。この辺からいよいよTweenerにはない独自機能な香り。
TweensyTimelineオブジェクトのrepeatTypeにリピートの種類を設定することができる。項目は

TweensyTimeline.NONE   - デフォルト値。リピートしない。
TweensyTimeline.REPLAY - 終点に到達後、すぐ]]></description>
			<content:encoded><![CDATA[<p>Tweensyはアニメーションをリピートすることができる。この辺からいよいよTweenerにはない独自機能な香り。</p>
<p>TweensyTimelineオブジェクトのrepeatTypeにリピートの種類を設定することができる。項目は
<ul>
<li><code>TweensyTimeline.NONE  </code> - デフォルト値。リピートしない。</li>
<li><code>TweensyTimeline.REPLAY</code> - 終点に到達後、すぐに始点に戻って終点へアニメーションする。</li>
<li><code>TweensyTimeline.YOYO  </code> - 終点に到達後、delayを挟んで始点へアニメーションする。</li>
<li><code>TweensyTimeline.LOOP  </code> - 終点に到達後、すぐに始点へアニメーションし、その後delayする。</li>
</ul>
の4種類。TweensyTimeline.NONEはリピートしないので、実質3種類のリピートが用意されている。YOYOとLOOPはdelayするタイミングが折り返し前か後かの差がある。delay入れなかったら両者は同じ挙動をする。</p>
<p><a rel="shadowbox;width=600;height=150;" href="http://ferv.jp/blog/wp-content/uploads/2009/05/testtweensy_6.swf">TestTweensy_6.swf</a><p>
	<ul class="syntax_hilite_header">		<li class="language">ActionScript</li>		<li class="filename">TestTweensy_6.as</li>	<li class="source"><a href="#actionscript-16_plane" rel="shadowbox;">Source</a></li></ul><div class="syntax_hilite_planecode" id="actionscript-16_plane"><pre>package  {
	import com.flashdynamix.motion.Tweensy;
	import com.flashdynamix.motion.TweensyTimeline;
	import fl.motion.easing.Quadratic;
	import flash.display.Graphics;
	import flash.display.Sprite;
	import flash.text.TextField;
	import flash.text.TextFieldAutoSize;
	import flash.text.TextFormat;
	import flash.text.TextFormatAlign;

	[SWF(backgroundColor = 0x000000, width = 600, height = 200, frameRate = 30)]
	public class TestTweensy_6 extends Sprite {

		private var _boxes:Array;

		public function TestTweensy_6() {
			initInstances();

			startTweensy();
		}

		private function initInstances():void {
			var textFormat:TextFormat = new TextFormat('_等幅', 10, 0xffffff);
			var graphics:Graphics = graphics;
			graphics.lineStyle(1, 0xffffff, 0.5);

			_boxes = [];
			var strings:Array = [
				'NONE',
				'REPLAY',
				'YOYO',
				'LOOP'
			];
			var i:int, j:int, y:Number, box:Sprite, textField:TextField;
			for (i = 0; i < strings.length; i ++) {
				y = 60 + 15 * i;

				box = createBox();
				box.x = 100;
				box.y = y;
				_boxes[i] = box;

				addChild(box);

				graphics.moveTo(100, y);
				graphics.lineTo(500, y);
				for (j = 0; j < 2; j ++) {
					textFormat.align = (j == 0)? TextFormatAlign.RIGHT: TextFormatAlign.LEFT;
					textField = new TextField();
					textField.defaultTextFormat = textFormat;
					textField.text = strings[i];
					textField.x = (j == 0)? 10: 510;
					textField.y = y - 8;
					textField.width = 80;
					addChild(textField);
				}
			}
		}

		private function createBox():Sprite {
			var box:Sprite = new Sprite();
			var graphics:Graphics = box.graphics;

			graphics.beginFill(0x0099cc);
			graphics.drawRect(-5, -5, 10, 10);
			graphics.endFill();

			return box;
		}

		private function startTweensy():void{
			var repeatTypes:Array = [
				TweensyTimeline.NONE,
				TweensyTimeline.REPLAY,
				TweensyTimeline.YOYO,
				TweensyTimeline.LOOP
			];

			var i:int, box:Sprite, timeline:TweensyTimeline;
			for (i = 0; i < _boxes.length; i ++) {
				box = _boxes[i];
				timeline = Tweensy.to(box, { x: 500 }, 3, Quadratic.easeOut, 1);
				timeline.repeatType = repeatTypes[i];
			}
		}


	}

}</pre></div><div class="syntax_hilite">
<div id="actionscript-16">
<div class="actionscript actionscript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">package &nbsp;<span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">Tweensy</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">TweensyTimeline</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Quadratic</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Graphics</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFormatAlign</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#91;</span>SWF<span class="br0">&#40;</span><span class="kw3">backgroundColor</span> = 0x000000, <span class="kw3">width</span> = <span class="nu0">600</span>, <span class="kw3">height</span> = <span class="nu0">200</span>, frameRate = <span class="nu0">30</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">class</span> TestTweensy_6 <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _boxes:<span class="kw3">Array</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> TestTweensy_6<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initInstances<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startTweensy<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initInstances<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">textFormat</span>:<span class="kw3">TextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0xffffff<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> graphics:Graphics = graphics;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">lineStyle</span><span class="br0">&#40;</span><span class="nu0">1</span>, 0xffffff, <span class="nu0">0.5</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxes = <span class="br0">&#91;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> strings:<span class="kw3">Array</span> = <span class="br0">&#91;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">'NONE'</span>,</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">'REPLAY'</span>,</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">'YOYO'</span>,</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="st0">'LOOP'</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> i:<span class="kw3">int</span>, j:<span class="kw3">int</span>, y:<span class="kw3">Number</span>, box:Sprite, <span class="kw3">textField</span>:<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span>i = 0; i <span class="sy0">&lt;</span> strings.<span class="kw3">length</span>; i ++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; y = <span class="nu0">60</span> + <span class="nu0">15</span> <span class="sy0">*</span> i;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; box = createBox<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; box.<span class="me1">x</span> = <span class="nu0">100</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; box.<span class="me1">y</span> = y;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _boxes<span class="br0">&#91;</span>i<span class="br0">&#93;</span> = box;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span>box<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">moveTo</span><span class="br0">&#40;</span><span class="nu0">100</span>, y<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">lineTo</span><span class="br0">&#40;</span><span class="nu0">500</span>, y<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span>j = 0; j <span class="sy0">&lt;</span> <span class="nu0">2</span>; j ++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textFormat</span>.<span class="kw3">align</span> = <span class="br0">&#40;</span>j == 0<span class="br0">&#41;</span>? TextFormatAlign.<span class="kw3">RIGHT</span>: TextFormatAlign.<span class="kw3">LEFT</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span> = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">defaultTextFormat</span> = <span class="kw3">textFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="kw3">text</span> = strings<span class="br0">&#91;</span>i<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">x</span> = <span class="br0">&#40;</span>j == 0<span class="br0">&#41;</span>? <span class="nu0">10</span>: <span class="nu0">510</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">y</span> = y - <span class="nu0">8</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="kw3">width</span> = <span class="nu0">80</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw3">textField</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> createBox<span class="br0">&#40;</span><span class="br0">&#41;</span>:Sprite <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> box:Sprite = <span class="kw2">new</span> Sprite<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> graphics:Graphics = box.<span class="me1">graphics</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">beginFill</span><span class="br0">&#40;</span>0x0099cc<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="me1">drawRect</span><span class="br0">&#40;</span>-<span class="nu0">5</span>, -<span class="nu0">5</span>, <span class="nu0">10</span>, <span class="nu0">10</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">endFill</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> box;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startTweensy<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> repeatTypes:<span class="kw3">Array</span> = <span class="br0">&#91;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TweensyTimeline.<span class="me1">NONE</span>,</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TweensyTimeline.<span class="me1">REPLAY</span>,</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TweensyTimeline.<span class="me1">YOYO</span>,</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TweensyTimeline.<span class="me1">LOOP</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> i:<span class="kw3">int</span>, box:Sprite, timeline:TweensyTimeline;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span>i = 0; i <span class="sy0">&lt;</span> _boxes.<span class="kw3">length</span>; i ++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; box = _boxes<span class="br0">&#91;</span>i<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; timeline = Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>box, <span class="br0">&#123;</span> x: <span class="nu0">500</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Quadratic.<span class="me1">easeOut</span>, <span class="nu0">1</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; timeline.<span class="me1">repeatType</span> = repeatTypes<span class="br0">&#91;</span>i<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div>
</div></div><br />]]></content:encoded>
			<wfw:commentRss>http://ferv.jp/blog/2009/05/15/tweensy_6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tweensy - onUpdate/onComplete</title>
		<link>http://ferv.jp/blog/2009/05/14/tweensy_5/</link>
		<comments>http://ferv.jp/blog/2009/05/14/tweensy_5/#comments</comments>
		<pubDate>Thu, 14 May 2009 06:53:12 +0000</pubDate>
		<dc:creator>dsk</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[Tweensy]]></category>

		<guid isPermaLink="false">http://flabo.org/?p=594</guid>
		<description><![CDATA[onUpdate/onCompleteイベントをTweensyで設定してみる。
Tweenerと大きく違う部分は、Tweensy.to()/Tweensy.from()/Tweensy.fromTo()の戻り値のTweensyTimelineオブジェクトに対して、onUpdate/onCompleteをFunction型で設定すること。
また、TweensyTimelineオブジェクトに対して、onUpdateParams/onCompleteParamsをArray型で設定することができ、onUpdate/onCompleteで設定したfunctionに引数として渡される。
今回は円を描]]></description>
			<content:encoded><![CDATA[<p>onUpdate/onCompleteイベントをTweensyで設定してみる。</p>
<p>Tweenerと大きく違う部分は、Tweensy.to()/Tweensy.from()/Tweensy.fromTo()の戻り値のTweensyTimelineオブジェクトに対して、onUpdate/onCompleteをFunction型で設定すること。
また、TweensyTimelineオブジェクトに対して、onUpdateParams/onCompleteParamsをArray型で設定することができ、onUpdate/onCompleteで設定したfunctionに引数として渡される。</p>
<p>今回は円を描いたSpriteをランダムな座標に動かし、scaleX/scaleYもランダムに変化させる。<br />
onUpdateParams/onCompleteParamsにスタート時と現在と目標の座標とscaleを引数として設定し、onUpdate時とonComplete時にスタート時と現在と目標の座標とscaleをTextFieldに表示することにする。onComplete時に再度Tweensy.to()を設定しているので、再帰的に動き続ける。</p>
<p><a rel="shadowbox;width=600;height=400;" href="http://ferv.jp/blog/wp-content/uploads/2009/05/testtweensy_5.swf">TestTweensy_5.swf</a><p>
	<ul class="syntax_hilite_header">		<li class="language">ActionScript</li>		<li class="filename">TestTweensy_5.as</li>	<li class="source"><a href="#actionscript-18_plane" rel="shadowbox;">Source</a></li></ul><div class="syntax_hilite_planecode" id="actionscript-18_plane"><pre>package  {
	import com.flashdynamix.motion.Tweensy;
	import com.flashdynamix.motion.TweensyTimeline;
	import fl.motion.easing.Quadratic;
	import flash.display.Graphics;
	import flash.display.Sprite;
	import flash.text.TextField;
	import flash.text.TextFieldAutoSize;
	import flash.text.TextFormat;

	[SWF(backgroundColor = 0x000000, width = 600, height = 400, frameRate = 30)]
	public class TestTweensy_5 extends Sprite {

		private var _circle:Sprite;
		private var _textField:TextField;

		public function TestTweensy_5() {
			initTextField();
			initCircle();

			startCircleTweensy();
		}

		private function initTextField():void {
			_textField = new TextField();

			var textField:TextField = _textField;
			var textFormat:TextFormat = new TextFormat('_等幅', 10, 0xffffff);

			textField.defaultTextFormat = textFormat;
			textField.autoSize = TextFieldAutoSize.LEFT;

			addChild(textField);
		}

		private function initCircle():void {
			_circle = new Sprite();

			var circle:Sprite = _circle;
			var graphics:Graphics = circle.graphics;

			graphics.beginFill(0x0099cc);
			graphics.drawCircle(0, 0, 10);
			graphics.endFill();
			circle.x = Math.random() * stage.stageWidth;
			circle.y = Math.random() * stage.stageHeight;

			addChildAt(circle, 0);
		}

		private function startCircleTweensy():void {
			var circle:Sprite = _circle;
			var targetX:Number = Math.random() * stage.stageWidth;
			var targetY:Number = Math.random() * stage.stageHeight;
			var targetScaleX:Number = 1 + Math.random() * 3;
			var targetScaleY:Number = 1 + Math.random() * 3;

			var timeline:TweensyTimeline = Tweensy.to(circle, { x: targetX, y: targetY, scaleX: targetScaleX, scaleY: targetScaleY }, 3, Quadratic.easeOut, 1);
			timeline.onUpdate = onCircleUpdate;
			timeline.onUpdateParams = [circle.x, circle.y, circle.scaleX, circle.scaleY, targetX, targetY, targetScaleX, targetScaleY];
			timeline.onComplete = onCircleComplete;
			timeline.onCompleteParams = [circle.x, circle.y, circle.scaleX, circle.scaleY, targetX, targetY, targetScaleX, targetScaleY];
		}

		private function onCircleUpdate(startX:Number, startY:Number, startScaleX:Number, startScaleY:Number, targetX:Number, targetY:Number, targetScaleX:Number, targetScaleY:Number):void {
			updateTextField('onCircleUpdate\n', startX, startY, startScaleX, startScaleY, targetX, targetY, targetScaleX, targetScaleY);
		}

		private function onCircleComplete(startX:Number, startY:Number, startScaleX:Number, startScaleY:Number, targetX:Number, targetY:Number, targetScaleX:Number, targetScaleY:Number):void {
			updateTextField('onCircleComplete\n', startX, startY, startScaleX, startScaleY, targetX, targetY, targetScaleX, targetScaleY);
			startCircleTweensy();
		}

		private function updateTextField(text:String, startX:Number, startY:Number, startScaleX:Number, startScaleY:Number, targetX:Number, targetY:Number, targetScaleX:Number, targetScaleY:Number):void {
			var circle:Sprite = _circle;

			text += 'START   x = ' + startX.toString() + '\n';
			text += '        y = ' + startY.toString() + '\n';
			text += '        scaleX = ' + startScaleX.toString() + '\n';
			text += '        scaleY = ' + startScaleY.toString() + '\n';
			text += 'CURRENT x = ' + circle.x.toString() + '\n';
			text += '        y = ' + circle.y.toString() + '\n';
			text += '        scaleX = ' + circle.scaleX.toString() + '\n';
			text += '        scaleY = ' + circle.scaleY.toString() + '\n';
			text += 'TARGET  x = ' + targetX.toString() + '\n';
			text += '        y = ' + targetY.toString() + '\n';
			text += '        scaleX = ' + targetScaleX.toString() + '\n';
			text += '        scaleY = ' + targetScaleY.toString();

			_textField.text = text;
		}


	}

}</pre></div><div class="syntax_hilite">
<div id="actionscript-18">
<div class="actionscript actionscript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">package &nbsp;<span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">Tweensy</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> com.<span class="me1">flashdynamix</span>.<span class="me1">motion</span>.<span class="me1">TweensyTimeline</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> fl.<span class="me1">motion</span>.<span class="me1">easing</span>.<span class="me1">Quadratic</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Graphics</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="me1">display</span>.<span class="me1">Sprite</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="me1">TextFieldAutoSize</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw3">import</span> flash.<span class="kw3">text</span>.<span class="kw3">TextFormat</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>SWF<span class="br0">&#40;</span><span class="kw3">backgroundColor</span> = 0x000000, <span class="kw3">width</span> = <span class="nu0">600</span>, <span class="kw3">height</span> = <span class="nu0">400</span>, frameRate = <span class="nu0">30</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">class</span> TestTweensy_5 <span class="kw3">extends</span> Sprite <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _circle:Sprite;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">var</span> _textField:<span class="kw3">TextField</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">public</span> <span class="kw2">function</span> TestTweensy_5<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initTextField<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initCircle<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startCircleTweensy<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initTextField<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _textField = <span class="kw2">new</span> <span class="kw3">TextField</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">textField</span>:<span class="kw3">TextField</span> = _textField;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> <span class="kw3">textFormat</span>:<span class="kw3">TextFormat</span> = <span class="kw2">new</span> <span class="kw3">TextFormat</span><span class="br0">&#40;</span><span class="st0">'_等幅'</span>, <span class="nu0">10</span>, 0xffffff<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="me1">defaultTextFormat</span> = <span class="kw3">textFormat</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">textField</span>.<span class="kw3">autoSize</span> = TextFieldAutoSize.<span class="kw3">LEFT</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChild<span class="br0">&#40;</span><span class="kw3">textField</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> initCircle<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _circle = <span class="kw2">new</span> Sprite<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> circle:Sprite = _circle;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> graphics:Graphics = circle.<span class="me1">graphics</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">beginFill</span><span class="br0">&#40;</span>0x0099cc<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="me1">drawCircle</span><span class="br0">&#40;</span>0, 0, <span class="nu0">10</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; graphics.<span class="kw3">endFill</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; circle.<span class="me1">x</span> = <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="kw3">stage</span>.<span class="me1">stageWidth</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; circle.<span class="me1">y</span> = <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="kw3">stage</span>.<span class="me1">stageHeight</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; addChildAt<span class="br0">&#40;</span>circle, 0<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> startCircleTweensy<span class="br0">&#40;</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> circle:Sprite = _circle;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> targetX:<span class="kw3">Number</span> = <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="kw3">stage</span>.<span class="me1">stageWidth</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> targetY:<span class="kw3">Number</span> = <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="kw3">stage</span>.<span class="me1">stageHeight</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> targetScaleX:<span class="kw3">Number</span> = <span class="nu0">1</span> + <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="nu0">3</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> targetScaleY:<span class="kw3">Number</span> = <span class="nu0">1</span> + <span class="kw3">Math</span>.<span class="kw3">random</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">*</span> <span class="nu0">3</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> timeline:TweensyTimeline = Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>circle, <span class="br0">&#123;</span> x: targetX, y: targetY, scaleX: targetScaleX, scaleY: targetScaleY <span class="br0">&#125;</span>, <span class="nu0">3</span>, Quadratic.<span class="me1">easeOut</span>, <span class="nu0">1</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; timeline.<span class="kw3">onUpdate</span> = onCircleUpdate;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; timeline.<span class="me1">onUpdateParams</span> = <span class="br0">&#91;</span>circle.<span class="me1">x</span>, circle.<span class="me1">y</span>, circle.<span class="me1">scaleX</span>, circle.<span class="me1">scaleY</span>, targetX, targetY, targetScaleX, targetScaleY<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; timeline.<span class="me1">onComplete</span> = onCircleComplete;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; timeline.<span class="me1">onCompleteParams</span> = <span class="br0">&#91;</span>circle.<span class="me1">x</span>, circle.<span class="me1">y</span>, circle.<span class="me1">scaleX</span>, circle.<span class="me1">scaleY</span>, targetX, targetY, targetScaleX, targetScaleY<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onCircleUpdate<span class="br0">&#40;</span>startX:<span class="kw3">Number</span>, startY:<span class="kw3">Number</span>, startScaleX:<span class="kw3">Number</span>, startScaleY:<span class="kw3">Number</span>, targetX:<span class="kw3">Number</span>, targetY:<span class="kw3">Number</span>, targetScaleX:<span class="kw3">Number</span>, targetScaleY:<span class="kw3">Number</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; updateTextField<span class="br0">&#40;</span><span class="st0">'onCircleUpdate<span class="es0">\n</span>'</span>, startX, startY, startScaleX, startScaleY, targetX, targetY, targetScaleX, targetScaleY<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> onCircleComplete<span class="br0">&#40;</span>startX:<span class="kw3">Number</span>, startY:<span class="kw3">Number</span>, startScaleX:<span class="kw3">Number</span>, startScaleY:<span class="kw3">Number</span>, targetX:<span class="kw3">Number</span>, targetY:<span class="kw3">Number</span>, targetScaleX:<span class="kw3">Number</span>, targetScaleY:<span class="kw3">Number</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; updateTextField<span class="br0">&#40;</span><span class="st0">'onCircleComplete<span class="es0">\n</span>'</span>, startX, startY, startScaleX, startScaleY, targetX, targetY, targetScaleX, targetScaleY<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; startCircleTweensy<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">private</span> <span class="kw2">function</span> updateTextField<span class="br0">&#40;</span><span class="kw3">text</span>:<span class="kw3">String</span>, startX:<span class="kw3">Number</span>, startY:<span class="kw3">Number</span>, startScaleX:<span class="kw3">Number</span>, startScaleY:<span class="kw3">Number</span>, targetX:<span class="kw3">Number</span>, targetY:<span class="kw3">Number</span>, targetScaleX:<span class="kw3">Number</span>, targetScaleY:<span class="kw3">Number</span><span class="br0">&#41;</span>:<span class="kw3">void</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">var</span> circle:Sprite = _circle;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'START &nbsp; x = '</span> + startX.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">' &nbsp; &nbsp; &nbsp; &nbsp;y = '</span> + startY.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">' &nbsp; &nbsp; &nbsp; &nbsp;scaleX = '</span> + startScaleX.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">' &nbsp; &nbsp; &nbsp; &nbsp;scaleY = '</span> + startScaleY.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'CURRENT x = '</span> + circle.<span class="me1">x</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">' &nbsp; &nbsp; &nbsp; &nbsp;y = '</span> + circle.<span class="me1">y</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">' &nbsp; &nbsp; &nbsp; &nbsp;scaleX = '</span> + circle.<span class="me1">scaleX</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">' &nbsp; &nbsp; &nbsp; &nbsp;scaleY = '</span> + circle.<span class="me1">scaleY</span>.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">'TARGET &nbsp;x = '</span> + targetX.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">' &nbsp; &nbsp; &nbsp; &nbsp;y = '</span> + targetY.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">' &nbsp; &nbsp; &nbsp; &nbsp;scaleX = '</span> + targetScaleX.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">'<span class="es0">\n</span>'</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">text</span> += <span class="st0">' &nbsp; &nbsp; &nbsp; &nbsp;scaleY = '</span> + targetScaleY.<span class="kw3">toString</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _textField.<span class="kw3">text</span> = <span class="kw3">text</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span></div></li>
</ol></div>
</div></div><br />]]></content:encoded>
			<wfw:commentRss>http://ferv.jp/blog/2009/05/14/tweensy_5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tweensy - ease</title>
		<link>http://ferv.jp/blog/2009/05/14/tweensy_4/</link>
		<comments>http://ferv.jp/blog/2009/05/14/tweensy_4/#comments</comments>
		<pubDate>Wed, 13 May 2009 15:51:49 +0000</pubDate>
		<dc:creator>dsk</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[Tweensy]]></category>

		<guid isPermaLink="false">http://flabo.org/?p=587</guid>
		<description><![CDATA[
Tweensy.to()/Tweensy.from()の第四引数とTweensy.fromTo()の第五引数にease:Functionって引数がある。Tweenerでいうtransitionで指定したようなイージング [...]]]></description>
			<content:encoded><![CDATA[<p><a rel="shadowbox;width=600;height=600;" href="http://ferv.jp/blog/wp-content/uploads/2009/05/testtweensy_4.swf"><img src="http://ferv.jp/blog/wp-content/uploads/2009/05/testtweensy_4.png" /></a><p>
<p>Tweensy.to()/Tweensy.from()の第四引数とTweensy.fromTo()の第五引数にease:Functionって引数がある。Tweenerでいうtransitionで指定したようなイージングのカーブの指定をする引数と同様のものだ。<br />
ease:Functionには、<a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/package-detail.html">fl.motion.easing</a>パッケージ内の各クラスのeaseIn/easeOut/easeInOut関数を渡してあげる。<a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/package-detail.html">fl.motion.easing</a>パッケージは
<ul>
<li><a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/Linear.html">Linear</a></li>
<li><a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/Quadratic.html">Quadratic</a></li>
<li><a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/Cubic.html">Cubic</a></li>
<li><a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/Quartic.html">Quartic</a></li>
<li><a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/Quintic.html">Quintic</a></li>
<li><a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/Exponential.html">Exponential</a></li>
<li><a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/Sine.html">Sine</a></li>
<li><a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/Circular.html">Circular</a></li>
<li><a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/Back.html">Back</a></li>
<li><a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/Bounce.html">Bounce</a></li>
<li><a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/motion/easing/Elastic.html">Elastic</a></li>
</ul>
というクラスで構成されている。意味とかは<a href="http://ferv.jp/blog/2009/05/13/about_transition/">Transitionの意味</a>を参照。</p>
<p>下のサンプルでは、全クラスのeaseIn/easeOut/easeInOutを試してみた。LinearクラスだけはeaseNone/easeIn/easeOut/easeInOutの四つの関数があるけど、計算内容は同じなのでeaseNoneを渡してある。</p>
<p>QuadraticクラスのeaseIn関数をTweensy.toの第四引数で渡すとこだけ例を挙げておく。</p>
	<ul class="syntax_hilite_header">		<li class="language">ActionScript</li>		<li class="filename">TestTweensy_4.as</li>	<li class="source"><a href="#actionscript-20_plane" rel="shadowbox;">Source</a></li></ul><div class="syntax_hilite_planecode" id="actionscript-20_plane"><pre>Tweensy.to(box, { x: 500 }, 3, Quadratic.easeIn);</pre></div><div class="syntax_hilite">
<div id="actionscript-20">
<div class="actionscript actionscript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">Tweensy.<span class="me1">to</span><span class="br0">&#40;</span>box, <span class="br0">&#123;</span> x: <span class="nu0">500</span> <span class="br0">&#125;</span>, <span class="nu0">3</span>, Quadratic.<span class="me1">easeIn</span><span class="br0">&#41;</span>;</div></li>
</ol></div>
</div></div><br />]]></content:encoded>
			<wfw:commentRss>http://ferv.jp/blog/2009/05/14/tweensy_4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

