0

Flash – XPath4AS2でXPathテスター

XPath4AS2を使うとFlashでもXPathでXMLをパースできる。trick7.com blog: xfactorstudioのXPath4AS2の使い方を参考にして、XPathテスターを作ってみた。

これを改造して10行ぐらい足すと、FlickrAPIから写真を読むフォトビューアーが作れる。

Loadボタン押すとXMLを読み込む。XPath入力してSelectボタンを押すと結果が表示される。



SourceCode(Flash8), Archive

(XPath4AS2にクラスパスが通ってないとコンパイルできません)

XPathを「//」で全部表示、「rss/channel/item/title/text()」で各記事のタイトルだけ表示、「rss/channel/item[1]/description/text()」で1つ目の記事の本文を表示する。

[数字]で配列風にアクセスできるけど、インデックスが0からではなく1から始まるのが注意。

C#のXPathとは違ってルートに/を入れない。C#だと「/rss/channel/item/title」で各記事のタイトルになる。

■XPathの例

trick7さんのfoodData.xmlのサンプルからまとめた

■XMLのサンプル

いくつか用意してみた。

FlickrAPI形式

trick7さんのfoodData.xmlのサンプル

s.h.logのRSS

Read more

1

テクササイズ課題4:お面 – Flashでカメラ画像処理

技術のエクササイズ、テクササイズの第4回課題として、「お面」を作った。眠い。

テクササイズ第4回 奥出研的WEBCAM入門

テクササイズまとめblog

webcamを接続して、顔に目立つマーカー(赤とか青)を付けて、そのマーカーをクリックしてください。

SourceCode(Flash8)

動いているところのビデオ。

Read more

0

授業でMayaいじってる

今日はウェアラブルメディアストラテジーの課題でMayaを使った。

ただしmelという言語で描く。

spine_polyOp.mel

polyCubeをたくさん出して、回転させ、polyBoolOpで集合演算して一つの立体にした。

globalprocdraw(int$n){

$sw=0;

$name=””;

$nameLast=””;

for($i=0;$i< $n;$i++){

$name=”cube_”+$i;//名前付ける

$nameTmp=”tmp_”+$i;

polyCube-name$name-w1-d1-h10;

print$name;

move($i*0.5)00;

rotate($i*30)($i*30)0;//回転

if($sw>0){

polyBoolOp-op1-name$nameTmp$nameLast$name;//新しい名前を付けて和集合

print($i+”boolOp”);

$nameLast=$nameTmp;

}

else{

$nameLast=$name;

$sw=1;

}

}

}

select-all;delete;

draw(50);

polyBoolOpは(当然ながら)一度に2つのモデルしか扱えないので、全部合体させようとすると順番に処理する事になる。その時、順番に新しく作られていくモデルに名前を与えておいてやらないといかん。

Read more

0

Flash – FuseKitの_bezier_オプションで放物線移動

引き続きFuseKit

ZigoEngine.doTween()の2番目の引数 propsに_bezier_という値を使うと、放物線移動ができる。



(fla, code archive)

Read more

0

Flash – FuseKit v2.0

FuseKitというFlashのTweenライブラリを試してみた。

なので、今回公開している.flaファイルはFuseKitをインストールしてパスを通さないと正しくコンパイルできません。

以前 Flash – Lineを引いて、MovieClipをTraceさせるクラス というエントリで自作のMCのアニメーション用のクラスを作ったけど、AS2からアニメーションはTweenというクラスで制御するのが普通らしい。

(俺の作った奴だと、大量のMovieClipを加減速させながら表示するのには向いてるけど、ちょっと仕様が汚い)



(fla, code archive)

■なぜFuseKitが良いのか?

原始的な(モーショントゥイーンを使わない)ActionScriptによるアニメーション制御では、onEnterFrame()の中で毎ループ毎にx, y座標を変化させるという、積分的な方法を使っていた。

それに対して、Tween、Transition、Easingなどのクラスでは、「ここからココまでn秒かけて動け」「減速しながら止まれ」などの指定をする。とてもコードが直感的になる。

Read more