タグ

ブックマーク / f-site.org (5)

  • [AS3] ふたつの配列を連結する

    投稿者:野中 文雄 | 投稿日:2011.01.12 | [AS 3][ActionScript][Tips][野中ゼミ] ふたつの配列を連結するには、Array.concat()メソッドを用います。ところが、Grant Skinner氏がtwitterで面白い手法を紹介していました。JavaScriptについて書かれたものの、ActionScript 3.0でも使えます。 それはひとつの配列(arr1)に対してFunction.apply()メソッドによりArray.push()メソッドを適用し、もうひとつの配列(arr2)は第2引数として渡してしまうというものです。すると、初めの配列に対してArray.push()メソッドが呼出され、ふたつ目の配列エレメントがその引数に渡されます。したがって、ふたつの配列が連結されるのです。 arr1.push.apply(arr1, arr2); S

    [AS3] ふたつの配列を連結する
    yasai_014
    yasai_014 2011/01/14
    へー
  • [AS3] XORマジック

    投稿者:野中 文雄 | 投稿日:2010.12.08 | [AS 3][ActionScript][Tips][野中ゼミ] スクリプト001■ビットごとの排他的論理和演算子^で変数の整数を入替える var a:int = 12345; var b:int = 67890; trace(a, b); // 出力: 12345 67890 a = a ^ b; b = a ^ b; a = a ^ b; trace(a, b); // 出力: 67890 12345 ビットごとの排他的論理和(bitwise exclusive or)演算子^で、ふたつの変数の整数を他の変数は使わずに入替えることができます。 演算子^はふたつの計算対象(オペランド)の整数を2進数で扱い、各桁のどちらか一方のみが1のとき1、そうでないときは0にします。「ビットごと」というのは、繰り上がりや繰り下がりがなく、それぞ

    [AS3] XORマジック
    yasai_014
    yasai_014 2010/12/09
    排他的論理和で変数の入れ替え
  • [AS3] Vector3Dの四元数表現

    投稿者:野中 文雄 | 投稿日:2010.04.02 | [AS 3][ActionScript][Tips][バグ][野中ゼミ] [ヘルプ]の[Vector3D]クラスで「Vector3D.wプロパティ」の項を読むと、つぎのようなくだりがあります。しかし、これは四元数についての説明ではなさそうです。 四元数表記では、3次元回転の計算の4番目のエレメントとして角度が使用されます。wプロパティを使用すると、Vector3Dオブジェクトの回転角度を定義できます。回転角度と座標(x, y, z)の組み合わせにより、表示オブジェクトの方向が決まります。 Matrix3D.decompose()またはMatrix3D.recompose()メソッドは、その引数として方向スタイルが指定できます。この引数に定数Orientation3D.AXIS_ANGLEを渡すと、Vector3Dインスタンスで受渡し

    [AS3] Vector3Dの四元数表現
  • 演算子asとis

    投稿者:野中 文雄 | 投稿日:2010.03.05 | [AS 3][ActionScript][Tips][野中ゼミ] 演算子asとisは、つぎのような同じシンタックスで使われます。 インスタンス 演算子 クラス [ヘルプ]でそれぞれの演算子を調べると、asはインスタンスがクラスの「メンバーであるかどうかを評価」し、isはインスタンスがクラスと「互換性があるかどうかを評価」すると説明されています。要するに何をするのか、これだけではわかりません。 しかし、それぞれの「結果」が異なりますので、使い途もまた違います。演算子asはデータの評価換えに用いられ、isは誰の子かを調べます。 as演算子 まず、as演算子は、指定したクラスでデータ型を評価し直します。そのクラスのインスタンスとして扱えれば評価を換え、それができなければnullとします(「as演算子」参照)。 var mySprite:S

    演算子asとis
  • F-site | [AS3] URLエンコード

    投稿者:野中 文雄 | 投稿日:2007.06.09 | [AS 3][ActionScript][Tips][野中ゼミ] ActionScript 3.0では、escape()関数の動作が2.0/1.0とは一部変わりました。たとえば、"F-siteセミナー"という文字列をescape()関数でURLエンコードすると、ActionScript 3.0と2.0/1.0の結果はそれぞれつぎのような文字列になります。 【ActionScript 3.0】 F-site%u30BB%u30DF%u30CA%u30FC 【ActionScript 2.0/1.0】 F%2Dsite%E3%82%BB%E3%83%9F%E3%83%8A%E3%83%BC 実は、JavaScriptのescape()関数も、Unicodeをサポートするブラウザ上では、ActionScript 3.0と同じ結果を返します

    F-site | [AS3] URLエンコード
  • 1