<?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/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>mrhdms &#187; AS3</title>
	<atom:link href="http://mrhdms.iixx.jp/tag/as3/feed/" rel="self" type="application/rss+xml" />
	<link>http://mrhdms.iixx.jp</link>
	<description>flashとかcss/htmlとかweb制作に関するメモ</description>
	<lastBuildDate>Wed, 11 Jan 2012 15:12:32 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://mrhdms.iixx.jp/tag/as3/feed/" />
		<item>
		<title>FlashDevelop4でFlashPlayer11とかAIR3書き出ししてハマったところだけ</title>
		<link>http://mrhdms.iixx.jp/2011/11/02/flashdevelop4_flashplayer11_air3/</link>
		<comments>http://mrhdms.iixx.jp/2011/11/02/flashdevelop4_flashplayer11_air3/#comments</comments>
		<pubDate>Wed, 02 Nov 2011 14:13:42 +0000</pubDate>
		<dc:creator>mrhdms</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[AIR3]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[FlashDevelop]]></category>

		<guid isPermaLink="false">http://mrhdms.iixx.jp/?p=170</guid>
		<description><![CDATA[はい。いとも簡単に躓く僕です。 また忘れそうなんでメモっとく。 まず、基本的な手順はすべて完結かつ丁寧にこちらで説明されています。 NUTSU » Build FlashPlayer 11 AS with FlashDe [...]]]></description>
			<content:encoded><![CDATA[				<p>はい。いとも簡単に躓く僕です。<br />
				また忘れそうなんでメモっとく。</p>
				<p>まず、基本的な手順はすべて完結かつ丁寧にこちらで説明されています。<br />
				<a href="http://nutsu.com/blog/2011/fd4_fp11.html">NUTSU » Build FlashPlayer 11 AS with FlashDevelop</a></p>
				<p>FlashPlayer11書き出しについてはとくに問題なくいけました。<br />
				AIR3書き出しで2点ほどハマった箇所がありました。</p>
				<h3>descriptor version does not match runtime version とかめっちゃ言う</h3>
				<p>まあ言葉の通りバージョン食い違ってますよってことらしいけど、<br />
				AIRランタイム更新しなおしたりSDK入れなおしたり書き出し設定みなおしても、うんともすんとも・・</p>
				<p>で、結局は、ブロジェクトのbatディレクトリに生成されている <strong>SetUpSDK.bat</strong> 内で指定されているSDKパスが違ってました。<br />
				FlashDevelopで設定されているデフォルトのパスが入ってるんですねえ。それのバージョン古かったというオチでした。</p>
				<pre class="brush: plain; title: ; notranslate">
set FLEX_SDE=C:\hogehoge\fugafuga\flex_sdk_4.5.1
</pre>
				<p>こんな。</p>
				<h3>MacのParallels環境だと面倒？</h3>
				<blockquote><p>2011/11/8 追記<br />
				プロジェクト新規作成時にちゃんとネットワークドライブ（Z:¥ みたいなの）でプロジェクトのパスを指定してやっていれば問題なかったです。。すいません。フィリップさん濡れ衣ごめんなさい。<br />
				新規作成時に(¥¥psf¥home~~~)みたいなネットワークのパスで作っちゃってたみたいです。<br />
				作ってしまったあと、あとから変える場合は、obj/プロジェクト名＋Config.xmlのファイル内をいじればOKかと。</p></blockquote>
				<p><del datetime="2011-11-08T11:40:52+00:00">普段が、MacのParallels上でFlashDevelopを動かしてるので、この環境でさくっと行きたかったけど・・・結果的にはダメでした。</del></p>
				<p><del datetime="2011-11-08T11:40:52+00:00">コマンドプロンプトが立ち上がる際に、ネットワーク共有ディレクトリ上で起動すると現在のディレクトリを引き継げないとか。<br />
				（普通Macと行き来するから仮想の共有ディレクトリで作業してます！）<br />
				で、解決のためにドライブを割り当てなさいってことなんだけども、Parallels上ではすでにその様に設定されていて、（Z:¥ みたいな）それでもFlashDevelopからcmd.exeが立ち上がるときはそういう設定は反映されないと。</del></p>
				<p><del datetime="2011-11-08T11:40:52+00:00">解決策としては、.batファイル内で指定してる　bat/**.bat みたいな相対パスな指定をすべて絶対パスに変えてやれば動くんじゃないかと思うけど、「そこまでするならおとなしくFlash Builder使うわ。」という結論にいたって試してません。<br />
				（いや、全然簡単にできるし！みたいな、詳しい方いたら是非やさしくおしえてください。）</del><br />
				<del datetime="2011-11-08T11:40:52+00:00"><br />
				FlashDevelopの<a href="http://www.flashdevelop.org/community/viewtopic.php?f=9&#038;t=3529">Bridge</a>ってのが現在進行中で進んでるけど、Parallelsはまだ使えないっぽいので、このへんが解決につながるのかなーとかふんわり期待してます。</del></p>
				<p>以上、取り留めもなく。27最後のメモ。</p>
]]></content:encoded>
			<wfw:commentRss>http://mrhdms.iixx.jp/2011/11/02/flashdevelop4_flashplayer11_air3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://mrhdms.iixx.jp/2011/11/02/flashdevelop4_flashplayer11_air3/" />
	</item>
		<item>
		<title>「FizzBuzzではじめるテスト」を AS3 と FlexUnit4 ではじめるテスト</title>
		<link>http://mrhdms.iixx.jp/2011/07/27/fizzbuzz-test-actionscript3-flexunit4/</link>
		<comments>http://mrhdms.iixx.jp/2011/07/27/fizzbuzz-test-actionscript3-flexunit4/#comments</comments>
		<pubDate>Tue, 26 Jul 2011 23:13:12 +0000</pubDate>
		<dc:creator>mrhdms</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[イベント]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[event]]></category>
		<category><![CDATA[FlashDevelop]]></category>
		<category><![CDATA[flexunit]]></category>
		<category><![CDATA[kphpug]]></category>

		<guid isPermaLink="false">http://mrhdms.iixx.jp/?p=155</guid>
		<description><![CDATA[先日、第１回関西PHP勉強会という勉強会に参加してきました。 テーマは「テスト」、TDD（テスト駆動開発）とか言う、僕には縁のなかったあれです。 ただ、わりと入門編ということで敷居の低いセッションも用意してくれていたので [...]]]></description>
			<content:encoded><![CDATA[				<p>先日、<a title="第１回関西PHP勉強会" href="http://atnd.org/events/17549">第１回関西PHP勉強会</a>という勉強会に参加してきました。<br />
				テーマは「テスト」、TDD（テスト駆動開発）とか言う、僕には縁のなかったあれです。<br />
				ただ、わりと入門編ということで敷居の低いセッションも用意してくれていたので、<br />
				ActionScriptでテスト入門してみました。<br />
				<span id="more-155"></span></p>
				<h2>TDDとかしらんがな</h2>
				<p>テストってなんぞ？っていう状態だったので、とりあえずこのへんの動画をみて、<br />
				テスト駆動開発の雰囲気をつかんで、話を聞いたようなそんなレベルです。<br />
				最後の方はリファクタリングの話にも触れられてるので、そのへんも勉強になります。</p>
				<p><a href="http://www.nicovideo.jp/mylist/4805036">和田卓人の“テスト駆動開発”講座</a></p>
				<p>と、まあ、急がば回れ的な雰囲気で、何やらよさそうです。</p>
				<p>今回参考にさせてもらったのは、「<a href="http://www.1x1.jp/blog/2011/07/event_kansai_php_1_fizzbuzz_test.html">FizzBuzzではじめるテスト – 第１回関西PHP勉強会</a>」<br />
				こちらの内容で、そのままASに持ってきて試してます。</p>
				<h2>FizzBuzzもしらんがな</h2>
				<p>なにやらエンジニア界隈ではわりと常識らしい「FizzBuzz」、初めて聞きました。<br />
				参考のエントリできちんと説明されていますが、1から順に数字を出力していき、<br />
				3の倍数で&#8221;Fizz&#8221;、5の倍数で&#8221;Buzz&#8221;、公倍数で&#8221;FizzBuzz&#8221;と、<br />
				要は世界のナベアツ的な出力をするプログラムを指すらしいです。</p>
				<p>ASで書くとこんな感じ。（サンプルのまんまですけどね。）</p>
				<pre class="brush: as3; title: ; notranslate">
package
{
	/**
	 * FizzBuzzクラス
	 * @author Hidemasa Mori
	 */
	public class FizzBuzz
	{
		/**
		 * FizzBuzz テキスト表現を作成
		 *
		 * @param uint num
		 * @return String
		 */
		public static function makeFizzBuzz(num:uint):String
		{
			if (num % 3 == 0 &amp;&amp; num % 5 == 0)
			{
				return &quot;FizzBuzz&quot;;
			} else if (num % 3 == 0) {
				return &quot;Fizz&quot;;
			} else if ( num % 5 == 0) {
				return &quot;Buzz&quot;;
			} else {
				return num.toString();
			}
		}

	}

}
</pre>
				<h2>FlexUnit4+FlashDevelopでテスト</h2>
				<p>で、本題のテストですが、今回はAS3+FlexUnit4（4.1Betaが出てたけどうまく行かず）+FlashDevelop4でやってます。<br />
				プロジェクトごとGithubに置いてるので、そのままmxmlをドキュメントクラスにしてコンパイルすると動くかと。<br />
				サンプルの作成に「<a href="http://d.hatena.ne.jp/ActionScript/20091121/fd_flex_unit_4_test">FlashDevelopの使い方 (17)FlexUnit 4でユニットテストをする方法</a>」を大変参考にさせていただきました。</p>
				<p><a title="AS3-FizzBuzzTest-FlexUnit4" href="https://github.com/mrhdms/AS3-FizzBuzzTest-FlexUnit4">サンプルファイル</a></p>
				<p>手順としては、<a href="http://www.flexunit.org/?page_id=14">FlexUnit4をダウンロード</a>して、swcファイルをライブラリに追加していきます。<br />
				今回のサンプルはこんなファイル構成。<br />
				<a href="http://www.flickr.com/photos/65670447@N03/5979307014/" title="FizzBuzzTest - FlashDevelop" rel="" class="flickr-image"><img src="http://farm7.static.flickr.com/6126/5979307014_e6b9dec958.jpg" alt="FizzBuzzTest - FlashDevelop" class="" title="" longdesc="" /></a></p>
				<p>サンプルに入れているMain.asをドキュメントクラスにしても動くけど、<br />
				GUIを表示させることができなかった（traceはできる）ので、mxmlでのコンパイルに落ち着きました。</p>
				<p>テストコードはこんな感じ。<br />
				[test]とメタタグを書いたメソッドがテスト用メソッドとなるようです。<br />
				ほかにも、testの前後に処理を行うbeforeやafter、非同期処理に対応したメタタグなど色々あるみたいです。</p>
				<pre class="brush: as3; title: ; notranslate">
package
{
	import org.flexunit.Assert;
	/**
	 * FizzBuzzのテストクラス
	 * @author Hidemasa Mori
	 */
	public class FizzBuzzTest
	{
		[Test]
		public function testFizzBuzz():void
		{
			Assert.assertEquals(&quot;Fizz&quot;, FizzBuzz.makeFizzBuzz(3));
		}

		[Test]
		public function testFizzBuzz2():void
		{
			Assert.assertEquals(&quot;Buzz&quot;, FizzBuzz.makeFizzBuzz(5));
		}

		[Test]
		public function testFizzBuzz3():void
		{
			Assert.assertEquals(&quot;FizzBuzz&quot;, FizzBuzz.makeFizzBuzz(15));
		}

	}

}
</pre>
				<p>Assert.assertEqualsの引数を比べて、同じなら、テストが通りグリーンの表示</p>
				<a href="http://www.flickr.com/photos/65670447@N03/5978749215/" title="Adobe Flash Player 10" rel="flickr-mgr" class="flickr-image"><img src="http://farm7.static.flickr.com/6138/5978749215_6455d28e13_z.jpg" alt="Adobe Flash Player 10" class="flickr-large" title="" longdesc="" /></a>
				<p>違う結果が帰ってきた場合はレッドの表示となります。</p>
				<a href="http://www.flickr.com/photos/65670447@N03/5979307216/" title="Adobe Flash Player 10-1" rel="flickr-mgr" class="flickr-image"><img src="http://farm7.static.flickr.com/6141/5979307216_a00d537e3e_z.jpg" alt="Adobe Flash Player 10-1" class="flickr-large" title="" longdesc="" /></a>
				<p>とりあえず、赤と緑がみれたので満足。</p>
				<h2>他言語みたいなサクサクテストな環境は・・</h2>
				<p>今回の方法だと参考エントリでも言及されてるように、<br />
				GUIで確認するとなるとパブリッシュ→ムービープレビューの流れが必要になり、<br />
				手順としては冗長に感じますね・・こまめにテストするには敷居が高いです。<br />
				レッド/グリーンをGUIで確認しつつ、リアルタイムにテストを実行できる環境があればいーなー。<br />
				（勉強会でデモされてた、MakeGoodみたいな感じで）<br />
				FlashBuilderはこのあたり、連携スムーズになってるんでしょうか。興味湧いてきました。</p>
				<h2>UIのテスト</h2>
				<p>あと、Selenium IDEというのが紹介されていて、とってもいいなーと感じました。<br />
				ブラウザベースでの自動テストができるのは魅力的ですし、<br />
				デザイナーにも役立ちそうなツールなので是非試してみたいです。</p>
				<p>また、FlashのUI自動テストについても調べてみたら、<br />
				FlexMonkey とか QTP とかってのがあるみたいです。<br />
				そのへんはまた今度。</p>
]]></content:encoded>
			<wfw:commentRss>http://mrhdms.iixx.jp/2011/07/27/fizzbuzz-test-actionscript3-flexunit4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://mrhdms.iixx.jp/2011/07/27/fizzbuzz-test-actionscript3-flexunit4/" />
	</item>
		<item>
		<title>Flashとブラウザのスクロールバーが一緒に動く[未解決]</title>
		<link>http://mrhdms.iixx.jp/2011/04/06/scrollbar_jsfix/</link>
		<comments>http://mrhdms.iixx.jp/2011/04/06/scrollbar_jsfix/#comments</comments>
		<pubDate>Tue, 05 Apr 2011 18:27:29 +0000</pubDate>
		<dc:creator>mrhdms</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[externalInterface]]></category>
		<category><![CDATA[SWFWheel]]></category>
		<category><![CDATA[スクロール]]></category>

		<guid isPermaLink="false">http://mrhdms.iixx.jp/?p=137</guid>
		<description><![CDATA[全画面じゃないFlashコンテンツが埋め込まれたページで、 Flashコンテンツ内にもスクロールバーがあって、ブラウザもスクロール可能な状態の時、 両方同時にスクロールしてしまう・・と。 Flashコンテンツ内のスクロー [...]]]></description>
			<content:encoded><![CDATA[				<p>全画面じゃないFlashコンテンツが埋め込まれたページで、<br />
				Flashコンテンツ内にもスクロールバーがあって、ブラウザもスクロール可能な状態の時、<br />
				両方同時にスクロールしてしまう・・と。<br />
				Flashコンテンツ内のスクロールをしてるときは、ブラウザ側は動かず、<br />
				そうでないときはブラウザだけちゃんとスクロールしてほしいんだよと。</p>
				<p>結局JavaScriptを使って解決した・・と思ったけどブラウザ依存でだめぽい。</p>
				<p><a href="http://www.fxug.net/modules/xhnewbb/viewtopic.php?topic_id=885">http://www.fxug.net/modules/xhnewbb/viewtopic.php?topic_id=885</a></p>
				<p>とりあえずこちらを参考に下記のように。<br />
				<span id="more-137"></span><br />
				AS側からはExternalInterfaceでフラグを渡しつつJSを叩く。</p>
				<pre class="brush: as3; title: ; notranslate">
public static function wheelEnabled(flg:Boolean):void
{
	if (ExternalInterface.available)
	{
		try {
			ExternalInterface.call(&quot;wheelEnabled&quot;, flg);
		} catch (error:SecurityError) {
			trace(&quot;SecurityError: &quot; + error.message);
		} catch (error:Error) {
			trace(&quot;Error: &quot; + error.message);
		}
	} else {
		trace(&quot;External interface is not available&quot;);
	}
}</pre>
				<p>JS側では渡されたフラグをもとにホイールイベントをコントロールする。</p>
				<pre class="brush: jscript; title: ; notranslate">
//ブラウザのホイールの状態（初期値有効）
var _wheelEnabled = true;

//Flashから呼ばれる関数
function wheelEnabled(flg){
  _wheelEnabled = flg;
}

//ホイールイベントの処理
function wheel(event){
  if(!_wheelEnabled){
    if(!event){
      event = window.event;
    }
    if(event.preventDefault){
      event.preventDefault();
    }
    event.returnValue = false;
  }
}

//イベントリスナーの登録
if(window.addEventListener){
  window.addEventListener('DOMMouseScroll', wheel, false);
}
window.onmousewheel = document.onmousewheel = wheel;
</pre>
				<p>WIN IE,Chrome,Firefox &#038; Mac Safari ではちゃんと動いた。<br />
				WIN Safari &#038; Mac Chrome,Firefox で期待通り動かず。</p>
				<p>がっつりお世話になってるSWFWheel自体がExternalInterfaceを使ってJSでコントロールしてるっぽいので、<br />
				こうイベント止めちゃうとダメなんだろうなあとぼんやりした思考の中で今日はギブアップ。</p>
]]></content:encoded>
			<wfw:commentRss>http://mrhdms.iixx.jp/2011/04/06/scrollbar_jsfix/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://mrhdms.iixx.jp/2011/04/06/scrollbar_jsfix/" />
	</item>
		<item>
		<title>Progression4で外部swf読み込んで、Resource上手に使えるかな？</title>
		<link>http://mrhdms.iixx.jp/2010/10/27/progression4_swf_resourse_check/</link>
		<comments>http://mrhdms.iixx.jp/2010/10/27/progression4_swf_resourse_check/#comments</comments>
		<pubDate>Tue, 26 Oct 2010 16:55:35 +0000</pubDate>
		<dc:creator>mrhdms</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Progression4]]></category>

		<guid isPermaLink="false">http://mrhdms.iixx.jp/?p=115</guid>
		<description><![CDATA[ベースとなるswfはProgressionで用意して、各シーンの内容は外部swfでやるっていうあれです。 とくに目新しくないけど負けずに行きます。 本来ならSceneLoader使うのがスムーズだと思うけど、 Progr [...]]]></description>
			<content:encoded><![CDATA[				<p>ベースとなるswfはProgressionで用意して、各シーンの内容は外部swfでやるっていうあれです。<br />
				とくに目新しくないけど負けずに行きます。</p>
				<p>本来ならSceneLoader使うのがスムーズだと思うけど、<br />
				Progression自体の学習コストもあるので、複数人で作業する際に、<br />
				他のメンバーにそのコストをかけない方法ということで外部swfはなんでも来いな状態で。</p>
				<h2>やりたい事</h2>
				<p>・外部swf読み込む<br />
				・読み込み完了したらLoaderを配置する<br />
				・読み込み中はプログレスバー表示<br />
				・キャッシュされてる場合はプログレスバーの下りとばす<br />
				・バックグラウンドでswfキャッシュさせとく（これ別の話ですね。ResourcePrefetcher使うとサクっとできる）<br />
				<span id="more-115"></span></p>
				<h2>ハマったのはキャッシュされてる場合のResourceからLoaderへの渡しかた</h2>
				<p>各シーンで読み込まれるPageSwfクラス（CastSpriteを継承）を作って、<br />
				そのクラスのatCastAddedあたりでこんな感じで呼び出す。<br />
				（※ _swfUrl = 外部swfへのパス文字列、_loader = CastLoaderクラスのインスタンス）</p>
				<pre class="brush: as3; title: ; notranslate">
if (!getResourceById(_swfUrl))
{
	//まだ読み込んでいない場合
	addCommand(
		//プログレスバー出すなど・・省略
		new LoadSWF(new URLRequest(_swfUrl), _loader, {
			onStart		:function():void {
				//読み込みスタート時の処理　プログレスバー動かしたり
				);
			},
			onProgress	:function():void {
				//読み込み中の処理　読み込み状況取得したり

			},
			onComplete	:function():void {
				//読み込み終了時の処理
			}
		}),
		//プログレスバー消すなど・・省略
	)
} else {
	//リソースからバイト配列を取得して、_loaderに流しこむ。
	_loader.loadBytes(getResourceById(_swfUrl).toByteArray());
}

addCommand(
	new Prop(this, { alpha:0 } ),
	new AddChild(this, _loader),
	new DoTweener(this, { alpha:1, time:0.5 } )
);
</pre>
				<p>最初はResourceから取り出したデータが[Object CastLoader]とトレースされたので、<br />
				そのまま代入しようとしたり、loaderInfo.bytes を参照しようとして怒られてました。<br />
				このあたりの理解が浅いんですね〜・・<br />
				最終的には toByteArray() という素敵メソッドがすでにあったので、<br />
				Loaderにバイト配列を渡して一件落着でした。<br />
				そんなやり方してたらあかんよ！とかツッコミ絶賛募集中です。</p>
]]></content:encoded>
			<wfw:commentRss>http://mrhdms.iixx.jp/2010/10/27/progression4_swf_resourse_check/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://mrhdms.iixx.jp/2010/10/27/progression4_swf_resourse_check/" />
	</item>
		<item>
		<title>Progression4 で 外部swf のクラス（シンボル）にアクセスする</title>
		<link>http://mrhdms.iixx.jp/2010/03/15/progression4-loadswf-getdefinition/</link>
		<comments>http://mrhdms.iixx.jp/2010/03/15/progression4-loadswf-getdefinition/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 16:30:31 +0000</pubDate>
		<dc:creator>mrhdms</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Progression]]></category>
		<category><![CDATA[Progression4]]></category>

		<guid isPermaLink="false">http://mrhdms.iixx.jp/?p=84</guid>
		<description><![CDATA[やっぱ素材たっぷりになってきたしパブリッシュ軽くしたい・・とか、 素材ガンガン差し替わっちゃうよ、みたいなときってシンボルだって外部化したいですよね。 で、Progression4だとどうすんのかなーってところで、 ちょ [...]]]></description>
			<content:encoded><![CDATA[				<p>やっぱ素材たっぷりになってきたしパブリッシュ軽くしたい・・とか、<br />
				素材ガンガン差し替わっちゃうよ、みたいなときってシンボルだって外部化したいですよね。</p>
				<p>で、Progression4だとどうすんのかなーってところで、<br />
				ちょこちょこサンプルはあったけど、最小構成のサンプルということで。<span id="more-84"></span></p>
				<p>読み込む swf （サンプルでは&#8221;elements.swf&#8221;）は、ライブラリにてクラス名&#8221;Mc_a&#8221;としてリンケージ書き出しだけしてます。<br />
				AS3自体の基本的なやり方としては大重さんの下記記事が超絶わかりやすい。<br />
				<a href="http://www.adobe.com/jp/newsletters/edge/october2009/articles/article2/">大重美幸の「これ見落としてませんか？　ActionScript 3.0」<br />
				第2回 外部 swf ファイルのシンボルを利用する</a></p>
				<p>んで、てきとうな Scene クラスの、 atSceneInit や atSceneLoad で</p>
				<pre class="brush: as3; title: ; notranslate">
			addCommand(
				new LoadSWF(new URLRequest(&quot;elements.swf&quot;), null,
					{
						onComplete:function():void
						{
							var ld:Loader = this.loader;
							var domain:ApplicationDomain = ld.contentLoaderInfo.applicationDomain;
							var Mc:Class = domain.getDefinition(&quot;Mc_a&quot;) as Class;
							mc = new Mc();
							manager.root.container.addChild(mc);
						}
					}
				)
			);
</pre>
				<p>ハマったのは、 Loader とるとことか AppricationDomain とかのところ。<br />
				まだいまいち、 それぞれの this とか、処理の順番つかみきれてない感じ。</p>
]]></content:encoded>
			<wfw:commentRss>http://mrhdms.iixx.jp/2010/03/15/progression4-loadswf-getdefinition/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://mrhdms.iixx.jp/2010/03/15/progression4-loadswf-getdefinition/" />
	</item>
		<item>
		<title>BetweenAS3 に overwrite 的な機能が実装されてた</title>
		<link>http://mrhdms.iixx.jp/2010/02/18/betweenas3-overwrite/</link>
		<comments>http://mrhdms.iixx.jp/2010/02/18/betweenas3-overwrite/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 18:46:48 +0000</pubDate>
		<dc:creator>mrhdms</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[BetweenAS3]]></category>

		<guid isPermaLink="false">http://mrhdms.iixx.jp/?p=52</guid>
		<description><![CDATA[overwite なくてブーブーいってたわけですけど、 実装されてたみたいですね。 [r3422] オーバーライトっぽい挙動をするように変更 Tweener のように古いトゥイーンを停止はしませんが、新しいトゥイーンの値 [...]]]></description>
			<content:encoded><![CDATA[				<p><a href="http://mrhdms.iixx.jp/2010/01/31/begin-betweenas3-overwrite/">overwite なくてブーブーいってたわけですけど、<br />
				</a><a href="http://www.libspark.org/changeset/3422">実装</a>されてたみたいですね。</p>
				<blockquote><p>[r3422] オーバーライトっぽい挙動をするように変更<br />
				Tweener のように古いトゥイーンを停止はしませんが、新しいトゥイーンの値が優先されるようになりました</p></blockquote>
				<p>とのこと。<span id="more-52"></span></p>
				<p>前回のエントリで書いた通り、これまでは Tween が動いているかチェックして、動いている場合は止めてから次の Tween を設定する必要がありました。</p>
				<pre class="brush: as3; title: ; notranslate">
	if (_tw_A != null)
	{
		_tw_A.stop();
	}
</pre>
				<p>こんな感じで。それがなくて済むので、ロールオーバーボタンなんかはやっぱずいぶん楽になると思います。<br />
				ただ、上に書いた通り、「新しいトゥイーンが優先される」だけなので、この点だけ気をつけないといけないですね！</p>
				<p style="text-align: center;"><object style="width: 300px; height: 200px;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="300" height="200" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="quality" value="high" /><param name="src" value="http://mrhdms.iixx.jp/wp/wp-content/uploads/2010/02/Main2.swf" /><embed style="width: 300px; height: 200px;" type="application/x-shockwave-flash" width="300" height="200" src="http://mrhdms.iixx.jp/wp/wp-content/uploads/2010/02/Main2.swf" quality="high"></embed></object></p>
				<p>円の図形にロールオーバーとアウトを繰り返すと、別々にイベントを取れているのが確認できるかと思います。</p>
]]></content:encoded>
			<wfw:commentRss>http://mrhdms.iixx.jp/2010/02/18/betweenas3-overwrite/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://mrhdms.iixx.jp/2010/02/18/betweenas3-overwrite/" />
	</item>
		<item>
		<title>BetweenAS3 入門・・が結構ハマった Overwrite と助けてもらったサイトなど</title>
		<link>http://mrhdms.iixx.jp/2010/01/31/begin-betweenas3-overwrite/</link>
		<comments>http://mrhdms.iixx.jp/2010/01/31/begin-betweenas3-overwrite/#comments</comments>
		<pubDate>Sun, 31 Jan 2010 06:25:11 +0000</pubDate>
		<dc:creator>mrhdms</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[BetweenAS3]]></category>

		<guid isPermaLink="false">http://mrhdms.iixx.jp/?p=40</guid>
		<description><![CDATA[遅ればせながら BetweenAS3 を使ってみました。 好評はもちろん耳にしてて、気になってたけどなかなか腰が重かった・・・ 機能の一部も使えてない感じですが、やってみてハマったところや、お世話になったサイトなどメモっ [...]]]></description>
			<content:encoded><![CDATA[				<p>遅ればせながら BetweenAS3 を使ってみました。<br />
				好評はもちろん耳にしてて、気になってたけどなかなか腰が重かった・・・<br />
				機能の一部も使えてない感じですが、やってみてハマったところや、お世話になったサイトなどメモっておきます。<span id="more-40"></span></p>
				<h2>まずはゲットするとこから</h2>
				<p>なぜかこのページになかなかたどり着けませんでした（笑）</p>
				<p><a href="http://www.be-interactive.org/index.php?itemid=505">BetweenAS3 Alpha r3022 出来たよ | BeInteractive!</a></p>
				<p>↑から落として、Tips＆ドキュメントは以下に。</p>
				<p><a title="BetweenAS3使い方、Tweenerからの乗り換えのために。 « Fountain" href="http://blog.izm-design.com/2009/08/14-020321.php">BetweenAS3使い方、Tweenerからの乗り換えのために。 « Fountain</a><br />
				導入Tips。よくまとまってます。</p>
				<p><a title="BetweenAS3/en - Spark project" href="http://www.libspark.org/wiki/BetweenAS3/en">BetweenAS3/en &#8211; Spark project</a><br />
				最初、英語に嫌悪感を抱いて読み飛ばしてましたが、実は一通り機能紹介。<br />
				Google先生に翻訳してもらったら逆に破壊的な文章に・・・</p>
				<p><a title="BetweenAS3 Transition cheat sheet | 水玉製作所" href="http://www.mztm.jp/2009/10/30/betweenas3-transition-cheat-sheet/">BetweenAS3 Transition cheat sheet | 水玉製作所</a><br />
				イージング表です。名前もろくに覚えられないので助かります。</p>
				<p><a title="BetweenAS3を使ってカスタムイージングの始まりと終わりに別のイージング関数を指定する方法 | ClockMaker Blog" href="http://clockmaker.jp/blog/2009/11/betweenas3-custom/">BetweenAS3を使ってカスタムイージングの始まりと終わりに別のイージング関数を指定する方法 | ClockMaker Blog</a><br />
				こちらは機能拡張ですが、イージングのカスタマイズが簡単にできちゃうすぐれもの！<br />
				IObjectTween は使えない？っぽいです。（知識不足だったらすみません）</p>
				<p><a title="BeInteractive! [Wonderfl で BetweenAS3 (Alpha) が試せます]" href="http://www.be-interactive.org/index.php?itemid=472">BeInteractive! [Wonderfl で BetweenAS3 (Alpha) が試せます]</a><br />
				で、ワンダフルにこんなにチュートリアルがあるのを今発見・・・orz・・</p>
				<h2>居なくなって気づいた Overwrite の大切さ（ていうか甘えてた自分）</h2>
				<p><span class="caution">2010/2/18追記<br />
				<a href="http://mrhdms.iixx.jp/2010/02/18/betweenas3-overwrite/">overwriteが実装された模様！</a></span></p>
				<p>で、Tweener をこれまで使ってたのもあって、Overwrite 機能の有無というところでしっかりつまづきました。<br />
				特に、マウスイベントなんか使うと、割とブチ当たるかと思うんですが、同じオブジェクトに Tween の命令が重複しちゃうときに期待した動きになってくれません。</p>
				<pre class="brush: as3; title: ; notranslate">
private var _tw:ITween;

function onMouseOverHandler(e:MouseEvent):void
{
		_tw= BetweenAS3.tween(mc, { x:100 }, null,1,Sine.easeOut);
		_tw.play();
}

function onMouseOutHandler(e:MouseEvent):void
{
		_tw= BetweenAS3.tween(mc, { x:0 }, null,1,Sine.easeOut);
		_tw.play();
}
</pre>
				<p><a href="http://www.be-interactive.org/index.php?itemid=511">作者さんがそのあたり説明してくださってたので</a>、なるほど納得だったのですが、単純なボタンのロールオーバーを使い回したいときってありますよね？？その解決策がみつからず・・ボタンの数だけ変数を増やすという残念な対応に落ち着きました。数が少なかったのでインスタンス名で振り分けて、ひとつの関数にまとめましたがあんまり意味がない感じになってます。こういうときサラサラっとまとめられるようになりたいなぁ・・・</p>
				<pre class="brush: as3; title: ; notranslate">
function onMouseOverHandler(e:MouseEvent):void
{
	switch(e.target.name)
	{
		case &quot;instans_nameA&quot;:
			if (_tw_A != null)
			{
				_tw_A.stop();
			}
			_tw_A = BetweenAS3.tween(mc, { x:100 }, null,1,Sine.easeOut);
			_tw_A.play();
			break;
		case &quot;instans_nameB&quot;:
			if(_tw_B != null)
			{
				_tw_B.stop();
			}
			_tw_B = BetweenAS3.tween(mc, { x:200 }, null,1,Sine.easeOut);
			_tw_B.play();
			break;
	}
}

function onMouseOutHandler(e:MouseEvent):void
{
	switch(e.target.name)
	{
		case &quot;instans_nameA&quot;:
			if (_tw_A != null)
			{
				_tw_A.stop();
			}
			_tw_A = BetweenAS3.tween(mc, { x:0 }, null,1,Sine.easeOut);
			_tw_A.play();
			break;
		case &quot;instans_nameB&quot;:
			if(_tw_B != null)
			{
				_tw_B.stop();
			}
			_tw_B = BetweenAS3.tween(mc, { x:0 }, null,1,Sine.easeOut);
			_tw_B.play();
			break;
	}
}
</pre>
				<h2>それでも、噂通りいい感じですよ！先生！</h2>
				<p>ハマったとこから書いておいてなんですが、個人のBetweenAS3 の感想としては、すっきり！わかりやすい！いじりやすい！というところで、慣れれば細かい Tween の調整、とくに組み替えたりするときは、BetweenAS3 は柔軟で、用意されてるメソッドも覚えやすいです。私のようなガッツリ文系脳でも楽しく Tween 作れますね！引き続きいろいろ試してみようと思います。</p>
]]></content:encoded>
			<wfw:commentRss>http://mrhdms.iixx.jp/2010/01/31/begin-betweenas3-overwrite/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://mrhdms.iixx.jp/2010/01/31/begin-betweenas3-overwrite/" />
	</item>
		<item>
		<title>SyntaxhigHlighter Evolved って AS3 対応してるんですね。</title>
		<link>http://mrhdms.iixx.jp/2010/01/16/syntaxhighlighter-as3/</link>
		<comments>http://mrhdms.iixx.jp/2010/01/16/syntaxhighlighter-as3/#comments</comments>
		<pubDate>Sat, 16 Jan 2010 09:48:18 +0000</pubDate>
		<dc:creator>mrhdms</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[AS3]]></category>

		<guid isPermaLink="false">http://mrhdms.iixx.jp/?p=21</guid>
		<description><![CDATA[コードをブログに載せるときによく見かける、 うまい具合にスタイルの当たった表示を実現できるWPプラグイン、 SyntaxhigHlighter Evolved ってのがあります。（似たようなのもいっぱいあるみたい。） こ [...]]]></description>
			<content:encoded><![CDATA[				<p>コードをブログに載せるときによく見かける、</p>
				<p>うまい具合にスタイルの当たった表示を実現できるWPプラグイン、</p>
				<p><strong><span style="color: #339966;">SyntaxhigHlighter Evolved</span></strong> ってのがあります。（似たようなのもいっぱいあるみたい。）</p>
				<p>これを導入するにあたって下調べすると、結構でてくるのが AS3 への対応方法。</p>
				<p>デフォルトじゃ対応されてないですか・・そうですか・・ってことで調べまくってたんですが、</p>
				<p>いざプラグインをインストールしてみると、現状は AS3 もしっかり対応されてるみたいです。<span id="more-21"></span></p>
				<p><a href="http://alexgorbatchev.com/wiki/SyntaxHighlighter:Brushes">SyntaxHighlighter:Brushes</a></p>
				<p>こんな感じに。</p>
				<pre class="brush: as3; title: ; notranslate">
package {
    import flash.display.Sprite;
    public class DrawCircle extends Sprite {
        public function DrawCircle() {
            // 日本語も大丈夫
            for(var i:int = 0; i &lt; 100; i++){
            graphics.lineStyle(0.5,0x0000FF*(i*0x0000FF),1);
            graphics.drawCircle(200+i,50*(i/20),10+(i*3));
            }
        }
    }
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://mrhdms.iixx.jp/2010/01/16/syntaxhighlighter-as3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://mrhdms.iixx.jp/2010/01/16/syntaxhighlighter-as3/" />
	</item>
		<item>
		<title>関西アンカンファレンスにいってきました。</title>
		<link>http://mrhdms.iixx.jp/2009/12/21/kansaiun/</link>
		<comments>http://mrhdms.iixx.jp/2009/12/21/kansaiun/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 16:03:33 +0000</pubDate>
		<dc:creator>mrhdms</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[イベント]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[event]]></category>

		<guid isPermaLink="false">http://mrhdms.iixx.jp/?p=6</guid>
		<description><![CDATA[12/19 に行われた、関西アンカンファレンスへ行ってきました。 shin 1&#215;1 さんに背中を押していただいて、発表もさせていただきました！ 発表デビューです！ いやー、緊張しましたけど、準備期間も含めて、い [...]]]></description>
			<content:encoded><![CDATA[				<p>12/19 に行われた、<a href="http://www.1x1.jp/blog/2009/11/kansai_unconference_pre.html">関西アンカンファレンス</a>へ行ってきました。</p>
				<p>shin 1&#215;1 さんに背中を押していただいて、発表もさせていただきました！</p>
				<p>発表デビューです！</p>
				<p>いやー、緊張しましたけど、準備期間も含めて、いい経験になりました。</p>
				<p>ネタは、「インタラクティブな広告が気になる！サイネージとかARとか」ということで、</p>
				<p>現実拡張な広告＆作品数点の紹介⇒FlashでARのデモ　てな内容でさせてもらいました。<span id="more-6"></span></p>
				<h3>発表資料</h3>
				<p>デモは自前の部分がすくないですけど・・・</p>
				<p><a title="FLARToolKit" href="http://www.libspark.org/wiki/saqoosha/FLARToolKit">FLARToolKit</a> の<a title="Permanent Link to FLARToolKit スタートガイド" rel="bookmark" href="http://saqoosha.net/flartoolkit/start-up-guide/">FLARToolKit スタータキット</a> へ、</p>
				<p><a title="wonderfl" href="http://wonderfl.net/">wonderfl</a> に投稿されてた、<a title="clockmakerさんの[PV3D] Xmas Tree" href="http://wonderfl.net/code/b47941fd4e742212142d20c44f28743b80f2381b">clockmakerさんの[PV3D] Xmas Tree</a> を移したものを使わせてもらいました。</p>
				<p>（って、キラキラがいまいち再現できてないのが気になりますけど。誰か教えてください・・）</p>
				<p><a href="http://mrhdms.iixx.jp/wp/wp-content/uploads/2009/12/flartree.jpg"><img class="aligncenter size-medium wp-image-16" title="FLARtree" src="http://mrhdms.iixx.jp/wp/wp-content/uploads/2009/12/flartree-300x210.jpg" alt="デモのキャプチャ" width="300" height="210" /></a></p>
				<p><a title="FLARソース一式" href="http://mrhdms.iixx.jp/wp/wp-content/uploads/2009/12/TREE.zip">&gt;&gt;ソース一式はこちら</a></p>
				<p>スライドは、<a href="http://progression.jp/ja/">Progression</a> の拡張ライブラリ、<a href="http://www.libspark.org/wiki/uranodai/Slides">Slides</a> をつかってみましたー。</p>
				<p>時間なくてそっけない感じですが、Flashでつくれますし、凝ったものもできそう。</p>
				<p><a title="発表スライド" href="http://mrhdms.iixx.jp/wp/wp-content/uploads/2009/12/slides.swf">&gt;&gt;スライド</a></p>
				<h3>感想</h3>
				<p>エンジニアさん率が高いかなーと思ってたイベントですが、（実際は半分から６割くらい？）</p>
				<p>セッション自体もバリエーションに富んでて楽しめました。</p>
				<p>（まあ、技術的な話に紛れ込んだときは宇宙語と戦ってる感じでしたが・・）</p>
				<p>んで、最後の交流会や懇親会ではいろんな方にお話聞けてよかったです。</p>
				<p>今まで、懇親会みたいな集まりまで参加することなかったですが、出てみるもんだなーと。</p>
				<h3>関連リンク</h3>
				<p><a onmousedown="return rwt(this,'','','res','4','AFQjCNE9JJgap4BwaHZaFWaz5hTgQf1KKg','&amp;sig2=TWuR74pbFTyTMxtlyTWLPA','0CBoQFjAD')" href="http://d.hatena.ne.jp/iseebi/20091219/p1">関西アンカンファレンスセッション一覧 &#8211; backyard of 伊勢的新常識</a></p>
				<p><a title="Permanent Link: 関西アンカンファレンスを開催しました＆運営してわかったこと" rel="bookmark" href="http://www.1x1.jp/blog/2009/12/kansai_unconference_.html">関西アンカンファレンスを開催しました＆運営してわかったこと &#8211; Shin x blog </a></p>
				<p><a onmousedown="return rwt(this,'','','res','6','AFQjCNHKzl9_433BLnZivQ0qhEPmat3lCA','&amp;sig2=GMTOVDwR3kuE6CWb1aebdQ','0CCAQFjAF')" href="http://www.msng.info/archives/2009/12/kansai_unconference_finished.php">関西アンカンファレンスをやってみての感想まとめ &#8211; 頭ん中</a></p>
]]></content:encoded>
			<wfw:commentRss>http://mrhdms.iixx.jp/2009/12/21/kansaiun/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://mrhdms.iixx.jp/2009/12/21/kansaiun/" />
	</item>
	</channel>
</rss>

