fl.* Package.swc
Flash CS3は持ってないけど、Flexでもfl.motionなどのflパッケージを使いたい時がたまにあります。 以下のサイトでfl.swcが配布されています。 Downloads | EVOLVE 以前、別のサイトでもswcで配布されてたんですけど、そのサイトが閉鎖されてて困っていました; Flexで使うには、flex_sdk/frameworks/libsにfl.swcを置くだけでOK。 どうやらちゃんと使えるようです。
Web関連技術の話など
Flash CS3は持ってないけど、Flexでもfl.motionなどのflパッケージを使いたい時がたまにあります。 以下のサイトでfl.swcが配布されています。 Downloads | EVOLVE 以前、別のサイトでもswcで配布されてたんですけど、そのサイトが閉鎖されてて困っていました; Flexで使うには、flex_sdk/frameworks/libsにfl.swcを置くだけでOK。 どうやらちゃんと使えるようです。
回線がパンクしててダウンロードできなかったので少し間を置いてたんですが、 おととい見に行ったらまだ重かったけどなんとか落とすことができましたv E-MU Announces FREE Proteus VX download 音色多い。すごい。こんなのがフリーとかすごい。 ただ、やっぱり結構マシンパワー使います。。 Core2のCPUとメモリ2Gはあった方がいいです。たぶん。 Japaneaseフォルダに英語のマニュアル入ってるって明らかにミスw っていうか日本語のマニュアルどこ探しても入ってない…
ActionScriptで配列とかディープコピーするのはどんな方法が一般的なんだろうと思って調べてました。 今回は、僕のようなAS初級者向けの内容です。 以下のエントリーでByteArrayを使ってオブジェクトをディープコピーする例がありました。 ActionScriptでディープコピー おぉ、けっこう簡単。後追いですが僕も検証してみました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
var list:Array = [0,1,2,3]; var ba:ByteArray = new ByteArray(); ba.writeObject(list); ba.position = 0; var copy:Array = ba.readObject(); trace(copy); copy[2] = 4; trace(copy); trace(list); <strong>//出力結果</strong> 0,1,2,3 0,1,4,3 0,1,2,3 |
うん、できてる。 次は100万個の要素をfor文でガリガリコピーしたものと速度比較。 […
Gumowsky-Mira Map DEMO グモウスキー・ミラ写像をFlex(ActionScript3.0)で。 前回のエノン写像と同様、非線形写像というやつです。 エノン写像との違いは描画に使う式が少し違うだけで、今回は以下の基本式で描画しています。 F(x) = ax + 2(1-a)x2/(1+x)2 描画部分のASコードは以下に示します。これも単純な計算の繰り返しになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
//各変数の宣言とかは適宜; //SIZEの値は500 (500×500pxの範囲で描画) private function drawGumowskyMira(e:Event):void { // ------------------ Gumowsky-Mira Mapping------------------- bmp.lock(); for (var j:int = 0; j <= 80; j++) { _x = 40.0 * (Math.random() - 0.5); //初期値を乱数で与える _y = 40.0 * (Math.random() - 0.5); k = Math.floor(256 * (_x * _x + _y * _y)); //色決め fx=a*x+aa*x*x/(1+x*x); //写像の繰り返し for (var i:int = 0; i < 1000; i++) { x1 = _y+fx; xx1 = x1*x1; fx = a*x1+aa*xx1/(1+xx1); _y = -_x+fx; _x = x1; if (Math.abs(_x) < 40.0 && Math.abs(_y) < 40.0) { pt.x = Math.floor(SIZE / 80 * _x); //ptはPoint型 pt.y = Math.floor(SIZE / 80 * _y); bmp.setPixel(pt.x + SIZE/2, pt.y + SIZE/2, changeColor(k)); } } } bmp.unlock(); } private function changeColor(n:int):uint { var r:uint = (n & 0x2f) << 2; var g:uint = (n & 0x1f) << 3 var b:uint = (n & 0xf) << 4; return r << 16 | g << 8 | b; } |
エノン写像と比べると左右対称的な絵になって…
夏休みはどの大学でもオープンキャンパスが催されていると思います。 もちろんウチの大学も8月に開きます。 所属研究室の今年のメインテーマは画像処理とのこと。 僕も研究紹介を含めて、簡単なデモアプリを作成中です… 画像処理ではこういう事ができますっていうのを高校生に説明しつつデモを見せることになるんですが、 カメラ映像にモザイクかけたり、背景と合成したりなど、パッと見てわかりやすいものにしようかと。 数式だらけのパネルを展示してもきっと面白くないでしょうし。 最初はActionScrip…