CrossFramework Library
|
#include <XBase/Vector2.hpp>
2次元ベクトル構造体。
メモリ配置は32bit浮動小数が先頭からx,yの順番に並んでいます。
定数取得 | |
static const Vector2POD | Zero () |
0ベクトル。 | |
static const Vector2POD | One () |
X,Y,Zが全て1のベクトル。 | |
static const Vector2POD | UnitX () |
X単位ベクトル。 | |
static const Vector2POD | UnitY () |
Y単位ベクトル。 | |
static const Vector2POD | NegUnitX () |
-X単位ベクトル。 | |
static const Vector2POD | NegUnitY () |
-Y単位ベクトル。 | |
変数 | |
f32 | x |
x。 | |
f32 | y |
y。 | |
変換 | |
const Vector2POD | toX0 () const |
const Vector2POD | to0Y () const |
const Vector2POD | toXX () const |
const Vector2POD | toYX () const |
const Vector2POD | toYY () const |
const Vector3POD | toXYO () const |
const Vector3POD | toXXX () const |
const Vector3POD | toYYY () const |
const Vector4POD | toXYOO () const |
const Vector4POD | toXXXX () const |
const Vector4POD | toYYYY () const |
等価比較 | |
bool | equals (const Vector2POD &) const |
許容誤差を考慮した等価比較。。 | |
bool | equalsStrict (const Vector2POD &) const |
許容誤差を許容しない等価比較。 | |
四則演算 | |
const Vector2POD | add (f32) const |
各要素に値を加算した結果を取得する。 | |
const Vector2POD | sub (f32) const |
各要素から値を減算した結果を取得する。 | |
const Vector2POD | mul (f32) const |
各要素に値をかけた結果を取得する。 | |
const Vector2POD | div (f32) const |
各要素から値をわった結果を取得する。 | |
const Vector2POD | add (const Vector2POD &) const |
対応する値同士を加算した結果を取得する。 | |
const Vector2POD | sub (const Vector2POD &) const |
対応する値に対して減算した結果を取得する。 | |
const Vector2POD | mul (const Vector2POD &) const |
対応する値同士をかけた結果を取得する。 | |
const Vector2POD | div (const Vector2POD &) const |
対応する値に対して割り算をした結果を取得する。 | |
const Vector2POD | neg () const |
符号を反転させた結果を取得する。 | |
void | addAssign (f32) |
各要素に値を加算する。 | |
void | subAssign (f32) |
各要素から値を減算する。 | |
void | mulAssign (f32) |
各要素に値をかける。 | |
void | divAssign (f32) |
各要素から値をわる。 | |
void | addAssign (const Vector2POD &) |
対応する値同士を加算する。 | |
void | subAssign (const Vector2POD &) |
対応する値に対して減算する。 | |
void | mulAssign (const Vector2POD &) |
対応する値同士をかける。 | |
void | divAssign (const Vector2POD &) |
対応する値に対して割り算をする。 | |
演算子オーバーロード | |
const Vector2POD | operator+ (f32) const |
add()。 | |
const Vector2POD | operator- (f32) const |
sub()。 | |
const Vector2POD | operator* (f32) const |
mul()。 | |
const Vector2POD | operator/ (f32) const |
div()。 | |
const Vector2POD | operator+ (const Vector2POD &) const |
add()。 | |
const Vector2POD | operator- (const Vector2POD &) const |
sub()。 | |
const Vector2POD | operator* (const Vector2POD &) const |
mul()。 | |
const Vector2POD | operator/ (const Vector2POD &) const |
div()。 | |
const Vector2POD | operator- () const |
negate()。 | |
Vector2POD & | operator+= (f32) |
addAssign()。 | |
Vector2POD & | operator-= (f32) |
subAssign()。 | |
Vector2POD & | operator*= (f32) |
mulAssign()。 | |
Vector2POD & | operator/= (f32) |
divAssign()。 | |
Vector2POD & | operator+= (const Vector2POD &) |
addAssign()。 | |
Vector2POD & | operator-= (const Vector2POD &) |
subAssign()。 | |
Vector2POD & | operator*= (const Vector2POD &) |
mulAssign()。 | |
Vector2POD & | operator/= (const Vector2POD &) |
divAssign()。 | |
長さ&正規化 | |
f32 | squareLength () const |
長さの2乗を取得する。 | |
f32 | length () const |
長さを取得する。 | |
f32 | distance (const Vector2POD &) const |
あるベクトルとの距離を取得する。 | |
bool | isZero () const |
長さが0か。許容誤差を許す。 | |
bool | isZeroStrict () const |
長さが0か。許容誤差を許さない。 | |
bool | isUnit () const |
正規化済みか。許容誤差を許す。 | |
const Vector2POD | unit () const |
正規化したベクトルを取得する。 | |
void | unitAssign () |
正規化する。 | |
内積・外積 | |
f32 | dot (const Vector2POD &) const |
あるベクトルとの内積(cosθ)を取得する。 | |
f32 | cross (const Vector2POD &) const |
あるベクトルとの外積(sinθ)を取得とる。 | |
ユーティリティ | |
const ShortString | toShortString () const |
x,y形式の文字列に変換。 |