SWFの複製 – Flex

Loaderクラスを使って外部SWFをロードするサンプルはたくさんありますが、今回はLoaderとByteArrayを利用してStageにロード済みのSWFを複製します。 ここで肝になるのはLoaderInfoクラスです。 LoaderInfo クラスは、ロードされる SWF ファイルやイメージファイル (JPEG、GIF、PNG ファイルなど) に関する情報を提供します。LoaderInfo オブジェクトは、すべての表示オブジェクトで使用できます。提供される情報には、ロードの進行状況、ロードす…

二十四節気

カレンダーを作る際、閏(うるう)年の判定プログラムはよく話題に挙げられます。 年が100の倍数のときは400で割れる年、100の倍数でないときは4で割り切れる年ってやつですね。 今回はもう少しややこしい二十四節気(にじゅうしせっき)の判定プログラムです。 祝日の春分・秋分を含む二十四節気は、日付が固定されてるわけではなく計算式で求められます。 二十四節気 – Wikipediaによると、 「1太陽年を日数(平気法)あるいは太陽の黄道上の視位置(定気法)によって24等分し、その分割点を…

Gumowsky-Mira Map – Flex(AS3.0)

Gumowsky-Mira Map DEMO グモウスキー・ミラ写像をFlex(ActionScript3.0)で。 前回のエノン写像と同様、非線形写像というやつです。 エノン写像との違いは描画に使う式が少し違うだけで、今回は以下の基本式で描画しています。 F(x) = ax + 2(1-a)x2/(1+x)2 描画部分のASコードは以下に示します。これも単純な計算の繰り返しになります。

エノン写像と比べると左右対称的な絵になって…

メモリ管理 – Flex

FlashでもFlexでもメモリリークには気をつけないといけません。 Flex Builderなら強力なプロファイラがあるからいいけど、 FlashDevelopとかでFlexアプリを作る場合の、メモリ使用量の監視と強制GCを行うコード。

System.totalMemoryはFlashPlayerのメモリ使用量、 System.gc()でガベージコレクションプロセスを強制します。(デバッグ版FlashPlayerのみ) Flas…

Henon Map – Flex(AS3.0)

Henon Map DEMO Henon MapをFlex(ActionScript3.0)で描いてみました。 2,3年前にJava Appletで作ったやつをFlexにコンバート。 アプレットとか懐かしい。。時代のうつろいをしみじみと感じます。 ・エノン写像 Hénon はフランス人の天文学者なので、最初の”H” は発音せず「エノン」と発音します。 二次元の非線形写像ってやつですね。 理系の学部だと、1,2年生の時に位相なんちゃらっていう講義がきっとあったと思います。 …

Simple Level of Detail – pv3d

Papervision3DでLevel of Detail(LOD)のテスト。 LODとは視点からの距離に応じて描画する3Dオブジェクトの頂点数(ポリゴン数)を増減させるテクニックのこと。 —-> Simple Level of Detail Demo <—- カーソルキーの上下で操作してみてください。 ドキュメントクラスのソースコードも上げておきます。 pv3d 2.0 GreatWhiteには、 org.papervision3d.objects.spec…

画像処理:フィルタ -Flex(ActionScript3.0)

ActionScriptで画像処理。 遅ればせながら僕もやってみました。 —-> Filter Collection <—- ぼかしに関してはMotion BlurとGaussianの二種類で、組み込みのBlurFilterは未使用。 Gaussianについては、ガウス関数からカーネルの各値を計算しています。 ちなみに、BlurFilterでquality プロパティを 3 に設定するとガウシアンフィルタに近似したものになるらしいです。 でもシグマの値とかはど…

Apollonian Gasket – Flex(ActionScript3.0)

Apollonian DEMO しつこくFlex(ActionScript3.0)でフラクタルアート。 今回はApollonian gasketを描いてみます。 円をくっつけて出来た隙間に円を描いて出来た隙間に円を・・・と繰り返します。 フラクタルそろそろ飽きてきました。 そろそろまたPapervision3Dで遊んでみるか、それとも別のライブラリ探して遊んでみるか。。