CrossFramework Library

構造体 XBase::Vector3POD

#include <XBase/Vector3.hpp>


3次元ベクトル構造体。

メモリ配置は32bit浮動小数が先頭からx,y,zの順番に並んでいます。

XBase::Vector3PODに対する継承グラフ

すべてのメンバ一覧

定数取得
static const Vector3POD Zero ()
 0ベクトル。
static const Vector3POD One ()
 X,Y,Zが全て1のベクトル。
static const Vector3POD UnitX ()
 X単位ベクトル。
static const Vector3POD UnitY ()
 Y単位ベクトル。
static const Vector3POD UnitZ ()
 Z単位ベクトル。
static const Vector3POD NegUnitX ()
 -X単位ベクトル。
static const Vector3POD NegUnitY ()
 -Y単位ベクトル。
static const Vector3POD NegUnitZ ()
 -Z単位ベクトル。

変数
f32 x
 x。
f32 y
 y。
f32 z
 z。

変換
const Vector2POD toXY () const
const Vector2POD toXX () const
const Vector2POD toYY () const
const Vector2POD toZZ () const
const Vector3POD toXOO () const
const Vector3POD toXYO () const
const Vector3POD toOYO () const
const Vector3POD toOYZ () const
const Vector3POD toOOZ () const
const Vector3POD toXXX () const
const Vector3POD toYYY () const
const Vector3POD toZZZ () const
const Vector4POD toXYZO () const
const Vector4POD toXXXX () const
const Vector4POD toYYYY () const
const Vector4POD toZZZZ () const
等価比較
bool equals (const Vector3POD &) const
 許容誤差を考慮した等価比較。。
bool equalsStrict (const Vector3POD &) const
 許容誤差を許容しない等価比較。
四則演算
const Vector3POD add (f32) const
 各要素に値を加算した結果を取得する。
const Vector3POD sub (f32) const
 各要素から値を減算した結果を取得する。
const Vector3POD mul (f32) const
 各要素に値をかけた結果を取得する。
const Vector3POD div (f32) const
 各要素から値をわった結果を取得する。
const Vector3POD add (const Vector3POD &) const
 対応する値同士を加算した結果を取得する。
const Vector3POD sub (const Vector3POD &) const
 対応する値に対して減算した結果を取得する。
const Vector3POD mul (const Vector3POD &) const
 対応する値同士をかけた結果を取得する。
const Vector3POD div (const Vector3POD &) const
 対応する値に対して割り算をした結果を取得する。
const Vector3POD neg () const
 符号を反転させた結果を取得する。
void addAssign (f32)
 各要素に値を加算する。
void subAssign (f32)
 各要素から値を減算する。
void mulAssign (f32)
 各要素に値をかける。
void divAssign (f32)
 各要素から値をわる。
void addAssign (const Vector3POD &)
 対応する値同士を加算する。
void subAssign (const Vector3POD &)
 対応する値に対して減算する。
void mulAssign (const Vector3POD &)
 対応する値同士をかける。
void divAssign (const Vector3POD &)
 対応する値に対して割り算をする。
演算子オーバーロード
const Vector3POD operator+ (f32) const
 add()
const Vector3POD operator- (f32) const
 sub()
const Vector3POD operator* (f32) const
 mul()
const Vector3POD operator/ (f32) const
 div()
const Vector3POD operator+ (const Vector3POD &) const
 add()
const Vector3POD operator- (const Vector3POD &) const
 sub()
const Vector3POD operator* (const Vector3POD &) const
 mul()
const Vector3POD operator/ (const Vector3POD &) const
 div()
const Vector3POD operator- () const
 negate()。
Vector3PODoperator+= (f32)
 addAssign()
Vector3PODoperator-= (f32)
 subAssign()
Vector3PODoperator*= (f32)
 mulAssign()
Vector3PODoperator/= (f32)
 divAssign()
Vector3PODoperator+= (const Vector3POD &)
 addAssign()
Vector3PODoperator-= (const Vector3POD &)
 subAssign()
Vector3PODoperator*= (const Vector3POD &)
 mulAssign()
Vector3PODoperator/= (const Vector3POD &)
 divAssign()
長さ&正規化
f32 squareLength () const
 長さの2乗を取得する。
f32 length () const
 長さを取得する。
f32 distance (const Vector3POD &) const
 あるベクトルとの距離を取得する。
bool isZero () const
 長さが0か。許容誤差を許す。
bool isZeroStrict () const
 長さが0か。許容誤差を許さない。
bool isUnit () const
 正規化済みか。許容誤差を許す。
const Vector3POD unit () const
 正規化したベクトルを取得する。
void unitAssign ()
 正規化する。
内積・外積
f32 dot (const Vector3POD &) const
 あるベクトルとの内積を取得する。
const Vector3POD cross (const Vector3POD &) const
 あるベクトルとの外積を取得とる。
ユーティリティ
const ShortString toShortString () const
 x,y,z形式の文字列に変換。
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 マクロ定義