-
Notifications
You must be signed in to change notification settings - Fork 0
Kwing.Vector
giginet edited this page Dec 22, 2011
·
6 revisions
汎用的な2Dベクトル演算を行うクラスです。
HTMLのheadにこれを書きましょう。
<script type="text/javascript" src="https://raw.github.com/giginet/kwing.coffee/master/lib/vector.min.js"></script>
わずかこれだけ!
var vector = new Vector(10, 0); // x=10, y=0のベクトルを生成
vector.rotate(30); // ベクトルを反時計回りに30度回転
vector.resize(100); // ベクトルの長さを100にする
vector.x; // ベクトルのxの値を取り出す
vector.y; // ベクトルのyの値を取り出す
xの値を取り出します
yの価を取り出します
ベクトルの値をx, yの値に書き換えます。 自分自身を返します。
vのベクトルを破壊的に加算します。 vは変更されません。 自分自身を返します。
vのベクトルを破壊的に減算します。 vは変更されません。 自分自身を返します。
スカラー倍します。 自分自身を返します。
各要素をnで割ります。 自分自身を返します。
vとの内積を求めて返します
方向の等しい単位ベクトル(長さが1のベクトル)にします。 ゼロベクトルに対して適応したときは何も起こりません。 自分自身を返します。
ベクトルの長さを返します
同じ要素を持つ新しいベクトルを生成して返します
ベクトルを反時計回りに回転します。角度はラジアンではなく、度数法で指定してください。 自分自身を返します。
ベクトルの角度を-180度から180度の範囲で返します。度数法で返ってきます。
ベクトルをlengthの長さにします 自分自身を返します。
ベクトルを反転します。180度回転させたときと同様です。 自分自身を返します。
ベクトルの長さがmax以上であれば、maxにトリムして自分自身を返します。 それ以下であれば、そのまま自分を返します。
ベクトルの長さがmin以下であれば、minにリサイズして自分自身を返します。 それ以上であれば、そのまま自分を返します。
githubで公開中。
CoffeeScriptで開発したため、ビルド環境が必要です。
https://github.com/giginet/kwing.coffee/blob/master/lib/vector.coffee
テスト書いてません><