Prototype.jsのEnumarableをAS2に移植中。 あ、あとObject.extendも ObjectUtil.mixin() みたいな感じで移植したんだが、これは使えるなぁ。

Read More…

Posted in actionscript2.0, javascript, programing at 1月 28th, 2007. No Comments.

先週の休みに作ったものをうpしました。

particles_screen.png

Particles ソースコードつきです。 Read More…

Posted in actionscript3.0, flash, programing, 日記 at 1月 27th, 2007. No Comments.

[JavaScript]Deferredチェーン、非同期処理の逐次実行 http://d.hatena.ne.jp/brazil/20061229/1167352281

昨日作ったやつ、これを参考にしてもっとビューチフルになるんじゃまいかと。

MochiKit.Async.Deferredは、「現時点ではまた利用できない値」を扱うためのクラスです。

よく把握してないんだけど、このサンプルだと Deferred.addCallback に追加したメソッドの戻り値をどんどんつなぎ渡している雰囲気だよね。この発想はなかった。 d.callback(1); で、最初に渡す引数を与えて、どんどんチェーンしていくのね。おもしろい。

どういうシチュエーションで使うのが効果的なのかまだ思いつかないけれども、mochkitおもしろそう。

なんといっても追加するメソッドの引数をそのままreturnっていうのがシンプルでいいなぁ。

昨日作ったやつは、非同期とかいいつつも別に非同期じゃなくてもイケるようになっているので、Asyncとかいうクラスの名前もThreadというクラスの名前も気に入ってなくて、何か良い名前ないかなぁと。

で、休日やろうと手をいれてみようと思ったけど、会社にソース忘れた。ぐすん。

なので、Processingライクな、というかいわゆるParticles系のスクリプトを書きたいと思った時にいつでも書けるように、メインクラスとIParticleインターフェイスを作った。インターフェイスを実装したシンプルなParticleクラスを作って、その都度継承してけばいいなと。

JavaScriptもかわいいけど、AS3もかわいい。 Array.forEachとかうれしい。

AS3で、よくわかんないのは、DisplayObjectに対して直接beginFillとかで描画しても、マウスイベントの対象にならない。しかたなく子供のSpriteとかをaddChildするんだけど、どうにかならないものか・・。

Posted in actionscript3.0, flash, javascript, programing at 1月 21st, 2007. No Comments.

http://www.seshop.com/event/dev/2007/

申し込みますた。

【14-B-5】JavaScriptの現在と未来 ~ 今JavaScriptに出来ること / 次世代JavaScriptの勢力図

【14-B-7】 出張Shibuyaイベント ~ Shibuya.pm presents “Shibuya.js x Shibuya.pl mashup night” ~

の2本。 会社から近いので便利だしね。 行く人がいたら行きましょう。

Posted in javascript, programing at 1月 19th, 2007. No Comments.

http://gigazine.net/index.php?/news/comments/20070111_canvas/ http://developer.mozilla.org/ja/docs/Canvas_tutorial

これはすごい。

またSVG?とか思ってみたけどHTMLじゃん? FireFox1.5移行であれば問題ないなら 結構使いどころはあるよなぁ。

Posted in javascript, programing, XHTML/CSS2 at 1月 12th, 2007. No Comments.

Processingで作った作品をAS3に移植しました。

CrossDrawerのイメージ プログラムのイメージ画像。

こちらもご覧ください。 FlashDevelop環境で、AS3を開発してみる。

Read More…

Posted in actionscript3.0, flash, programing at 1月 8th, 2007. No Comments.

さっそくFlashDevelop環境を試してみた。

Processingで単純なプログラムを作ってみたので、それを移植。
ランダムに色、位置、角度を変更しながら毎フレーム十字のオブジェクトをキャンバスに配置するだけのプログラム。
十字を描くプログラムなのでCrossDrawerという名前にしました。

CrossDrawerのイメージ

プログラムのイメージ画像。

もの自体は簡単なので、今回はFlashDevelop環境でどう作るのか?という感じです。

Read More…

Posted in actionscript3.0, flash, processing, programing at 1月 8th, 2007. 1 Comment.

FlashDevelopっていうIDEがすげー。

ここを見れば完璧 http://weekbuild.sakura.ne.jp/trac/wiki/as3/FlashDevelop

これまでFlashの開発ツールは ・Flashアプリ ・Flex2Builder ・SEPY ・Eclipse で、

AS2ならSEPY、AS3ならFlex2Builderを利用してたんだけど 両方ともFlashDevelopに移行したい意向です。 Read More…

ProcessingのサンプルコードをActionScript3で再現する実践の2回目です。

作成したサンプルファイル

今回のサンプルファイルはここからダウンロードできます。 objects.zip

  1. はじめに
  2. ActionScript3特有のスクリプト
    1. stage.stageWidth,stage.stageHeight
    2. mouseX,mouseY
    3. flash.events.Event.ENTER_FRAME
  3. ソースコード

はじめに

今回取り上げるのは「Objects」というサンプルです。 http://processing.org/learning/examples/objects.html

たくさんの棒がマウス座標によって、移動するという単純なスクリプトになっています。 X座標の変更、Y座標の変更、描画を処理するメソッドが用意された、

MRect

という、棒の固まりを表すクラスを作成し、メインクラスから毎フレーム呼び出しています。 MRectに渡す値を微妙に変化させることで、それぞれのオブジェクトに表情がついてなかなかかっこいいです。

肝となるのは

MRext.moveToX()

MRext.moveToY()

です。引数に目標座標と目標地点までの減速率を与えることにより、 MRectインスタンスの位置を変更させているのですが、このサンプルでは4つのMRextインスタンスに対して、ただマウスの座標を渡すのでなく、少々味付けした値を別々に渡しています。それによって、不規則な動きが再現できています。

ProcessingとActionScriptの大きな違いに「

draw()

」というメソッドがあり、

draw

メソッドが定義されていると、毎フレーム連続的に実行されるようです。実行されるたびに、カンバスの描画がクリアされるというのもActionScriptには無い機能です。

ProcessingからActionScriptに移植するにあたって、よりFlash的な最適化をすることも考えましたが(毎回再描画するのでなく、生成した描画オブジェクトを移動したりプロパティを変更したり)、普段とは違ったアルゴニズムを学ぶという目的もあるので、あえて最適化はしていません。前回同様、ルートに描画用のBitmapを配置し、それを毎回背景色でクリアし、描画しなおすという手法をとっています。 Read More…

Posted in actionscript3.0, flash, programing at 1月 6th, 2007. No Comments.

マニュアルはやっとこ120Pくらいまで読んだ。 ショックな変更が多くて泣きそう・・・。 Read More…

Posted in actionscript3.0, flash, programing, 日記 at 12月 6th, 2006. No Comments.