タグ

ブックマーク / kkanda.hatenadiary.org (6)

  • プロパティへのアクセス速度の比較 - プログラミングとかそんなの

    id:nishiohirokazuさんの少し前のエントリー「PointとArrayで速度比較」の、 ActionScriptの配列はC的な配列じゃないからかも。逆にクラスのメンバ変数はすでに配列として確保されていそう。xとかも整数にマップされてそう。 という推測が正しいのかを調べてみました。 まずは私もプロパティへ定数を代入する式の実行速度を比較してみました。 以下は、評価対象の式の一覧になります。各式を10,000,000回ループで実行した時の実行時間を//の後ろに記載しておきます。 また、pがPoint型、aがArray型、oがObject型となります。 p.x = 1; //216ms (1) p["x"] =1; //1631ms (2) a[0] = 1; //567ms (3) a["0"] = 1; //2681ms (4) o.x = 1; //2028ms (5) o["

    プロパティへのアクセス速度の比較 - プログラミングとかそんなの
    nitoyon
    nitoyon 2008/05/12
    配列へののアクセスがメンバ変数より少し遅い理由を確認。
  • [flash][scheme][SICP] Flashで図形言語の描画ツールを作りました(SICP2章の話) - プログラミングとかそんなの

    このGW中、ずっと計算機プログラムの構造と解釈(通称SICP)を読みふけっておりました。 このはいわゆる計算機科学の入門書で、の中に出てくるプログラムはLISPの方言であるschemeで書かれており、 慣れないと少し取っ付きづらいです。 このの2章に「図形言語」という節では、schemeを使って図形描画を行ってみるという部分があります。 私は普段Macbookにgaucheというschemeの処理系をインストールしてプログラムを書いています。 この「図形言語」のプログラムをgaucheで書くにはOpen GL拡張であるgl-gaucheをインストールする必要があります。 id:higeponさんのこのエントリーを参考にしながらやってみたところ、 インストールはうまく行きました。しかし、起動するとX関係のエラーが出て動きませんでした。 問題を解くためだけに環境をあれこれいじるのも不毛

    nitoyon
    nitoyon 2008/05/08
    CSV から直線を引く Flash
  • GCWatcher:GCの起動とオブジェクトの回収状況を監視するための方法

    GCを強制的に起動する方法について追記しました(4/8) fladdictさんのAS3でガベージコレクションを見張る画期的方法メモにて、 弱参照のDictionaryのオブジェクトキーを利用して、対象のオブジェクトがガベッジコレクションされたかどうかを見張ることができるんじゃね?? という面白そうなお題があがっていたので実装、検証を行ってみました。 検証のために実装したクラスGCWatcherには、次の二つの機能があります。 GCが起動した場合にGARBAGE_COLLECTイベントを発行する 監視したオブジェクトを監視リストに追加し、GCに回収された場合にCHANGEイベントを発行する このクラスを使うと、fladdictさんがエントリー中で書いていた、 onGarbageCollection イベントを発行できるし、DictionaryのキーをダンプすればGCされそこねたオブジェクトの

    nitoyon
    nitoyon 2008/04/07
    AS3のGC話。
  • BitmapData.perlinNoise()のサンプル - プログラミングとかそんなの

    BitmapDataクラスのperlinNoise()メソッドの実行結果を確認するためのFlashを作成してみました。perlinNoise()メソッドは、ランダムな雲模様や縞模様を作成する際に使います。通常は、DisplacementMapFilterと組み合わせるなどして利用し、単体で利用することは少ないです。 BitmapData.perlinNoise()の動作確認 このサンプルでは、右側のコントロールで指定した値がPerlinNoise()に渡され左側のプレビュー領域に表示されます。 使い方1:雲模様を作る BaseX、BaseYの値を1以上に設定するとノイズは雲模様になります。 使い方2:縞模様を作る BaseXの値を0にし、BaseYを1以上に設定すると縦の縞模様になります。逆にBaseXを1以上にし、BaseYを0にすると横の縞模様となります。 サンプルファイルのダウンロー

    BitmapData.perlinNoise()のサンプル - プログラミングとかそんなの
    nitoyon
    nitoyon 2008/03/11
    perlinNoiseをスライダでいじるサンプル。
  • DisplacementMapFilterの動作を理解する - プログラミングとかそんなの

    DisplacementMapFilterの動作は理解しづらいので、パラメーターとエフェクトの関連を確認するためのツールを作ってみました。 DisplacementMapFilterとは何か? DisplacementMapFilter クラスは、指定された BitmapData オブジェクト (置き換えマップイメージと言います) のピクセル値を使用して、オブジェクトの置き換え (変位) を実行します。このフィルタを使用して、MovieClip、SimpleButton、TextField、Video オブジェクトなどの DisplayObject クラスから継承したオブジェクト、および BitmapData オブジェクトにワープ効果や斑点効果を適用できます。 ActionScript 3.0 コンポーネントリファレンスガイドの DisplacementMapFilterクラスの説明から抜

    DisplacementMapFilterの動作を理解する - プログラミングとかそんなの
    nitoyon
    nitoyon 2008/03/11
    DMFをスライダでいじるサンプル。
  • AIR完全解説が完全に解説されていなかった件 - プログラミングとかそんなの

    ISBN:9784756150325がらFlexSDKの使い方を学習していたところ、beta1の内容を元に記載されている箇所があり数時間嵌まった。。。 に記載されている通りに実行すると、次のようなエラーが出る。 This application cannot be run.(Error: This application requires a version of the Adobe Integrated Runtime (AIR) which is no longer supported. Please contact the application author for updated version.) つまり、バージョンが古くてサポートしてないということなので、アプリケーション記述ファイル(文中では、Test-app.xml)をAdobe Labs | Previews, pr

    AIR完全解説が完全に解説されていなかった件 - プログラミングとかそんなの
    nitoyon
    nitoyon 2007/10/21
    β2対応記事を書かねば。
  • 1