<?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>blog ViolentCoding &#187; Flash</title>
	<atom:link href="http://violentcoding.com/blog/tag/flash/feed" rel="self" type="application/rss+xml" />
	<link>http://violentcoding.com/blog</link>
	<description>for more violent coder</description>
	<lastBuildDate>Tue, 18 Aug 2009 06:11:32 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>[Flash]Flash CS4のヘルプをローカルでみる</title>
		<link>http://violentcoding.com/blog/2009/02/17/archives/515</link>
		<comments>http://violentcoding.com/blog/2009/02/17/archives/515#comments</comments>
		<pubDate>Mon, 16 Feb 2009 16:13:11 +0000</pubDate>
		<dc:creator>e_s_jp</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://violentcoding.com/blog/?p=515</guid>
		<description><![CDATA[Flash CS4からヘルプがオンラインになりましたね。
&#160;

で、ローカルのヘルプは無くなっちゃったんだと思ってましたけど、「サービス接続」でオフラインにすると、ローカルのヘルプを見るようになるんですね。

 [...]]]></description>
			<content:encoded><![CDATA[<p>Flash CS4からヘルプがオンラインになりましたね。</p>
<p>&nbsp;</p>
<p>
で、ローカルのヘルプは無くなっちゃったんだと思ってましたけど、「サービス接続」でオフラインにすると、ローカルのヘルプを見るようになるんですね。</p>
<blockquote><p>
<strong>jonnymac blog » Offline AS3 Language Reference, No AIR Application Necessary</strong><br />
<a href="http://www.jonnymac.com/blog/2008/12/09/offline-as3-language-reference-no-air-application-necessary/">http://www.jonnymac.com/blog/2008/12/09/offline-as3-language-reference-no-air-application-necessary/</a>
</p></blockquote>
<p>&nbsp;</p>
<p>
まずは、[ウィンドウ]メニューから、[エクステンション]で、[サービス接続]のパネルを表示。<br />
「サービス接続」パネルのメニューから[オフライン設定]を選択すると「オフラインにする？」ってでてくる。<br />
<img src="http://violentcoding.com/blog/wp-content/uploads/2009/02/cs4help02.png" alt="サービス接続メニュー" title="cs4help02" width="408" height="406" class="aligncenter size-full wp-image-523" />
</p>
<p>&nbsp;</p>
<p>
チェックを入れて、「OK」するとオフライン設定のできあがり。<br />
<img src="http://violentcoding.com/blog/wp-content/uploads/2009/02/cs4help03.png" alt="オフライン設定" title="cs4help03" width="244" height="406" class="aligncenter size-full wp-image-526" />
</p>
<p>&nbsp;</p>
<p>
結果こうなる。<br />
戻す時は「ここをクリック」すると、また「オフラインにする？」って聞かれるので、チェックをはずして「OK」にするとオンラインになる。<br />
<img src="http://violentcoding.com/blog/wp-content/uploads/2009/02/cs4help04.png" alt="オフライン状態" title="cs4help04" width="244" height="215" class="aligncenter size-full wp-image-530" />
</p>
<p>&nbsp;</p>
<p>
そのオフライン設定で[Flash ヘルプ]を選ぶと、やっぱりブラウザでヘルプが開かれるんですけど、ローカルのヘルプを参照していたのでした。
</p>
<p>&nbsp;</p>
<p>
ちなみに、オフラインにすると「KULER」パネルが使えなくなっちゃいます。
</p>
<p>
また、PhotoshopやIllustratorでも同じように[サービス接続]があって、そちらでオンライン・オフラインを切り替えると、他のアプリでも連動して、オンライン・オフラインが設定されるような仕組みになってました。
</p>
<p>&nbsp;</p>
<hr />
<p>そして、ヘルプファイルの場所は、上記のサイトにも書いてますが、</p>
<blockquote><p>
<strong>jonnymac blog » Offline Help and Language Reference Location in Flash CS4</strong><br />
<a href="http://www.jonnymac.com/blog/2008/11/04/offline-help-and-language-reference-location-in-flash-cs4/">http://www.jonnymac.com/blog/2008/11/04/offline-help-and-language-reference-location-in-flash-cs4/</a>
</p></blockquote>
<p>&nbsp;</p>
<p>日本語版に直すと、</p>
<h2>Adobe Flash CS4 Professional ユーザーガイド</h2>
<p>
<strong>Mac：</strong><br />
/Library/Application Support/Adobe/Help/ja_JP/Flash/10.0_UsingFlash/index.html
</p>
<p>
<strong>Windows：</strong><br />
C:¥Program Files¥Common Files¥Adobe¥Help¥ja_JP¥Flash¥10.0_UsingFlash¥index.html
</p>
<p>&nbsp;</p>
<h2>ActionScript 3.0 言語およびコンポーネントリファレンス</h2>
<p>
<strong>Mac：</strong><br />
/Library/Application Support/Adobe/Help/ja_JP/AS3LCR/Flash_10.0/index.html
</p>
<p>
<strong>Windows：</strong><br />
C:¥Program Files¥Common Files¥Adobe¥Help¥ja_JP¥AS3LCR¥Flash_10.0¥index.html
</p>
<p>&nbsp;</p>
<p>
この「Adobe/Help」フォルダにAdobeアプリのヘルプが色々入ってるみたいですね。
</p>
<p>&nbsp;</p>
<p>でもー、「Adobe Flash CS4 Professional の拡張機能」のヘルプ内容はフォルダだけあって、HTMLファイルがないの。</p>
<p>もっと言えば、JSFLの時にXMLパネルのUIを定義する「XML to UI」の項目が、Flash CS3のヘルプから見当たらないから、Flash 8のドキュメントも見なくちゃいけないの。</p>
<blockquote>
<p>
<strong>Adobe &#8211; Flash : Flash 8 ドキュメンテーション</strong><br />
<a href="http://www.adobe.com/support/documentation/jp/flash/documentation.html">http://www.adobe.com/support/documentation/jp/flash/documentation.html</a>
</p>
<p>
<strong>Flash ユーザーガイド &gt; XML to UI> XML to UI ダイアログボックス用のレイアウトタグ一覧 </strong><br />
<a href="http://livedocs.adobe.com/flash/8_jp/main/wwhelp/wwhimpl/js/html/wwhelp.htm?href=00001018.html">http://livedocs.adobe.com/flash/8_jp/main/wwhelp/wwhimpl/js/html/wwhelp.htm?href=00001018.html</a>
</p>
</blockquote>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://violentcoding.com/blog/2009/02/17/archives/515/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Flash]GetLibraryItemClass version 1.1.0</title>
		<link>http://violentcoding.com/blog/2009/01/09/archives/507</link>
		<comments>http://violentcoding.com/blog/2009/01/09/archives/507#comments</comments>
		<pubDate>Thu, 08 Jan 2009 16:53:13 +0000</pubDate>
		<dc:creator>e_s_jp</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[JSFL]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[SparkProject]]></category>

		<guid isPermaLink="false">http://violentcoding.com/blog/2009/01/09/archives/507</guid>
		<description><![CDATA[
「ライブラリの中でクラスが設定されているやつを調べる」JSFLコマンド「GetLibraryItemClass」を更新しました。


  [Flash]ライブラリの中でクラスが設定されているやつを調べる &#124; blog  [...]]]></description>
			<content:encoded><![CDATA[<p>
「ライブラリの中でクラスが設定されているやつを調べる」JSFLコマンド「GetLibraryItemClass」を更新しました。
</p>
<blockquote><p>
  <strong>[Flash]ライブラリの中でクラスが設定されているやつを調べる | blog ViolentCoding</strong><br />
  <a href="http://violentcoding.com/blog/2008/10/12/archives/355">http://violentcoding.com/blog/2008/10/12/archives/355</a>
</p></blockquote>
<p>&nbsp;</p>
<p>
ごめんなさい、フォントシンボルの出力が抜けてましたよ。<br />
で、フォントシンボルの出力を追加してアップデートしたのです。
</p>
<p>&nbsp;</p>
<p>
新しいバージョン Version 1.1.0をSpark projectにコミットしたのでダウンロードしてください。
</p>
<p>
<strong>GetLibraryItemClass &#8211; Spark project</strong><br />
<a href="http://www.libspark.org/wiki/e_s_jp/GetLibraryItemClass">http://www.libspark.org/wiki/e_s_jp/GetLibraryItemClass</a>
</p>
<p>
<img src="http://violentcoding.com/blog/wp-content/uploads/2009/01/glic110.png" alt="GetLibraryItemClass ver 1.1.0" title="GetLibraryItemClass_ver1_1_0" width="313" height="247" class="size-full wp-image-509" />
</p>
<p>&nbsp;</p>
<hr />
<h2>GetLibraryItemClassコマンド　ダウンロード</h2>
<p><strong>GetLibraryItemClass.mxp</strong><br />
<a href="http://www.libspark.org/svn/mxp/GetLibraryItemClass/trunk/mxp/GetLibraryItemClass.mxp">http://www.libspark.org/svn/mxp/GetLibraryItemClass/trunk/mxp/GetLibraryItemClass.mxp</a></p>
<p>Flash CS3 以降用です。<br />
※インストールにはExtension Managerが必要。</p>
<h2>利用方法</h2>
<p>「コマンド」メニュー ＞ GetLibraryItemClass</p>
<h2>ソースリポジトリ</h2>
<p><strong>GetLibraryItemClass ソース</strong><br />
<a href="http://www.libspark.org/svn/mxp/GetLibraryItemClass/trunk/src/">http://www.libspark.org/svn/mxp/GetLibraryItemClass/trunk/src/</a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://violentcoding.com/blog/2009/01/09/archives/507/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS]曲線の公式を描画するライブラリ</title>
		<link>http://violentcoding.com/blog/2009/01/03/archives/467</link>
		<comments>http://violentcoding.com/blog/2009/01/03/archives/467#comments</comments>
		<pubDate>Sat, 03 Jan 2009 11:55:36 +0000</pubDate>
		<dc:creator>e_s_jp</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[SparkProject]]></category>

		<guid isPermaLink="false">http://violentcoding.com/blog/2009/01/03/archives/467</guid>
		<description><![CDATA[Spark project 勉強会#6でお話した「曲線の公式を使って図形を描いたりするライブラリ」について。
&#160;
各曲線の数学的公式を１つ１つのクラスとして用意し、ごそごそ座標計算をするライブラリです。
Spa [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://wiki.libspark.org/wiki/SparkStudy/06">Spark project 勉強会#6</a>でお話した「曲線の公式を使って図形を描いたりするライブラリ」について。</p>
<p>&nbsp;</p>
<p>各曲線の数学的公式を１つ１つのクラスとして用意し、ごそごそ座標計算をするライブラリです。</p>
<p><strong>Spark project/CurveLib</strong><br />
<a href="http://www.libspark.org/wiki/e_s_jp/CurveLib">http://www.libspark.org/wiki/e_s_jp/CurveLib</a></p>
<p>&nbsp;</p>
<p>ICurveFormulaインタフェースを実装した曲線の公式定義クラスと、その公式定義をいろいろ計算するCurvePointクラスがいらっしゃいます。<br />
それだけでは、見た目に楽しくないので CurveGraphicsクラスというgraphics.lineTo()して曲線を描画するクラスもあったりします。</p>
<p>&nbsp;</p>
<p>CurveLibを使ってどんな曲線が描けて、また公式定義クラスの引数確認用にサンプルサイトを作ったので見てみてください。</p>
<blockquote>
<p><strong>CurveLib</strong><br />
  <a href="http://violentcoding.com/content/curvelib/" title="http://violentcoding.com/content/curvelib/">http://violentcoding.com/content/curvelib/</a></p>
<p><strong>上記のCurveLibサイトと同じものSWF置き場</strong>（ローカルFlashPlayerの方が描画が早いのでこちらをおすすめ）<br />
  <a href="http://www.libspark.org/svn/as3/CurveLib/trunk/doc/fp9/formulaSWF/">http://www.libspark.org/svn/as3/CurveLib/trunk/doc/fp9/formulaSWF/</a></p>
</blockquote>
<div style="text-align: center;">
  <img src="http://violentcoding.com/blog/wp-content/uploads/2009/01/curvelib01.png" width="480" height="311" alt="curvelib01.png" />
</div>
<p>&nbsp;</p>
<hr />
<p>それでは、CurveLib概要。</p>
<p><strong>CurvePointクラス</strong></p>
<ul>
<li>曲線の公式を使った計算</li>
<li>半径を1.0として計算</li>
</ul>
<p><strong>ICurveFormulaインタフェース</strong></p>
<ul>
<li>曲線公式の定義</li>
<li>半径を1.0として定義</li>
</ul>
<p>今用意している曲線は以下のようなものです。</p>
<ol>
<li>Botanic Curve</li>
<li>Rhodonea（バラ曲線）</li>
<li>Epitrochoid（外トロコイド）</li>
<li>Hypotrochoid（内トロコイド）</li>
<li>Starr Rose</li>
</ol>
<p>※半径を1.0で計算し、また始点から終点への周回数計算が楽なため公式定義の引数に分母と分子を設定するとか数学的公式とは違ってクセがあります。</p>
<p>&nbsp;</p>
<p>クラス図としては以下になります。一応公式クラスを追加しても、まぁ良い感じになるように学習してみました。</p>
<div style="text-align: center;">
  <a href="http://violentcoding.com/blog/wp-content/uploads/2009/01/curvelib.gif"><img src="http://violentcoding.com/blog/wp-content/uploads/2009/01/curvelib.gif" width="480" height="363" alt="curveLib.gif" style="border:1px #999999 dashed;" /></a>
</div>
<pre class="brush: as3;">
// 参考コード

// CurveGraphicsの抽象的クラス
var curve : CurveGraphicsBase;

// 公式の計算をするCurvePointクラスを用意
var curvePoint : CurvePoint = new CurvePoint( new BotanicCurveFormula( 5, 4, 1, 5 ) );

// 半径200でCurveGraphicsクラスを用意
curve = new CurveGraphics( 200, curvePoint );

// 計算系の設定
curve.stepSize = 1 ;
curve.startAngle = 0;
curve.isClockWise = !true;
curve.isLoop = !true;

// 配置座標（曲線の中心が0,0）
curve.x = 250;
curve.y = 250;
addChild( curve );

// 描画の線設定
curve.lineStyle( 0, 0x000000 );

// 描画の塗り設定
curve.beginFill( 0xFF0000, 0.25 );

// 曲線の描画
curve.lineCurve( true );
</pre>
<p>&nbsp;</p>
<hr />
<p>CurveLibの主要となるのはCurvePointクラス。</p>
<p>CurvePointクラスのメソッドとしては、</p>
<ul>
<li>指定角度でのXY座標を取得：getAnglePoint( angle )</li>
<li>曲線上の計算する点の数を取得：getPointCount()</li>
<li>タイマー計算：startCurvePoint( delay, isClose )</li>
<li>タイマー計算の制御：startTick()・stopTick()・resetTick()</li>
<li>タイマー計算時イベント：start・stop・tick・complete・loop イベント</li>
</ul>
<p>CurvePointクラスのプロパティとしては、</p>
<ul>
<li>formulaプロパティ：使用する公式（ICurveFormula）</li>
<li>何度ごとに計算するか：stepSizeプロパティ</li>
<li>開始角度の指定：startAngleプロパティ</li>
<li>時計周りに計算するかどうか：isClockWiseプロパティ</li>
<li>ループさせるか：isLoopプロパティ</li>
</ul>
<p>を用意しましたので、それらを駆使して曲線上の座標値でゴソゴソします。</p>
<p>またCurvePointクラスを使用して曲線をgraphics.lineTo()するCurveGraphicsクラスでも数種類の曲線描画ができたりします。</p>
<p>&nbsp;</p>
<hr />
<p><strong>CurveGraphicsクラス</strong></p>
<ul>
<li>CurvePointクラスと「曲線の半径」を指定する</li>
<li>graphics.lineTo()などする</li>
<li>for文で一気に描画するパターン</li>
<li>タイマーで描画するパターン</li>
<li>曲線の中心点が( x=0, y=0 )</li>
<li>graphics.endFill()のtrue/falseを指定して連続描画</li>
</ul>
<p>&nbsp;</p>
<p>CurveGraphicsクラスでの描画パターン（１）for文で一気に描くタイプ</p>
<ul>
<li>線・塗りで曲線を描画：lineCurve( isEndFill )</li>
<li>曲線上の点を円で描画：chipCurve( chipRadius, isChipFill )</li>
<li>曲線上の点Pと指定角度をずらした点Qを結んだ線を描画：lineAngleBetween( angleBetween )</li>
</ul>
<p><strong>サンプルは以下</strong></p>
<p><a href="http://www.libspark.org/svn/as3/CurveLib/trunk/samples/fp9/samples/">http://www.libspark.org/svn/as3/CurveLib/trunk/samples/fp9/samples/</a></p>
<p>のSample01.fla・src/Sample01.asが該当です。</p>
<p>&nbsp;</p>
<p>CurveGraphicsクラスでの描画パターン（２）タイマーでチクチク描くタイプ</p>
<ul>
<li>線・塗りで曲線を<strong>タイマー</strong>描画：tickLineCurve( delay, isEndFill )</li>
<li>曲線上の点を円で<strong>タイマー</strong>描画：tickChipCurve( delay, chipRadius, isChipFill )</li>
<li>曲線上の点Pと指定角度をずらした点Qを結んだ線を<strong>タイマー</strong>描画：tickLineAngleBetween( delay, angleBetween )</li>
</ul>
<p><strong>サンプルは以下</strong></p>
<p><a href="http://www.libspark.org/svn/as3/CurveLib/trunk/samples/fp9/samples/">http://www.libspark.org/svn/as3/CurveLib/trunk/samples/fp9/samples/</a></p>
<p>のSample02.fla・src/Sample02.asが該当です。</p>
<p>&nbsp;</p>
<p>また、塗りの設定で以下の違いがでます。</p>
<p>CurveGraphicsクラスでの描画　引数「isEndFill」== trueの場合</p>
<ul>
<li>線の描画の最後でgraphics.endFill()を実行</li>
<li>次の描画ではあらためてbeginFill()にて色を設定する必要がある。</li>
</ul>
<p>CurveGraphicsクラスでの描画　引数「isEndFill」== falseの場合</p>
<ul>
<li>線の描画の最後でもgraphics.endFill()をしない</li>
<li>endFill()、beginFill()をしないので、塗りが閉じられずにそのまま次の描画に続く。</li>
</ul>
<p><strong>サンプルは以下</strong></p>
<p><a href="http://www.libspark.org/svn/as3/CurveLib/trunk/samples/fp9/samples/">http://www.libspark.org/svn/as3/CurveLib/trunk/samples/fp9/samples/</a></p>
<p>のSample03.fla・src/Sample03.as、Sample04.fla・src/Smaple04.asが該当です。</p>
<p>&nbsp;</p>
<p>また、ASDocコメント記述の学習もしてみたので、その他については以下を参照してください。</p>
<p><strong>CurveLib ASDoc</strong><br />
<a href="http://www.libspark.org/svn/as3/CurveLib/trunk/doc/fp9/asdoc-output/">http://www.libspark.org/svn/as3/CurveLib/trunk/doc/fp9/asdoc-output/</a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://violentcoding.com/blog/2009/01/03/archives/467/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Flash]Spark project 勉強会 #6</title>
		<link>http://violentcoding.com/blog/2008/12/20/archives/434</link>
		<comments>http://violentcoding.com/blog/2008/12/20/archives/434#comments</comments>
		<pubDate>Sat, 20 Dec 2008 08:15:09 +0000</pubDate>
		<dc:creator>e_s_jp</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[SparkProject]]></category>

		<guid isPermaLink="false">http://violentcoding.com/blog/?p=434</guid>
		<description><![CDATA[
Spark projectの勉強会、Spark  project 勉強会 #6で話してきました。

&#160;

「曲線の公式を使って図形を描いたりするライブラリを作りました」というお話です。


発表した資料に一部 [...]]]></description>
			<content:encoded><![CDATA[<p>
<a href="http://www.libspark.org/">Spark project</a>の勉強会、<a href="http://wiki.libspark.org/wiki/SparkStudy/06">Spark  project 勉強会 #6</a>で話してきました。
</p>
<p>&nbsp;</p>
<p>
「曲線の公式を使って図形を描いたりするライブラリを作りました」というお話です。
</p>
<p>
発表した資料に一部誤記があったので、修正してアップしました。<br />
<a href="http://violentcoding.com/blog/download-manager.php?id=15"><strong>Spark project 勉強会 #6 「CurveLib」資料PDF</strong></a>
</p>
<p>&nbsp;</p>
<p>
発表で使用したサンプルは、コミット済みですので、そちらからダウンロードして試してみてください。
</p>
<p><strong>サンプル</strong><br />
<a href="http://www.libspark.org/svn/as3/CurveLib/trunk/samples/fp9/samples/">http://www.libspark.org/svn/as3/CurveLib/trunk/samples/fp9/samples/</a><br />
<a href="http://www.libspark.org/svn/as3/CurveLib/trunk/doc/fp9/formulaSWF/">http://www.libspark.org/svn/as3/CurveLib/trunk/doc/fp9/formulaSWF/</a>
</p>
<p>&nbsp;</p>
<p>
SparkのWikiの方はまだ書けていないのでこれから準備していきます。
</p>
<p>
<strong>Spark project/CurveLib</strong><br />
<a href="http://www.libspark.org/wiki/e_s_jp/CurveLib">http://www.libspark.org/wiki/e_s_jp/CurveLib/</a>
</p>
<p>&nbsp;</p>
<hr />
<p>
勉強会の方はというと。
</p>
<p><h3>まずSpark project近況。</h3>
</p>
<p>
nobu(soundkitchen)さん作の「HigeWheel」から「SWFWheel」の名称変更について。<br />
オープンソース性を出すための名前を変えたという理由がすばらしい。
</p>
<p>&nbsp;</p>
<p><h3>次にAdobeさんによるFlash CS4デモ。</h3>
</p>
<p>
個人的にはFlash CS4のツールバーが右側になったのは、マウス操作を少なくするUI設計から来ているということと、yossyさん補足の「コンパイル時の定数設定」で、Flash CS4からでも条件付きコンパイルができるようになった部分が勉強になった。
</p>
<p>
Flex 3のドキュメントの<a href="http://livedocs.adobe.com/flex/3_jp/html/help.html?content=compilers_21.html">「条件付きコンパイルの使用」</a>がFlash CS4上で設定できる。<br />
</p>
<pre>
trace( 'A' );

CONFIG::DEBUG {
    trace( 'debug' );
}

trace( 'B' );
</pre>
<p>で、DEBUG定数の「true/false」でtrace( &#8216;debug&#8217; )の出力が「あり/なし」となるというデモ。
</p>
<p>
また、「Flash Player in action」というFlash Player 10のページで、zk33さんの「Tenoran」がでているよ！という報告も。「Tenoran」についてはデベロッパーセンターに記事があります。</p>
<blockquote><p>
<strong>Adobe Flash Player: Flash Player in action</strong><br />
<a href="http://www.adobe.com/products/flashplayer/action/">http://www.adobe.com/products/flashplayer/action/</a></p>
<p><strong>Adobe &#8211; デベロッパーセンター : Flash Player 10で広がるFlashの音の世界</strong><br />
<a href="http://www.adobe.com/jp/devnet/flash/articles/flp10_sound.html">http://www.adobe.com/jp/devnet/flash/articles/flp10_sound.html</a>
</p></blockquote>
<p>&nbsp;</p>
<p><h3>Graphoon（グラフーン）についてfushanさん。</h3>
</p>
<p>
Graphoonはfushanさんが研究しているという教育・教員向けという要素も持つFlexの「グラフのコンポーネント」＆「サービス」。<a href="http://www004.upp.so-net.ne.jp/s_honma/curve/lissajous.htm">リサージュ曲線</a>を描いてた。<br />
これは自分の曲線の学習ために使えそう。
</p>
<p>
evalコマンドがAS3.0で使えないが、D.eval関数がライブラリで使えるようにというのもチェックしたい。
</p>
<p>&nbsp;</p>
<p><h3>daoki2さん（Spark projectを英訳してくれた方）のAIRアプリ紹介。</h3>
</p>
<p>
SQLite3の管理アプリ「Rococo」やFlex/AIRのローカライゼイション用のファイルを生成する「LocalMaker」など。ローカライズ対応の際には是非「LocalMaker」を使ってみたい。
</p>
<p>&nbsp;</p>
<p><h3>yossyさんのガベージコレクションについて。</h3>
</p>
<p>
超わかりやすい！。複雑な感じのするガベージコレクションについて、動きある資料とか、実際のコードとかで説明。<br />
参照の方向によるGC発動と、発動のタイミングは是非ともおさえておきたい。<br />
資料を待つべし！
</p>
<p>&nbsp;</p>
<p>
次回勉強会は、来月（2009年1月）は<a href="http://jp.max.adobe.com/">Adobe MAX Japan 2009</a>でSpark projectのセッションがあるので飛ばして、2009年2月に予定しているということです。
</p>
<hr />
<p>&nbsp;</p>
<p>懇親会にも参加して、普段自分が触れることのない、色々な話が聞けました。<br />
残念ながらお話できなかった人もいて、もっと自分の知らない部分のお話やFlash制作の現場の生の話を聞きたかったです。</p>
<p>&nbsp;</p>
<p>
さて、次はいよいよMAXです。ライトニングトークでしゃべります。Sparkします！</p>
<blockquote><p>
<strong>Adobe MAX Japan 2009 での Spark project セッションのご案内 « Blog &#8211; Spark project</strong><br />
<a href="http://libspark.wordpress.com/2008/11/21/adobe-max-japan-2009/">http://libspark.wordpress.com/2008/11/21/adobe-max-japan-2009/</a>
</p></blockquote>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://violentcoding.com/blog/2008/12/20/archives/434/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Flash]ライブラリの中でクラスが設定されているやつを調べる</title>
		<link>http://violentcoding.com/blog/2008/10/12/archives/355</link>
		<comments>http://violentcoding.com/blog/2008/10/12/archives/355#comments</comments>
		<pubDate>Sat, 11 Oct 2008 16:54:14 +0000</pubDate>
		<dc:creator>e_s_jp</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[JSFL]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[SparkProject]]></category>

		<guid isPermaLink="false">http://violentcoding.com/blog/?p=355</guid>
		<description><![CDATA[
他の人が作った.flaファイルを見たりしなきゃいけない場合・・・の第２弾。

&#160;

ASファイルを見てる場合、Flashのライブラリでクラス設定されたものって気づきづらかったりします。


var init_ [...]]]></description>
			<content:encoded><![CDATA[<p>
他の人が作った.flaファイルを見たりしなきゃいけない場合・・・の第２弾。
</p>
<p>&nbsp;</p>
<p>
ASファイルを見てる場合、Flashのライブラリでクラス設定されたものって気づきづらかったりします。
</p>
<p><pre>
var init_mc : MovieClip = new InitView();
var myMap : BitmapData = new EffectMap(0, 0);
</pre>
<p>上記みたいなコードがあった場合、InitView.as、EffectMap.asでクラス定義されてると思ってASファイルを探してみても、Flashのライブラリでクラス設定されていたら、そんなファイルは見つかりません。
</p>
<p>&nbsp;</p>
<p>
で、ライブラリの中でクラスが設定されているやつを調べるJSFL。
</p>
<p>&nbsp;</p>
<p>
2009/01/09追記<br />
fontの出力が抜けていたので追加し、Version 1.1.0に更新。
</p>
<p>&nbsp;</p>
<p>
<img src="http://violentcoding.com/blog/wp-content/uploads/2008/10/glic110.png" alt="GetLibraryItemClass" title="GetLibraryItemClass" width="313" height="247" class="aligncenter size-full wp-image-364" />
</p>
<p>
クラス設定されてるライブラリのみを対象に、クラスとか基本クラス（AS3）、識別子（AS2）などの一覧を出力パネルに書き出すコマンドです。
</p>
<p>&nbsp;</p>
<p>
<strong>GetLibraryItemClass &#8211; Spark project</strong><br />
<a href="http://www.libspark.org/wiki/e_s_jp/GetLibraryItemClass">http://www.libspark.org/wiki/e_s_jp/GetLibraryItemClass</a>
</p>
<hr />
<p>&nbsp;</p>
<p><h2>出力パネル例（ActionScript 3.0の場合）</h2>
<pre>
Get Library Item Class Command
mySample.fla
Oct. 11, 2008 23:57:12

ActionScript 3.0
Document Class:	MainClass
**************************************************

Library Item:	initMC
Class:		InitView
BaseClass:		flash.display.MovieClip
Item Type:		movie clip
--------------------------------------------------

Library Item:	nextBtn
Class:		NextButton
BaseClass:		flash.display.SimpleButton
Item Type:		button
--------------------------------------------------

Library Item:	baseMC
Class:		BaseView
BaseClass:		flash.display.MovieClip
Item Type:		movie clip
--------------------------------------------------

Library Item:	parts/ColorPicker
Class:		fl.controls.ColorPicker
BaseClass:		flash.display.Sprite
Item Type:		component
--------------------------------------------------

Library Item:	parts/CheckBox
Class:		fl.controls.CheckBox
BaseClass:		flash.display.MovieClip
Item Type:		component
--------------------------------------------------

Library Item:	parts/hit.mp3
Class:		SESound
BaseClass:		flash.media.Sound
Item Type:		sound
--------------------------------------------------

Library Item:	parts/map.png
Class:		EffectMap
BaseClass:		flash.display.BitmapData
Item Type:		bitmap
--------------------------------------------------

Library Item:	fonts/font_Arial_12
Class:		MainFont
BaseClass:		flash.text.Font
Item Type:		font
--------------------------------------------------
</pre>
</p>
<p>&nbsp;</p>
<p><h2>出力パネル例（ActionScript 2.0の場合）</h2>
<pre>
Get Library Item Class Command
mySample.fla
Oct. 11, 2008 23:57:12

ActionScript 2.0
**************************************************

Library Item:	initMC
Identifier:		initMC
Class:		InitView
Item Type:		movie clip
--------------------------------------------------

Library Item:	nextBtn
Identifier:		nextBtn
Class:
Item Type:		button
--------------------------------------------------
</pre>
<p>といった、具合を出力パネルに書き出す。
</p>
<p>&nbsp;</p>
<p><h2>Save the result in a file</h2>
<p>「Save the result in a file」は出力パネルの内容をファイルに保存するかどうか。<br />
チェックした場合は、ファイル選択ダイアログが開きます。
</p>
<hr />
<p>&nbsp;</p>
<h2>GetLibraryItemClassコマンド　ダウンロード</h2>
<p>
<strong>GetLibraryItemClass.mxp</strong><br />
<a href="http://www.libspark.org/svn/mxp/GetLibraryItemClass/trunk/mxp/GetLibraryItemClass.mxp ">http://www.libspark.org/svn/mxp/GetLibraryItemClass/trunk/mxp/GetLibraryItemClass.mxp </a>
</p>
<p>
Flash CS3 以降用です。<br />
※インストールにはExtension Managerが必要。
</p>
<p>&nbsp;</p>
<h2>利用方法</h2>
<p>
「コマンド」メニュー ＞ GetLibraryItemClass
</p>
<p>&nbsp;</p>
<h2>ソースリポジトリ</h2>
<p>
<strong>GetLibraryItemClass ソース</strong><br />
<a href="http://www.libspark.org/svn/mxp/GetLibraryItemClass/trunk/src/">http://www.libspark.org/svn/mxp/GetLibraryItemClass/trunk/src/</a>
</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://violentcoding.com/blog/2008/10/12/archives/355/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Flash]フレームに書いてあるASを出力するコマンド</title>
		<link>http://violentcoding.com/blog/2008/08/23/archives/279</link>
		<comments>http://violentcoding.com/blog/2008/08/23/archives/279#comments</comments>
		<pubDate>Fri, 22 Aug 2008 16:47:02 +0000</pubDate>
		<dc:creator>e_s_jp</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[JSFL]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[SparkProject]]></category>

		<guid isPermaLink="false">http://violentcoding.com/blog/?p=279</guid>
		<description><![CDATA[
ライブラリの中でASが書いてあるやつを調べるJSFLをTanablogさんで改良してくれたので、さらに勝手に改良して、「フレームに書いてあるASを調べる」コマンドに整理した。

Tanablog: &#8220;ライブ [...]]]></description>
			<content:encoded><![CDATA[<p>
<a href="http://violentcoding.com/blog/2008/08/05/archives/207">ライブラリの中でASが書いてあるやつを調べるJSFL</a>をTanablogさんで改良してくれたので、さらに勝手に改良して、「フレームに書いてあるASを調べる」コマンドに整理した。</p>
<blockquote><p>
<strong>Tanablog: &#8220;ライブラリの中でASが書いてあるやつを調べる&#8221; を改良した</strong><br />
<a href="http://bitmap.dyndns.org/blog/archives/001602.html">http://bitmap.dyndns.org/blog/archives/001602.html</a>
</p></blockquote>
<p>&nbsp;</p>
<p>
Tanablogさんが改良した、現在編集中のタイムラインにあるASも出力する機能に、メインタイムライン（シーン）のASを区別して書き出す機能をミックスし、オブション設定なども追加。</p>
<p><img src="http://violentcoding.com/blog/wp-content/uploads/2008/08/gfa01.png" alt="GetFrameActionScript" title="GetFrameActionScript" width="265" height="227" class="aligncenter size-full wp-image-300" />
</p>
<hr />
<p><h2>All items Mode</h2>
<p>メインタイムライン（シーン 1、シーン 2、・・・）と、ライブラリアイテムの全てをチェックして出力。</p>
<pre>
Get Frame ActionScript Command
Main.fla
Aug. 23, 2008 0:30:57

##################################################
	 Main.fla : シーン 1
	 Layer:[ レイヤー 2 ], Frame:[ 5 ]
##################################################

trace("loaded");

##################################################
	 Main.fla : シーン 2
	 Layer:[ レイヤー 1 ], Frame:[ 23 ]
##################################################

// シーン 2終了
this.stop();

##################################################
	 parts/シンボル 7
	 Layer:[ レイヤー 2 ], Frame:[ 1 ]
##################################################

stop();

function hoge() :void {
    trace("hoge");
}

##################################################
	 parts/シンボル 7
	 Layer:[ レイヤー 2 ], Frame:[ 10 ]
##################################################

gotoAndPlay(2);

##################################################
	 シンボル 6
	 Layer:[ レイヤー 2 ], Frame:[ 1 ]
##################################################

trace("init");
stop();

##################################################
</pre>
<p>&nbsp;</p>
<p><h2>Current timeline Mode</h2>
<p>現在編集中のタイムラインのみを対象として出力。</p>
<pre>
Get Frame ActionScript Command
Main.fla
Aug. 23, 2008 0:40:6

##################################################
	 Current timeline(シーン 2)
	 Layer:[ レイヤー 1 ], Frame:[ 23 ]
##################################################

// シーン 2終了
this.stop();

##################################################
</pre>
<p>とか、シンボル編集中の場合には、</p>
<pre>
##################################################
	 Current timeline(シンボル 7)
	 Layer:[ レイヤー 2 ], Frame:[ 1 ]
##################################################

stop();

function hoge() :void {
    trace("hoge");
}

##################################################
	 Current timeline(シンボル 7)
	 Layer:[ レイヤー 2 ], Frame:[ 10 ]
##################################################

gotoAndPlay(2);

##################################################
</pre>
<p>といった、具合を出力パネルに書き出す。
</p>
<p>&nbsp;</p>
<p><h2>Output ActionScript code</h2>
<p>「Output ActionScript code」のチェックはASコード内容出力のある/なし。
</p>
<p>&nbsp;</p>
<p><h2>Save the result in a file</h2>
<p>「Save the result in a file」は出力パネルの内容をファイルに保存するかどうか。チェックした場合は、ファイル選択ダイアログが開きます。<br />
<img src="http://violentcoding.com/blog/wp-content/uploads/2008/08/gfa02.png" alt="Choose output file" title="Choose output file" width="320" height="152" class="aligncenter size-full wp-image-305" />
</p>
<p>&nbsp;</p>
<p>この合作？を<a href="http://www.libspark.org/">Spark project</a>にコミットしたのでバシバシ改良してください。</p>
<p>
<strong>GetFrameActionScript &#8211; Spark project</strong><br />
<a href="http://www.libspark.org/wiki/e_s_jp/GetFrameActionScript">http://www.libspark.org/wiki/e_s_jp/GetFrameActionScript</a>
</p>
<hr />
<p>&nbsp;</p>
<h2>GetFrameActionScriptコマンド　ダウンロード</h2>
<p>
<strong>GetFrameActionScript.mxp</strong><br />
<a href="http://www.libspark.org/svn/mxp/GetFrameActionScript/trunk/mxp/GetFrameActionScript.mxp ">http://www.libspark.org/svn/mxp/GetFrameActionScript/trunk/mxp/GetFrameActionScript.mxp </a>
</p>
<p>
Flash 8 以降用です。<br />
※インストールにはExtension Managerが必要。
</p>
<p>&nbsp;</p>
<h2>利用方法</h2>
<p>
「コマンド」メニュー ＞ GetFrameActionScript
</p>
<p>&nbsp;</p>
<h2>ソースリポジトリ</h2>
<p>
<strong>GetFrameActionScript ソース</strong><br />
<a href="http://www.libspark.org/svn/mxp/GetFrameActionScript/trunk/src/">http://www.libspark.org/svn/mxp/GetFrameActionScript/trunk/src/</a>
</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://violentcoding.com/blog/2008/08/23/archives/279/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Flash]ライブラリの中でASが書いてあるやつを調べる（２）</title>
		<link>http://violentcoding.com/blog/2008/08/06/archives/244</link>
		<comments>http://violentcoding.com/blog/2008/08/06/archives/244#comments</comments>
		<pubDate>Tue, 05 Aug 2008 15:21:56 +0000</pubDate>
		<dc:creator>e_s_jp</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[JSFL]]></category>
		<category><![CDATA[source]]></category>

		<guid isPermaLink="false">http://violentcoding.com/blog/?p=244</guid>
		<description><![CDATA[
ライブラリの中でASが書いてあるシンボルをチェックするJSFLの修正。


[Flash]ライブラリの中でASが書いてあるやつを調べる
http://violentcoding.com/blog/2008/08/05/ [...]]]></description>
			<content:encoded><![CDATA[<p>
ライブラリの中でASが書いてあるシンボルをチェックするJSFLの修正。
</p>
<p>
<strong>[Flash]ライブラリの中でASが書いてあるやつを調べる</strong><br />
<a href="http://violentcoding.com/blog/2008/08/05/archives/207">http://violentcoding.com/blog/2008/08/05/archives/207</a>
</p>
<p>&nbsp;</p>
<p>
タイムライン上でASが書かれたフレームを取得するJSFLが思ってた内容では無くて、少し困ってました。
</p>
<p>&nbsp;</p>
<p>
<img src="http://violentcoding.com/blog/wp-content/uploads/2008/08/fla_tl01.png" alt="timeline 01" title="fla_timeline01" width="330" height="91" class="aligncenter size-full wp-image-245" /></p>
<p>こんな感じで普通に5フレーム目「trace(&#8221;frame 5&#8243;);」と10フレーム目「trace(&#8221;frame 10&#8243;);」にASを書いた場合、JSFLの frame.actionScript でフレームに記述されたActionScriptを取得しようとする。</p>
<pre class="brush: jscript;">
var targetLayer = fl.getDocumentDOM().getTimeline().layers[0];

// 5フレーム目
var asCode05 = targetLayer.frames[4].actionScript; // =&gt; trace(&quot;frame 5&quot;);
// 10フレーム目
var asCode10 = targetLayer.frames[9].actionScript; // =&gt; trace(&quot;frame 10&quot;);
</pre>
</p>
<p>
これはこれで良いのだけど、実は5フレーム目以降でも途中にキーフレームが無いと、その前のキーフレームに書かれた内容を actionScript プロパティとして持っている。</p>
<pre class="brush: jscript;">
var targetLayer = fl.getDocumentDOM().getTimeline().layers[0];

// 5フレーム目
var asCode05 = targetLayer.frames[4].actionScript; // =&gt; trace(&quot;frame 5&quot;);

// 6フレーム目
var asCode06 = targetLayer.frames[5].actionScript; // =&gt; trace(&quot;frame 5&quot;);
// 7フレーム目
var asCode07 = targetLayer.frames[6].actionScript; // =&gt; trace(&quot;frame 5&quot;);
// 8フレーム目
var asCode08 = targetLayer.frames[7].actionScript; // =&gt; trace(&quot;frame 5&quot;);
// 9フレーム目
var asCode09 = targetLayer.frames[8].actionScript; // =&gt; trace(&quot;frame 5&quot;);

// 10フレーム目
var asCode10 = targetLayer.frames[9].actionScript; // =&gt; trace(&quot;frame 10&quot;);
</pre>
<p>これだと、ASが書かれたフレームだけをしっかり区別できないのです。下みたいに6から9フレームも空白キーフレームになってれば、区別できるのですが、普通こんなことしませんし。<br />
<img src="http://violentcoding.com/blog/wp-content/uploads/2008/08/fla_tl02.png" alt="timeline 02" title="fla_tl02" width="330" height="91" class="aligncenter size-full wp-image-261" />
</p>
<p>&nbsp;</p>
<p>
なので、昨日はASが書いてある「キーフレーム」だけをうまく選別できなくて、適当かつ強引に「同じASが続く場合は無視！」とやっていたのだけど、当然、意図的に同じASコードが続くフレームの場合には出力できない状態でした。
</p>
<p>&nbsp;</p>
<p>
今日、そういえば、_level0.CUPPYさんのとこにキーフレームを行き来するJSFLがあったなと思い出して、それができるのなら、キーフレームが取得できるんじゃないかと試してみました。</p>
<blockquote><p><strong>キーフレーム間をワンタッチで行き来する｜_level0.CUPPY</strong><br />
<a href="http://level0.cuppy.co.jp/2007/08/post_11.php">http://level0.cuppy.co.jp/2007/08/post_11.php</a></p></blockquote>
<p>&nbsp;</p>
<p>
この中にでてくる frame.startFrame を使って、キーフレーム判定を試してみたらうまくASが書かれた「キーフレーム」だけを抽出できるようになりました。</p>
<p>
ありがとう、_level0.CUPPYさん。
</p>
<p>&nbsp;</p>
<p>
<del datetime="2008-08-22T16:59:31+00:00">ということで、整理したり、なんらかの拡張機能に持っていくのは当分先になりそうですが、とりあえず使いたいという人は申し訳ないですが、早速修正するはめになったJSFLをダウンロードし直してくださいね。</del>
</p>
<p><del datetime="2008-08-22T16:59:31+00:00"><a href="http://violentcoding.com/blog/download-manager.php?id=13">libItemASCheckJSFL_0_2_0.zip</a></del>
</p>
<p>&nbsp;</p>
<p>
追記：</p>
<li>2008/08/23 さらに改良してSpark projectにコミット</li>
<blockquote><p>
<strong>GetFrameActionScript &#8211; Spark project</strong><br />
<a href="http://www.libspark.org/wiki/e_s_jp/GetFrameActionScript">http://www.libspark.org/wiki/e_s_jp/GetFrameActionScript</a><br />
<br />
<strong>[Flash]フレームに書いてあるASを出力するコマンド | blog ViolentCoding</strong><br />
<a href="http://violentcoding.com/blog/2008/08/23/archives/279">http://violentcoding.com/blog/2008/08/23/archives/279</a>
</p></blockquote>
<li>2008/08/07 Tanabeeさん改良版</li>
<blockquote><p><strong>Tanablog: &#8220;ライブラリの中でASが書いてあるやつを調べる&#8221; を改良した</strong><br />
<a href="http://bitmap.dyndns.org/blog/archives/001602.html">http://bitmap.dyndns.org/blog/archives/001602.html</a></p></blockquote>
<p>ありがとう、Tanablogさん。
</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://violentcoding.com/blog/2008/08/06/archives/244/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Flash]ライブラリの中でASが書いてあるやつを調べる</title>
		<link>http://violentcoding.com/blog/2008/08/05/archives/207</link>
		<comments>http://violentcoding.com/blog/2008/08/05/archives/207#comments</comments>
		<pubDate>Mon, 04 Aug 2008 17:43:41 +0000</pubDate>
		<dc:creator>e_s_jp</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[JSFL]]></category>
		<category><![CDATA[source]]></category>

		<guid isPermaLink="false">http://violentcoding.com/blog/?p=207</guid>
		<description><![CDATA[
他の人が作った.flaファイルを見たりしなきゃいけない場合、一番げんなりするのがMCのフレームにごそごそASが書いてあるやつ。処理の流れを追う気が無くなっちゃいます。

それに加えてライブラリが整理されてないで、ただ入 [...]]]></description>
			<content:encoded><![CDATA[<p>
他の人が作った.flaファイルを見たりしなきゃいけない場合、一番げんなりするのがMCのフレームにごそごそASが書いてあるやつ。処理の流れを追う気が無くなっちゃいます。</p>
<p>
それに加えてライブラリが整理されてないで、ただ入ってる状態の.flaファイルなんてものは、そのままゴミ箱にいれたくなりますよね。
</p>
<p>
普段.flaファイルを触る機会が少ない場合はなおさらです。
</p>
<p>&nbsp;</p>
<p>
でもゴミ箱行きもかわいそうですし、どのMCにASが書いてあるかチェックできたら少しは楽になるかなっと思って、ざっとJSFL書いてみました。
</p>
<p>&nbsp;</p>
<p>
追記：</p>
<li>2008/08/23 さらに改良してSpark projectにコミット</li>
<blockquote><p>
<strong>GetFrameActionScript &#8211; Spark project</strong><br />
<a href="http://www.libspark.org/wiki/e_s_jp/GetFrameActionScript">http://www.libspark.org/wiki/e_s_jp/GetFrameActionScript</a><br />
<br />
<strong>[Flash]フレームに書いてあるASを出力するコマンド | blog ViolentCoding</strong><br />
<a href="http://violentcoding.com/blog/2008/08/23/archives/279">http://violentcoding.com/blog/2008/08/23/archives/279</a>
</p></blockquote>
<li>2008/08/07 Tanabeeさん改良版</li>
<blockquote><p><strong>Tanablog: &#8220;ライブラリの中でASが書いてあるやつを調べる&#8221; を改良した</strong><br />
<a href="http://bitmap.dyndns.org/blog/archives/001602.html">http://bitmap.dyndns.org/blog/archives/001602.html</a></p></blockquote>
<li>2008/08/05 Version 0.2.0へ更新</li>
<blockquote><p>ASが書いてあるキーフレームの取得方法の変更。</p></blockquote>
<hr />
<p>&nbsp;</p>
<p>
テスト用の.flaファイルでしか確認してないですけど、ライブラリアイテムを全チェックして、ASが書いてある「アイテム名」と「レイヤー名」、「フレーム番号」を以下のように出力パネルに書き出します。
</p>
<p><pre class="brush: as3;">
##### Library Item:[ シンボル 5 ], Layer:[ レイヤー 2 ], Frame:[ 1 ] #####

this.stop();

###################################

##### Library Item:[ シンボル 3 ], Layer:[ レイヤー 2 ], Frame:[ 1 ] #####

// アクションスクリプト
trace(&quot;init&quot;);

###################################

##### Library Item:[ シンボル 3 ], Layer:[ レイヤー 2 ], Frame:[ 10 ] #####

gotoAndPlay(1);
</pre>
<p>&nbsp;</p>
<p>
たぶん、たくさんASが書いてある場合はどかどか出力パネルにASがでちゃうので、JSFLの中のisCodeOutput を false にするとASのコード内容は出ないようになります。
</p>
<p>&nbsp;</p>
<p>
libItemASCheck.jsfl version 0.2.0</p>
<pre class="brush: jscript;">
/* JSFL
	libItemASCheck.jsfl

	Version 0.2.0
	author Eiji Saito
	since  2008-08-04
*/

fl.outputPanel.clear();
fl.trace(&quot;********** Library Item ActionScript Check **********&quot;);
fl.trace(&quot;&quot;);

var doc = fl.getDocumentDOM();
var isCodeOutput = true;

libItemASCheck(isCodeOutput);

function libItemASCheck( isShowAS ) {
	if (doc == null) {
		return;
	}

	var itemArray = doc.library.items;
	var itemLength = itemArray.length;

	for (var i=0; i &lt; itemLength; i++) {
		var libItem = itemArray[i];
		var type = libItem.itemType;

		if (type == &quot;movie clip&quot; || type == &quot;graphic&quot; || type == &quot;button&quot;) {
			var libTimeline = libItem.timeline;

			var layersArray = libTimeline.layers;
			var layersLength = layersArray.length;

			for (var j=0; j &lt; layersLength; j++) {

				var targetLayer = layersArray[j];
				var framesArray = targetLayer.frames;
				var frameLength = framesArray.length;

				for (var k=0; k &lt; frameLength; k++) {
					var targetFrame = framesArray[k];
					var asString = targetFrame.actionScript;

					if (asString) {
						if (k == targetFrame.startFrame) {

							var libName = libItem.name;
							var layerName = targetLayer.name;
							var frameNum = k + 1;

							fl.trace(&quot;########## &quot;
							 		+ &quot;Library Item:[ &quot;+ libName + &quot; ], &quot;
									+ &quot;Layer:[ &quot; + layerName + &quot; ], &quot;
									+ &quot;Frame:[ &quot; + frameNum + &quot; ] &quot;
									+ &quot;##########&quot; );

							if (isShowAS) {
								fl.trace(&quot;&quot;);
								fl.trace(asString);
								fl.trace(&quot;&quot;);
							}
							fl.trace(&quot;###################################&quot;);

							fl.trace(&quot;&quot;);
							fl.trace(&quot;&quot;);
							fl.trace(&quot;&quot;);
						}
					}
				}
			}
		}
	}
}
</pre>
<p>&nbsp;</p>
<p>
<del datetime="2008-08-22T16:57:43+00:00">整理したり、なんらかの拡張機能に持っていく予定ですが、当分先になりそうなので、とりあえず使いたいという人は以下からどうぞ。コマンドとして使ってください。</del>
</p>
<p><del datetime="2008-08-22T16:57:43+00:00">JSFLダウンロード</del></p>
<p><del datetime="2008-08-22T16:57:43+00:00"><a href="http://violentcoding.com/blog/download-manager.php?id=13">libItemASCheckJSFL_0_2_0.zip</a></del>
</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://violentcoding.com/blog/2008/08/05/archives/207/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Flash]TransformationPoint version 1.1.1</title>
		<link>http://violentcoding.com/blog/2008/08/01/archives/194</link>
		<comments>http://violentcoding.com/blog/2008/08/01/archives/194#comments</comments>
		<pubDate>Thu, 31 Jul 2008 15:55:57 +0000</pubDate>
		<dc:creator>e_s_jp</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[SparkProject]]></category>

		<guid isPermaLink="false">http://violentcoding.com/blog/?p=194</guid>
		<description><![CDATA[
Flash CS3 でオブジェクトの変形点をごにょごにょする拡張機能「TransformationPoint」を更新しました。


TransformationPoint &#8211; Spark project
h [...]]]></description>
			<content:encoded><![CDATA[<p>
<a href="http://violentcoding.com/blog/2008/05/21/archives/125">Flash CS3 でオブジェクトの変形点をごにょごにょする拡張機能</a>「TransformationPoint」を更新しました。
</p>
<p>
<strong>TransformationPoint &#8211; Spark project</strong><br />
<a href="http://www.libspark.org/wiki/e_s_jp/TransformationPoint">http://www.libspark.org/wiki/e_s_jp/TransformationPoint</a>
</p>
<p>&nbsp;</p>
<p>
回転と傾斜変形が適用されている場合での変形点の設定バグに対応。
</p>
<p>
完全にその部分のテストを忘れていて、回転／傾斜が適用されてる場合に変形点を移動すると、変形点がとんでもない場所に設定されるようになってました。</p>
<p>&nbsp;</p>
<p>
この更新でオブジェクトに回転が適用されている場合も変形点を設定できるようになりましたが、<strong>回転角度が-180,-135,-90,-45,0,45,90,135,180度の場合のみに限られます</strong>。
</p>
<p>
傾斜が適用されている場合（回転角度が「&#8212;」となっている時）や、上記以外の回転角度の場合には、変形点の設定対象から外れます。
</p>
<p>&nbsp;</p>
<p>角度限定の理由は、変形に関するオブジェクトの値がMatrixで管理されているようで、どうしても変換時の誤差がでてしまうためです。
</p>
<p>例えば、変形パネルで回転角度を「90度」としていても、JSFLでelement.rotationを取ると「89.99824523925781」となりますし、オブジェクトのXY座標だけを設定する場合でも、回転や傾斜が設定されているとそちらに影響がでてしまうような具合です。
</p>
<p>&nbsp;</p>
<p>
ダウンロードはSpark projectで。
</p>
<h3>ダウンロード version 1.1.1</h3>
<p>
<strong>TransformationPoint.mxp</strong><br />
<a href="http://www.libspark.org/svn/mxp/TransformationPoint/trunk/FlashCS3/mxp/TransformationPoint.mxp">http://www.libspark.org/svn/mxp/TransformationPoint/trunk/FlashCS3/mxp/TransformationPoint.mxp</a><br />
Flash CS3用です。<br />
※インストールにはExtension Managerが必要です。
</p>
<p>&nbsp;</p>
<h3>ソースリポジトリ</h3>
<p>
<strong>TransformationPoint ソース</strong><br />
<a href="http://www.libspark.org/svn/mxp/TransformationPoint/trunk/FlashCS3/src/">http://www.libspark.org/svn/mxp/TransformationPoint/trunk/FlashCS3/src/</a>
</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://violentcoding.com/blog/2008/08/01/archives/194/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>[Flash]流体っぽいのを作ろうと思った（２）</title>
		<link>http://violentcoding.com/blog/2008/07/29/archives/136</link>
		<comments>http://violentcoding.com/blog/2008/07/29/archives/136#comments</comments>
		<pubDate>Mon, 28 Jul 2008 17:59:28 +0000</pubDate>
		<dc:creator>e_s_jp</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[Fluid]]></category>
		<category><![CDATA[Processing]]></category>
		<category><![CDATA[source]]></category>

		<guid isPermaLink="false">http://violentcoding.com/blog/?p=136</guid>
		<description><![CDATA[
[Flash]流体っぽいのを作ろうと思ったの解説。


下のサンプルでどんな DisplacementMapFilter で流体っぽい動きになってるか試しみて、ソースを見た方がわかると思います。

&#160;
_ca [...]]]></description>
			<content:encoded><![CDATA[<p>
<a href="http://violentcoding.com/blog/2008/07/26/archives/135">[Flash]流体っぽいのを作ろうと思った</a>の解説。
</p>
<p>
下のサンプルでどんな DisplacementMapFilter で流体っぽい動きになってるか試しみて、ソースを見た方がわかると思います。
</p>
<p>&nbsp;</p>
<p><li><strong>_canvasBmpData</strong> : BitmapData <br />
描画用のBitmapData。Bitmap化し、BlurFilterをかけてる。
</li>
<pre class="brush: as3;">
_canvasBmpData = new BitmapData(MAP_WIDTH, MAP_HEIGHT, false, 0x000000);
var canvasBmp : Bitmap = new Bitmap(_canvasBmpData);
canvasBmp.filters = [new BlurFilter(4, 4, 1)];
</pre>
</p>
<p><li><strong>_mapBmpData</strong> : BitmapData <br />
描画用の _canvasBmpData に適用する DisplacementMapFilter (_displaceMapFilter) の mapBitmap。<br />
<strong>BlurFilterのかかった流体用マップ _fluidBmp</strong> が draw() される。(ので、結局 _fluidBmpと同じ見た目 )
</li>
<pre class="brush: as3;">
_displaceMapFilter = new DisplacementMapFilter();
_displaceMapFilter.mapBitmap = _mapBmpData;
</pre>
</p>
<p><li><strong>fluidMapBmpData </strong>: BitmapData<br />
流体用マップ(  _fluidBmp  )の元にする FluidMap クラスで計算した結果の BitmapData<br />
_fluidBmp 用の BitmapData となる。
</li>
</p>
<p>&nbsp;</p>
<p><div style="text-align: center;">
<embed width="620" height="650" menu="true" loop="false" play="false" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" src="http://violentcoding.com/blog/wp-content/uploads/flash/FluidSample_param.swf"></embed><hints id="hah_hints"></hints>
</div>
</p>
<p>&nbsp;</p>
<p>
ドラッグすると FluidMap クラスで計算した結果を _fluidBmp として、DisplacementMapFilter の mapBitmap である _mapBmpData に draw() する。</p>
<pre class="brush: as3;">
// FluidMap : update
fluidMapBmpData = _fluidMap.updateMap();
_fluidBmp.bitmapData = fluidMapBmpData;

// update _mapBmpData
_mapBmpData.draw(_fluidBmp, _fluidBmp.transform.matrix);
</pre>
</p>
<p>
DisplacementMapFilter の内容が変わったので _canvasBmpData に DisplacementMapFilter を繰り返し適用してやることで、描画が変化しつづける。（ことをEnterFrameでやってる。）</p>
<pre class="brush: as3;">
//updateDisplaceMapFilter(_canvasBmpData, _displaceMapFilter);で以下の処理
var sourceRect : Rectangle = _canvasBmpData.rect;
var destPoint : Point = new Point(sourceRect.left, sourceRect.top);
_canvasBmpData.applyFilter(_canvasBmpData, sourceRect, destPoint, _displaceMapFilter);
</pre>
</p>
<p>&nbsp;</p>
<p>
FluidMap では縦横サイズとグリッドのサイズを指定して、各グリッドのFluid計算用のデータ FluidMapDataを2次元配列に格納する。
</p>
<p>
例えば、300×300でグリッドのサイズを「10」としたら、30×30＝900の各グリッドに対して、Fluidの計算をしてるわけ。仮にグリッド無しでsetPixelしようとすると90000の処理になっっちゃう。
</p>
<p>
さらにその各グリッドの持つのXY方向のベクトル値を算出するために、隣接する６個のグリッドの値を使うのだけど、その取得にはまたその2次元配列を使うことになるわけで・・・。</p>
<p>
その計算をEnterFrameで行っているわけだから、処理も遅くなる。
</p>
<p>&nbsp;</p>
<p>
Fluidの計算自体は Glen Murphy氏のFluidコードのほぼそのまま。超省略な画像を置いておくので、これ見ながらソースを見た方が早いと思います。<br />
<img src="http://violentcoding.com/blog/wp-content/uploads/2008/07/fluidmap.gif" alt="" title="fluidmap" width="500" height="250" class="aligncenter size-full wp-image-177" />
</p>
<p>
必要なのはX方向とY方向の移動量（xVelとyVel）。それをDisplacementMapの色設定に使って、グリッドのサイズでマップ用のBitmapDataを作ってあげる。（色のFadeOutは強制的に色の値を変えちゃってるけど）
</p>
<p>
CalcPressure.as の「0.20」のところをGlen Murphy氏のFluidコードの通りに「0.25」にしてやると、波紋？な揺れが際立つよ。
</p>
<p>&nbsp;</p>
<p>ソースは前回と同じ。</p>
<p>ソース1：<a href="http://violentcoding.com/blog/download-manager.php?id=11">FluidSample.zip</a><br />
ソース2：<a href="http://violentcoding.com/blog/download-manager.php?id=12">FluidSample_param.zip</a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://violentcoding.com/blog/2008/07/29/archives/136/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

