ベクトル2
2次元ベクトルを表すインターフェイス。 2次元ベクトルは(x, y)座標で表され、平面上の点、方向ベクトル、その他3次元のデータを表すことができる。 Vec2オブジェクトは、ecs.math.vec2 Vec2Factory、または他のVec2オブジェクトに対する操作によって作成されます。
ソース
Vec2Sourceインターフェイスは、xとyのプロパティを持つオブジェクトを表す。 さらに、Vec2SourceはVec2アルゴリズムの引数として使うことができる。つまり、 {x: number, y: number} プロパティを持つオブジェクトなら何でも使えるということだ。
プロパティ一覧
Vec2Sourceは以下の列挙可能なプロパティを持つ:
readonly x: number`` ベクトルのx成分にアクセスする。
readonly y: number`` ベクトルのy成分にアクセスする。
工場
より
Vec2、またはx,yのプロパティを持つ他のオブジェクトからVec2を作成する。
ecs.math.vec2.from({x, y}: {x: number, y: number}) // -> vec2
ひとつ
すべての要素が1に設定されたvec2を作成する。 これは ``vec2.from({x: 1, y: 1})``` と等価である。
ecs.math.vec2.one() // -> vec2
scale
すべての要素がスケール値 s に設定された vec2 を作成する。 これは ``vec2.from({x: s, y: s})``` と等価である。
ecs.math.vec2.scale(s: number) // -> vec2
xy
x, y の値から Vec2 を作成する。 これは ``vec2.from({x, y})``` と等価である。
ecs.math.vec2.xy(x: 数, y: 数) // -> vec2
ゼロ
すべての要素がゼロに設定されたvec2を作成する。 これは ``vec2.from({x: 0, y: 0})``` と等価である。
ecs.math.vec2.zero() // -> vec2
不変
以下のメソッドは、Vec2の現在値に基づいて計算を実行するが、その内容は変更しない。 Vec2型を返すメソッドは新しいオブジェクトを返す。 イミュータブルAPIは一般的に、ミュータブルAPIよりも安全で、可読性が高く、エラーが起こりにくいが、フレームごとに何千ものオブジェクトが割り当てられるような状況では非効率的かもしれない。
ガベージ・コレクションがパフォーマンスに影響する場合は、後述するMutable APIの使用を検討してください。
クローン
このベクトルと同じ成分を持つ新しいベクトルを作成する。
existingVec2.clone() // -> vec2