カト
四元数を表すインターフェース。 クォータニオンは(x、y、z、w)座標で表され、3次元回転を表す。 クオータニオンは、Mat4のインターフェイスを使って4x4の回転行列に変換したり、4x4の回転行列から変換したりすることができる。 Quaternionオブジェクトは、ecs.math.quat QuatFactory、または他のQuatオブジェクトの操作によって作成されます。
ソース
QuatSourceインターフェイスは、x、y、z、wのプロパティを持つオブジェクトを表し、Quatを作成するためのデータソースとして使用することができます。 加えて、QuatSourceはQuatアルゴリズムの引数として使用することができ、{x: 数、y: 数、z: 数、w: 数}プロパティを持つ任意のオブジェクトを使用できることを意味する。
プロパティ一覧
クアットは以下の列挙可能な特性を持つ:
readonly x: number
四元数のx成分にアクセスする。
readonly y: number`` 四元数のy成分にアクセスする。
readonly z: number
四元数のz成分にアクセスする。
readonly w: number
四元数のw成分にアクセスする。
工場
軸角度
軸角度表現からQuatを作成する。 aaベクトルの方向は回転軸を表し、ベクトルの大きさはラジアン単位の角度を表す。 例えば、quat.axisAngle(vec3.up().scale(Math.PI / 2))は、Y軸に対して90度の回転を表し、quat.yDegrees(90)と等価です。 targetが与えられた場合、結果はtargetに格納され、targetが返される。 そうでない場合は、新しいQuatが作成されて返される。
ecs.math.quat.axisAngle(aa: Vec3Source, target?: Quat) // -> quat
より
x、y、z、wのプロパティを持つオブジェクトからQuatを作成する。
ecs.math.quat.from({x, y, z, w}: {x: 数, y: 数, z: 数, w: 数) // -> quat
ルックアット
eye'に位置するオブジェクトが'target'に位置するオブジェクトを見るために必要な回転を表すQuatを、与えられた'up vector'で作成する。
ecs.math.quat.lookAt(eye: Vec3Source, target: Vec3Source, up: Vec3Source) // -> quat
ピッチヨーロール度
YXZオイラー角としても知られるピッチ/ヨー/ロール表現からクォータニオンを構成する。 回転は度単位で指定する。
ecs.math.quat.pitchYawRollDegrees(v: Vec3Source) // -> quat