CrossFramework Library

構造体 XBase::Vector3POD

#include <XBase/Vector3.hpp>


浮動小数型3次元ベクトル構造体。

使用頻度のことを考えて Vec3 という名前でもアクセスできます。 メモリ配置は32bit浮動小数が先頭からx,y,zの順番に並んでいます。

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

すべてのメンバ一覧

定数取得
static const Vector3POD Zero ()
 0ベクトル。
static const Vector3POD One ()
 X,Y,Zが全て1のベクトル。
static const Vector3POD Min ()
 最小値のベクトル。
static const Vector3POD Max ()
 最大値のベクトル。
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 toX00 () const
const Vector3POD toXY0 () const
const Vector3POD to0Y0 () const
const Vector3POD to0YZ () const
const Vector3POD to00Z () const
const Vector3POD toXXX () const
const Vector3POD toYYY () const
const Vector3POD toZZZ () const
const Vector4POD toXYZ0 () 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
 対応する値に対して割り算をした結果を取得する。
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
 neg()
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()
選択
const Vector3POD min (const Vector3POD &) const
 指定のベクトルとの各要素の最小値を選択したベクトルを取得する。
const Vector3POD max (const Vector3POD &) const
 指定のベクトルとの各要素の最大値を選択したベクトルを取得する。
クランプ
const Vector3POD clamp (const Vector3POD &aMin, const Vector3POD &aMax) const
 aMin以上aMax以下になるようにクランプする。
const Vector3POD clampPositive () const
 clamp( Zero() , Max() ) を取得する。
const Vector3POD clampNegative () const
 clamp( Min() , Zero() ) を取得する。
符号操作
const Vector3POD abs () const
 各要素を正に置き換えたベクトルを取得。
const Vector3POD neg () const
 符号を反転させた結果を取得する。
長さ&正規化
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形式の文字列に変換。
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 マクロ定義