<?xml version="1.0" encoding="UTF-8"?><!-- generator="WordPress/2.6.2" -->
<rss version="0.92">
<channel>
	<title>blog ViolentCoding</title>
	<link>http://violentcoding.com/blog</link>
	<description>for more violent coder</description>
	<lastBuildDate>Tue, 14 Oct 2008 16:47:40 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>ja</language>
	
	<item>
		<title>[Flash]ライブラリの中でクラスが設定されているやつを調べる</title>
		<description>
他の人が作った.flaファイルを見たりしなきゃいけない場合・・・の第２弾。

&#160;

ASファイルを見てる場合、Flashのライブラリでクラス設定されたものって気づきづらかったりします。



var init_mc : MovieClip = new InitView();
var myMap : BitmapData = new EffectMap(0, 0);

上記みたいなコードがあった場合、InitView.as、EffectMap.asでクラス定義されてると思ってASファイルを探してみても、Flashのライブラリでクラス設定されていたら、そんなファイルは見つかりません。

&#160;

で、ライブラリの中でクラスが設定されているやつを調べるJSFL。





クラス設定されてるライブラリのみを対象に、クラスとか基本クラス（AS3）、識別子（AS2）などの一覧を出力パネルに書き出すコマンドです。

&#160;


GetLibraryItemClass - Spark project
http://www.libspark.org/wiki/e_s_jp/GetLibraryItemClass


&#160;


出力パネル例（ActionScript 3.0の場合）

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
--------------------------------------------------



&#160;


出力パネル例（ActionScript 2.0の場合）

Get Library Item Class Command
mySample.fla
Oct. 11, 2008 ...</description>
		<link>http://violentcoding.com/blog/2008/10/12/archives/355</link>
			</item>
	<item>
		<title>[Mac]iTunes 8のビジュアライザ</title>
		<description>
the barbarian group とか FIGHT404のRobert Hodgin 氏の Magnetosphere が iTunes 8の「iTunes ビジュアライザ」になったのですね。

magnetosphere : software : the barbarian group
http://www.barbariangroup.com/software/magnetosphere

Magnetosphereの画像はいくつか見ることができるんですが、もうビジュアライザはダウンロードできなくなってしまいました。


&#160;


ビジュアライザを表示したら「?」を入力してみるといいです。ヘルプスクリーンがでるので、いろいろ試してみるとさらに楽しい。






&#160;

ちなみに、こちらは Magnetosphere のヘルプスクリーン。





&#160;


iTunes 7のCoverFlowの人に続いて、Apple行きの作品ですね。Appleに買われるとか、もう凄いですよ。


CoverFlow
http://www.steelskies.com/coverflow/HomePage.html






&#160;
 </description>
		<link>http://violentcoding.com/blog/2008/09/12/archives/330</link>
			</item>
	<item>
		<title>[Flash]フレームに書いてあるASを出力するコマンド</title>
		<description>
ライブラリの中でASが書いてあるやつを調べるJSFLをTanablogさんで改良してくれたので、さらに勝手に改良して、「フレームに書いてあるASを調べる」コマンドに整理した。

Tanablog: "ライブラリの中でASが書いてあるやつを調べる" を改良した
http://bitmap.dyndns.org/blog/archives/001602.html



&#160;


Tanablogさんが改良した、現在編集中のタイムラインにあるASも出力する機能に、メインタイムライン（シーン）のASを区別して書き出す機能をミックスし、オブション設定なども追加。







All items Mode
メインタイムライン（シーン 1、シーン 2、・・・）と、ライブラリアイテムの全てをチェックして出力。

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() ...</description>
		<link>http://violentcoding.com/blog/2008/08/23/archives/279</link>
			</item>
	<item>
		<title>[Flash]ライブラリの中でASが書いてあるやつを調べる（２）</title>
		<description>
ライブラリの中でASが書いてあるシンボルをチェックするJSFLの修正。


[Flash]ライブラリの中でASが書いてあるやつを調べる
http://violentcoding.com/blog/2008/08/05/archives/207

&#160;

タイムライン上でASが書かれたフレームを取得するJSFLが思ってた内容では無くて、少し困ってました。

&#160;



こんな感じで普通に5フレーム目「trace("frame 5");」と10フレーム目「trace("frame 10");」にASを書いた場合、JSFLの frame.actionScript でフレームに記述されたActionScriptを取得しようとする。

[code language="javascript"]
var targetLayer = fl.getDocumentDOM().getTimeline().layers[0];

// 5フレーム目
var asCode05 = targetLayer.frames[4].actionScript; // => trace("frame 5");
// 10フレーム目
var asCode10 = targetLayer.frames[9].actionScript; // => trace("frame 10");
[/code]


これはこれで良いのだけど、実は5フレーム目以降でも途中にキーフレームが無いと、その前のキーフレームに書かれた内容を actionScript プロパティとして持っている。
[code language="javascript"]
var targetLayer = fl.getDocumentDOM().getTimeline().layers[0];

// 5フレーム目
var asCode05 = targetLayer.frames[4].actionScript; // => trace("frame 5");

// 6フレーム目
var asCode06 = targetLayer.frames[5].actionScript; // => trace("frame 5");
// 7フレーム目
var asCode07 = ...</description>
		<link>http://violentcoding.com/blog/2008/08/06/archives/244</link>
			</item>
	<item>
		<title>[Flash]ライブラリの中でASが書いてあるやつを調べる</title>
		<description>
他の人が作った.flaファイルを見たりしなきゃいけない場合、一番げんなりするのがMCのフレームにごそごそASが書いてあるやつ。処理の流れを追う気が無くなっちゃいます。

それに加えてライブラリが整理されてないで、ただ入ってる状態の.flaファイルなんてものは、そのままゴミ箱にいれたくなりますよね。


普段.flaファイルを触る機会が少ない場合はなおさらです。

&#160;


でもゴミ箱行きもかわいそうですし、どのMCにASが書いてあるかチェックできたら少しは楽になるかなっと思って、ざっとJSFL書いてみました。


&#160;

追記：
	2008/08/23 さらに改良してSpark projectにコミット

GetFrameActionScript - Spark project
http://www.libspark.org/wiki/e_s_jp/GetFrameActionScript

[Flash]フレームに書いてあるASを出力するコマンド &#124; blog ViolentCoding
http://violentcoding.com/blog/2008/08/23/archives/279


	2008/08/07 Tanabeeさん改良版
Tanablog: "ライブラリの中でASが書いてあるやつを調べる" を改良した
http://bitmap.dyndns.org/blog/archives/001602.html


	2008/08/05 Version 0.2.0へ更新
ASが書いてあるキーフレームの取得方法の変更。


&#160;


テスト用の.flaファイルでしか確認してないですけど、ライブラリアイテムを全チェックして、ASが書いてある「アイテム名」と「レイヤー名」、「フレーム番号」を以下のように出力パネルに書き出します。



[code language="actionscript"]
##### Library Item:[ シンボル 5 ], Layer:[ レイヤー 2 ], Frame:[ 1 ] #####

this.stop();

###################################



##### Library Item:[ シンボル 3 ], Layer:[ レイヤー 2 ], Frame:[ 1 ] #####

// アクションスクリプト
trace("init");

###################################



##### Library Item:[ シンボル 3 ], Layer:[ レイヤー 2 ...</description>
		<link>http://violentcoding.com/blog/2008/08/05/archives/207</link>
			</item>
	<item>
		<title>[Flash]TransformationPoint version 1.1.1</title>
		<description>
Flash CS3 でオブジェクトの変形点をごにょごにょする拡張機能「TransformationPoint」を更新しました。



TransformationPoint - Spark project
http://www.libspark.org/wiki/e_s_jp/TransformationPoint


&#160;


回転と傾斜変形が適用されている場合での変形点の設定バグに対応。


完全にその部分のテストを忘れていて、回転／傾斜が適用されてる場合に変形点を移動すると、変形点がとんでもない場所に設定されるようになってました。

&#160;


この更新でオブジェクトに回転が適用されている場合も変形点を設定できるようになりましたが、回転角度が-180,-135,-90,-45,0,45,90,135,180度の場合のみに限られます。


傾斜が適用されている場合（回転角度が「---」となっている時）や、上記以外の回転角度の場合には、変形点の設定対象から外れます。


&#160;

角度限定の理由は、変形に関するオブジェクトの値がMatrixで管理されているようで、どうしても変換時の誤差がでてしまうためです。


例えば、変形パネルで回転角度を「90度」としていても、JSFLでelement.rotationを取ると「89.99824523925781」となりますし、オブジェクトのXY座標だけを設定する場合でも、回転や傾斜が設定されているとそちらに影響がでてしまうような具合です。


&#160;


ダウンロードはSpark projectで。


ダウンロード version 1.1.1

TransformationPoint.mxp
http://www.libspark.org/svn/mxp/TransformationPoint/trunk/FlashCS3/mxp/TransformationPoint.mxp
Flash CS3用です。
※インストールにはExtension Managerが必要です。


&#160;

ソースリポジトリ

TransformationPoint ソース
http://www.libspark.org/svn/mxp/TransformationPoint/trunk/FlashCS3/src/

&#160; </description>
		<link>http://violentcoding.com/blog/2008/08/01/archives/194</link>
			</item>
	<item>
		<title>[Flash]流体っぽいのを作ろうと思った（２）</title>
		<description>
[Flash]流体っぽいのを作ろうと思ったの解説。


下のサンプルでどんな DisplacementMapFilter で流体っぽい動きになってるか試しみて、ソースを見た方がわかると思います。

&#160;

_canvasBmpData : BitmapData 
描画用のBitmapData。Bitmap化し、BlurFilterをかけてる。

[code language="actionscript"]
_canvasBmpData = new BitmapData(MAP_WIDTH, MAP_HEIGHT, false, 0x000000);
var canvasBmp : Bitmap = new Bitmap(_canvasBmpData);
canvasBmp.filters = [new BlurFilter(4, 4, 1)];
[/code]



_mapBmpData : BitmapData 
描画用の _canvasBmpData に適用する DisplacementMapFilter (_displaceMapFilter) の mapBitmap。
BlurFilterのかかった流体用マップ _fluidBmp が draw() される。(ので、結局 _fluidBmpと同じ見た目 )

[code language="actionscript"]
_displaceMapFilter = new DisplacementMapFilter();
_displaceMapFilter.mapBitmap = _mapBmpData;
[/code]



fluidMapBmpData : BitmapData
流体用マップ(  _fluidBmp  ...</description>
		<link>http://violentcoding.com/blog/2008/07/29/archives/136</link>
			</item>
	<item>
		<title>[Flash]流体っぽいのを作ろうと思った</title>
		<description>
流体っぽいのをProcessing.orgのLearingにあるGlen Murphy氏のFluidコードを参考に作ろうと思った。


&#160;


Fluid \ Learning \ Processing 1.0 (BETA)
http://processing.org/learning/topics/fluid.html


Glen Murphy氏のコードはbodytag.orgの「FLUID3」とか、Glen Murphy氏のページにもあるやつ。

Glen Murphy氏のページのほうでは「Fluid3」のリンク先が「Smoke2」と入れ替わっちゃたりしていますけど。


&#160;


このProcessingのコードをほぼそのままASでやっているサンプルはPapervison3Dに関わってるRalph Hauwert氏のところでダウンロードできて試せます。

若干コンパイルエラーがでますけど（voidがVoidだったりとか）、それを解消していけばすぐ動きました。


Fluid Dynamics : AS3 Source Code.
http://www.unitzeroone.com/blog/2005/10/25/fluid-dynamics-as3-source-code/


&#160;


最初は、正統に流体シミュレーションを調べてからなんてちょっと思ったけど、ナビエ-ストークス方程式を理解して・・・なんて、数学のミレニアム懸賞問題とか理解できるわけありません。

高卒と同時に数学なんて忘れちゃって、四則演算以外の数学記号を見るだけでも嫌なのに。


Fluid Simulation for Computer Animation
http://www.cs.ubc.ca/~rbridson/fluidsimulation/


&#160;

ということで、Glen Murphy氏のProcessingコードをベースにDisplacementMapFilterを使う方法でやってみたのがこれ。

&#160;
一度クリックしてからドラッグするとFluidっぽい動きします。そして今回も例によって負荷高めなのです。一度始めると止める事はしません。ソースを置いとくので、ダウンロードしてから試した方が無難です。
それと、Macの場合はFlashPlayer 10で見た方が良いはずです。FlashPlayer 9で作っていますが、FlashPlayer 10では描画速度が速くなってるし（Windows環境と比べてまともになった感じ）。





&#160;
内容の解説は[Flash]流体っぽいのを作ろうと思った（２）で。ソースは置いとく。
ソース1：FluidSample.zip
ソース2：FluidSample_param.zip
&#160; </description>
		<link>http://violentcoding.com/blog/2008/07/26/archives/135</link>
			</item>
	<item>
		<title>[word]踊るんだ。踊り続けるんだ。</title>
		<description>
踊るんだ。踊り続けるんだ。何故踊るかなんて考えちゃいけない。意味なんてことは考えちゃいけない。意味なんてもともとないんだ。

どれだけ馬鹿馬鹿しく思えても、そんなこと気にしちゃいけない。きちんとステップを踏んで踊り続けるんだよ。そして固まってしまったものを少しずつでもいいからほぐしていくんだよ。まだ手遅れになっていないものもあるはずだ。使えるものは全部使うんだよ。ベストを尽くすんだよ。怖がることは何もない。


それもとびっきり上手く踊るんだ。みんなが感心するくらいに。

だから踊るんだよ。音楽の続く限り



村上春樹　ダンス・ダンス・ダンス（上） </description>
		<link>http://violentcoding.com/blog/2008/07/26/archives/111</link>
			</item>
	<item>
		<title>[Flash]Flash CS3 変形基準点用の拡張機能を作った</title>
		<description>
Flash CS3 でオブジェクトの変形基準点をごにょごにょする拡張機能。「Apply」ボタンで選択中オブジェクトの変形基準点を一括で位置指定する。


オブジェクトの変形基準点を１個１個ダブルクリックしたり、シンボルの基準点を気にしたり、オブジェクトの端に吸着させて・・・の作業をあまり気にせずできるようになります。



&#160;

2008/5/23追記：
「変形基準点」のことをヘルプでみたら「変形点」って書いてあった。
そもそも拡張機能の名前が「TransformationPoint」なんだから「変形点」が正しいわ。
でも、自分は「変形の基準点」って認識。

&#160;

&#160;


「CENTER」ではオブジェクトの真ん中を基準に変形基準点の位置を設定します。
( 0, 0 )でど真ん中、( -5, 10 )ならば、ど真ん中から左に5ピクセル、下に10ピクセル移動した位置となります。




&#160;


「LEFT-TOP」はオブジェクトの左上が基準となり、「CENTER」と同じように変形基準点の位置を指定します。


&#160;

さらに「LEFT-TOP」時の「Ratio」では、オブジェクトのタテヨコに対する比率で変形基準点を指定します。
( 0, 0 )が左上、( 0.5, 0.5 )が真ん中、( 1, 1 )で右下という感じ。



&#160;


「Reset」 ボタンは変形基準点をダブルクリックした時の挙動。MCならばシンボルの基準点に変形基準点が合うやつ。



&#160;


そして、お年寄りにも優しくパネルの大きさに合わせて拡大する。



&#160;


本当は、「選択中の各オブジェクトに対して一括設定する」モードと、「それら全体の選択枠に対して設定する」モードの２種類を切り替えできるようにしたかったけど、JSFLで「fl.getDocumentDOM().setTransformationPoint()」を複数選択状態で呼び出すと、Flashが落ちてしまうのでできなかった。


&#160;

Spark project に入れようと思っているのだが、その準備ができるまではここで。
2008/5/23
Spark Projectにコミットしました。
TransformationPoint - Spark project
http://www.libspark.org/wiki/e_s_jp/TransformationPoint

&#160;
ダウンロード

2008/07/31 : Version 1.1.1に更新


回転と傾斜変形が適用されている場合での変形点の設定バグに対応。
回転角度が-180,-135,-90,-45,0,45,90,135,180度の場合のみ変形点を設定します。


&#160;


TransformationPoint.mxp 1.1.1
http://www.libspark.org/svn/mxp/TransformationPoint/trunk/FlashCS3/mxp/TransformationPoint.mxp
Flash CS3用です。
※インストールにはExtension Managerが必要です。


ソースリポジトリ

TransformationPoint 1.1.1 ソース
http://www.libspark.org/svn/mxp/TransformationPoint/trunk/FlashCS3/src/


利用方法

「ウィンドウ」メニュー ＞ その他のパネル ＞ TransformationPoint 


&#160;

一応作った時のも

TransformationPoint 1.0.0
tp_mxp_1_0_0.zip
Flash CS3用です。
※インストールにはExtension Managerが必要です。





TransformationPoint 1.0.0 ソースダウンロード
tp_src_1_0_0.zip


 </description>
		<link>http://violentcoding.com/blog/2008/05/21/archives/125</link>
			</item>
</channel>
</rss>
