三次元ベクトルクラス
概要
三次元ベクトルクラスは、XYZの3つの実数をもつユーザーデータ型の変数である。
これを使用することで、座標などをまとめて表すことができる。
C++のライブラリであるEigenのEigen::Vector3<double>を使用しており、実装されている関数の一部もこれらに基づく。
vector3にある関数で使用できるほか、ベクトル同士の四則演算や比較演算が可能。
また、三次元ベクトルクラス自体にメタテーブルを設定しているため、textmodule.vector3.new(2, 1, 3):conj()のような呼び出しも可能である。
メタテーブル
table:_
パラメータ 型 概要
x function vector3.x
y function vector3.y
z function vector3.z
__tostring function tostring関数を使用した時を定義したメタメソッド。vector3:__tostring
__add function 四元数クラス同士の加算(+)を定義したメタメソッド。vector3:__add
__sub function 四元数クラス同士の減算(-)を定義したメタメソッド。vector3:__sub
__mul function 四元数クラス同士の乗算(*)を定義したメタメソッド。vector3:__mul
__div function 四元数クラス同士の除算(/)を定義したメタメソッド。vector3:__div
__unm function 四元数クラスの符号の反転(単項の -)を定義したメタメソッド。vector3:__unm
__lt function 四元数クラス同士の比較(<)を定義したメタメソッド。vector3:__lt
__le function 四元数クラス同士の比較(<=)を定義したメタメソッド。vector3:__le
__newindex function 複素数クラスの添字代入を定義したメタメソッド。vector3:__newindex
__call function vector3:__call
__type function vector3:__type
abs function vector3.abs
norm function vector3.norm
normalize function vector3.normalize
dot function vector3.dot
cross function vector3.cross
scale function vector3.scale
distance function vector3.distance
conj function vector3.conj
table function vector3.table
vector2 function vector3.vector2
vector4 function vector3.vector4