3次元ベクトル More...
#include <GxVector.h>
Public Member Functions | |
初期化 | |
GxVector3 (void) | |
デフォルトコンストラクタ | |
GX_FORCE_INLINE | GxVector3 (f32 x, f32 y, f32 z) |
コンストラクタ | |
GX_FORCE_INLINE | GxVector3 (const GxFloat3 &float3) |
コンストラクタ | |
GX_FORCE_INLINE | GxVector3 (const f32 *pFloatArray) |
コンストラクタ | |
GX_FORCE_INLINE | GxVector3 (const GxPoint2 &point, f32 z=0.0f) |
コンストラクタ | |
GX_FORCE_INLINE | GxVector3 (const GxVector2 &vector, f32 z=0.0f) |
コンストラクタ | |
GX_FORCE_INLINE | GxVector3 (const GxVector4 &vector) |
コンストラクタ | |
GX_FORCE_INLINE | GxVector3 (const GxVector3 &vector) |
コピーコンストラクタ | |
操作 | |
GX_FORCE_INLINE const GxVector3 & | addScalar (f32 scalar) |
スカラ加算 | |
GX_FORCE_INLINE const GxVector3 & | subScalar (f32 scalar) |
スカラ減算 | |
GX_FORCE_INLINE const GxVector3 & | mulScalar (f32 scalar) |
スカラ乗算 | |
GX_FORCE_INLINE const GxVector3 & | divScalar (f32 scalar) |
スカラ除算 | |
GX_FORCE_INLINE const GxVector3 & | addVector (const GxVector3 &vector) |
ベクトル加算 | |
GX_FORCE_INLINE const GxVector3 & | subVector (const GxVector3 &vector) |
ベクトル減算 | |
GX_FORCE_INLINE const GxVector3 & | mulVector (const GxVector3 &vector) |
ベクトル乗算 | |
GX_FORCE_INLINE const GxVector3 & | divVector (const GxVector3 &vector) |
ベクトル除算 | |
GX_FORCE_INLINE const GxVector3 & | normalize (void) |
正規化する | |
GX_FORCE_INLINE const GxVector3 & | normalizeEx (void) |
正規化する(長さ0に対応) | |
GX_FORCE_INLINE const GxVector3 & | transform (const GxMatrix44 &matrix) |
w=1.0として座標変換 | |
GX_FORCE_INLINE const GxVector3 & | transform (const GxMatrixAffine &matrix) |
w=1.0として座標変換 | |
GX_FORCE_INLINE const GxVector3 & | transformNormal (const GxMatrix44 &matrix) |
w=0.0として座標変換 | |
GX_FORCE_INLINE const GxVector3 & | transformNormal (const GxMatrixAffine &matrix) |
w=0.0として座標変換 | |
GX_FORCE_INLINE const GxVector3 & | transformCoord (const GxMatrix44 &matrix) |
w=1.0として座標変換後、wで割る | |
GX_FORCE_INLINE const GxVector3 & | rotate (const GxQuaternion &quaternion) |
回転する | |
Public Attributes | |
メンバ変数 | |
f32 | _x |
X値 | |
f32 | _y |
Y値 | |
f32 | _z |
Z値 | |
u32 | _padding |
パディング | |
Static Public Attributes | |
定義 | |
static constexpr u32 | DIMENSION = 3 |
次元数 | |
static const GxVector3 | ZERO |
(0, 0, 0) | |
static const GxVector3 | ONE |
(1, 1, 1) | |
static const GxVector3 | AXIS_X |
(1, 0, 0) | |
static const GxVector3 | AXIS_Y |
(0, 1, 0) | |
static const GxVector3 | AXIS_Z |
(0, 0, 1) | |
static const GxVector3 | MIN |
最小値ベクトル | |
static const GxVector3 | MAX |
最大値ベクトル | |
演算子 | |
GX_FORCE_INLINE GxVector3 & | operator= (const GxVector3 &vector) |
代入 | |
GX_FORCE_INLINE GxVector3 & | operator+= (f32 scalar) |
スカラ加算代入 | |
GX_FORCE_INLINE GxVector3 & | operator-= (f32 scalar) |
スカラ減算代入 | |
GX_FORCE_INLINE GxVector3 & | operator*= (f32 scalar) |
スカラ乗算代入 | |
GX_FORCE_INLINE GxVector3 & | operator/= (f32 scalar) |
スカラ除算代入 | |
GX_FORCE_INLINE GxVector3 & | operator+= (const GxVector3 &vector) |
ベクトル加算代入 | |
GX_FORCE_INLINE GxVector3 & | operator-= (const GxVector3 &vector) |
ベクトル減算代入 | |
GX_FORCE_INLINE GxVector3 & | operator*= (const GxVector3 &vector) |
ベクトル乗算代入 | |
GX_FORCE_INLINE GxVector3 & | operator/= (const GxVector3 &vector) |
ベクトル除算代入 | |
GX_FORCE_INLINE const GxVector3 | operator+ (const GxVector3 &vector) |
正ベクトル | |
GX_FORCE_INLINE const GxVector3 | operator- (const GxVector3 &vector) |
負ベクトル | |
GX_FORCE_INLINE const GxVector3 | operator+ (const GxVector3 &vector, f32 scalar) |
スカラ加算 | |
GX_FORCE_INLINE const GxVector3 | operator- (const GxVector3 &vector, f32 scalar) |
スカラ減算 | |
GX_INLINE const GxVector3 | operator* (const GxVector3 &vector, f32 scalar) |
スカラ乗算 | |
GX_FORCE_INLINE const GxVector3 | operator* (f32 scalar, const GxVector3 &vector) |
スカラ乗算 | |
GX_FORCE_INLINE const GxVector3 | operator/ (const GxVector3 &vector, f32 scalar) |
スカラ除算 | |
GX_FORCE_INLINE const GxVector3 | operator+ (const GxVector3 &vector0, const GxVector3 &vector1) |
ベクトル加算 | |
GX_FORCE_INLINE const GxVector3 | operator- (const GxVector3 &vector0, const GxVector3 &vector1) |
ベクトル減算 | |
GX_FORCE_INLINE const GxVector3 | operator* (const GxVector3 &vector0, const GxVector3 &vector1) |
ベクトル乗算 | |
GX_FORCE_INLINE const GxVector3 | operator/ (const GxVector3 &vector0, const GxVector3 &vector1) |
ベクトル除算 | |
GX_FORCE_INLINE b32 | operator== (const GxVector3 &vector0, const GxVector3 &vector1) |
一致 | |
GX_FORCE_INLINE b32 | operator!= (const GxVector3 &vector0, const GxVector3 &vector1) |
不一致 | |
GX_FORCE_INLINE b32 | operator< (const GxVector3 &vector0, const GxVector3 &vector1) |
小なり | |
GX_FORCE_INLINE b32 | operator> (const GxVector3 &vector0, const GxVector3 &vector1) |
大なり | |
アクセサ | |
GX_FORCE_INLINE const f32 & | operator[] (u32 i) const |
const配列 | |
GX_FORCE_INLINE f32 & | operator[] (u32 i) |
配列 | |
GX_FORCE_INLINE b32 | isZeroVector (void) const |
ゼロベクトルかを取得 | |
GX_FORCE_INLINE GxVector3 | getXY (void) const |
XY要素のベクトルを取得 | |
GX_FORCE_INLINE const GxVector3 & | getXY (GxVector3 &dst) const |
XY要素のベクトルを取得 | |
GX_FORCE_INLINE void | setXY (const GxVector3 &vector) |
XY要素のベクトルを設定 | |
GX_FORCE_INLINE GxVector3 | getXZ (void) const |
XZ要素のベクトルを取得 | |
GX_FORCE_INLINE const GxVector3 & | getXZ (GxVector3 &dst) const |
XZ要素のベクトルを取得 | |
GX_FORCE_INLINE void | setXZ (const GxVector3 &vector) |
XZ要素のベクトルを設定 | |
GX_FORCE_INLINE GxVector3 | getYZ (void) const |
YZ要素のベクトルを取得 | |
GX_FORCE_INLINE const GxVector3 & | getYZ (GxVector3 &dst) const |
YZ要素のベクトルを取得 | |
GX_FORCE_INLINE void | setYZ (const GxVector3 &vector) |
YZ要素のベクトルを設定 | |
GX_FORCE_INLINE f32 | getLength (void) const |
長さを取得 | |
GX_FORCE_INLINE f32 | getLengthSquare (void) const |
長さの2乗を取得 | |
GX_FORCE_INLINE void | setLength (f32 length) |
長さを設定 | |
GX_FORCE_INLINE void | setLengthEx (f32 length) |
長さを設定(長さ0に対応) | |
GX_FORCE_INLINE GxVector3 | getNormalize (void) const |
正規化ベクトルを取得 | |
GX_FORCE_INLINE GxVector3 | getNormalizeEx (void) const |
正規化ベクトルを取得(長さ0に対応) | |
GX_FORCE_INLINE GxVector3 | getTransform (const GxMatrix44 &matrix) const |
w=1.0として座標変換したベクトルを取得 | |
GX_FORCE_INLINE GxVector3 | getTransform (const GxMatrixAffine &matrix) const |
w=1.0として座標変換したベクトルを取得 | |
GX_FORCE_INLINE GxVector3 | getTransformNormal (const GxMatrix44 &matrix) const |
w=0.0として座標変換したベクトルを取得 | |
GX_FORCE_INLINE GxVector3 | getTransformNormal (const GxMatrixAffine &matrix) const |
w=0.0として座標変換したベクトルを取得 | |
GX_FORCE_INLINE GxVector3 | getTransformCoord (const GxMatrix44 &matrix) const |
w=1.0として座標変換後、wで除算したベクトルを取得 | |
GX_FORCE_INLINE f32 | getTransformX (const GxMatrix44 &matrix) const |
w=1.0として座標変換したx成分を取得 | |
GX_FORCE_INLINE f32 | getTransformX (const GxMatrixAffine &matrix) const |
w=1.0として座標変換したx成分を取得 | |
GX_FORCE_INLINE f32 | getTransformNormalX (const GxMatrix44 &matrix) const |
w=0.0として座標変換したx成分を取得 | |
GX_FORCE_INLINE f32 | getTransformNormalX (const GxMatrixAffine &matrix) const |
w=0.0として座標変換したx成分を取得 | |
GX_FORCE_INLINE f32 | getTransformCoordX (const GxMatrix44 &matrix) const |
w=1.0として座標変換後、wで除算したx成分を取得 | |
GX_FORCE_INLINE f32 | getTransformY (const GxMatrix44 &matrix) const |
w=1.0として座標変換したy成分を取得 | |
GX_FORCE_INLINE f32 | getTransformY (const GxMatrixAffine &matrix) const |
w=1.0として座標変換したy成分を取得 | |
GX_FORCE_INLINE f32 | getTransformNormalY (const GxMatrix44 &matrix) const |
w=0.0として座標変換したy成分を取得 | |
GX_FORCE_INLINE f32 | getTransformNormalY (const GxMatrixAffine &matrix) const |
w=0.0として座標変換したy成分を取得 | |
GX_FORCE_INLINE f32 | getTransformCoordY (const GxMatrix44 &matrix) const |
w=1.0として座標変換後、wで除算したy成分を取得 | |
GX_FORCE_INLINE f32 | getTransformZ (const GxMatrix44 &matrix) const |
w=1.0として座標変換したz成分を取得 | |
GX_FORCE_INLINE f32 | getTransformZ (const GxMatrixAffine &matrix) const |
w=1.0として座標変換したz成分を取得 | |
GX_FORCE_INLINE f32 | getTransformNormalZ (const GxMatrix44 &matrix) const |
w=0.0として座標変換したz成分を取得 | |
GX_FORCE_INLINE f32 | getTransformNormalZ (const GxMatrixAffine &matrix) const |
w=0.0として座標変換したz成分を取得 | |
GX_FORCE_INLINE f32 | getTransformCoordZ (const GxMatrix44 &matrix) const |
w=1.0として座標変換後、wで除算したz成分を取得 | |
GX_FORCE_INLINE GxVector3 | getRotate (const GxQuaternion &quaternion) const |
回転後のベクトルを取得 | |
constexpr f32 | getMinimumValue (void) const |
最小要素を取得 | |
constexpr f32 | getMaximumValue (void) const |
最大要素を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getAddScalar (GxVector3 &dst, const GxVector3 &vector, f32 scalar) |
スカラ加算を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getSubScalar (GxVector3 &dst, const GxVector3 &vector, f32 scalar) |
スカラ減算を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getMulScalar (GxVector3 &dst, const GxVector3 &vector, f32 scalar) |
スカラ乗算を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getDivScalar (GxVector3 &dst, const GxVector3 &vector, f32 scalar) |
スカラ除算を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getAddVector (GxVector3 &dst, const GxVector3 &vector0, const GxVector3 &vector1) |
ベクトル加算を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getSubVector (GxVector3 &dst, const GxVector3 &vector0, const GxVector3 &vector1) |
ベクトル減算を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getMulVector (GxVector3 &dst, const GxVector3 &vector0, const GxVector3 &vector1) |
ベクトル乗算を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getDivVector (GxVector3 &dst, const GxVector3 &vector0, const GxVector3 &vector1) |
ベクトル除算を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getNormalize (GxVector3 &dst, const GxVector3 &vector) |
正規化ベクトルを取得 | |
static GX_FORCE_INLINE const GxVector3 & | getNormalizeEx (GxVector3 &dst, const GxVector3 &vector) |
正規化ベクトルを取得(長さ0に対応) | |
static GX_FORCE_INLINE const GxVector3 & | getTransform (GxVector3 &dst, const GxVector3 &vector, const GxMatrix44 &matrix) |
w=1.0として座標変換したベクトルを取得 | |
static GX_FORCE_INLINE const GxVector3 & | getTransform (GxVector3 &dst, const GxVector3 &vector, const GxMatrixAffine &matrix) |
w=1.0として座標変換したベクトルを取得 | |
static GX_FORCE_INLINE const GxFloat3 & | getTransform (GxFloat3 &dst, const GxVector3 &vector, const GxMatrix44 &matrix) |
w=1.0として座標変換したベクトルを取得 | |
static GX_FORCE_INLINE const GxFloat3 & | getTransform (GxFloat3 &dst, const GxVector3 &vector, const GxMatrixAffine &matrix) |
w=1.0として座標変換したベクトルを取得 | |
static GX_FORCE_INLINE const GxVector3 & | getTransformNormal (GxVector3 &dst, const GxVector3 &vector, const GxMatrix44 &matrix) |
w=0.0として座標変換したベクトルを取得 | |
static GX_FORCE_INLINE const GxVector3 & | getTransformNormal (GxVector3 &dst, const GxVector3 &vector, const GxMatrixAffine &matrix) |
w=0.0として座標変換したベクトルを取得 | |
static GX_FORCE_INLINE const GxVector3 & | getTransformCoord (GxVector3 &dst, const GxVector3 &vector, const GxMatrix44 &matrix) |
w=1.0として座標変換後、wで除算したベクトルを取得 | |
static GX_FORCE_INLINE const GxVector3 & | getRotate (GxVector3 &dst, const GxVector3 &vector, const GxQuaternion &quaternion) |
回転後のベクトルを取得 | |
static GX_FORCE_INLINE f32 | getDot (const GxVector3 &vector0, const GxVector3 &vector1) |
内積を取得 | |
static GX_FORCE_INLINE GxVector3 | getCross (const GxVector3 &vector0, const GxVector3 &vector1) |
外積を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getCross (GxVector3 &dst, const GxVector3 &vector0, const GxVector3 &vector1) |
外積を取得 | |
static GX_FORCE_INLINE GxVector3 | getCrossVector (const GxVector3 &vector) |
直交する単位ベクトルを取得 | |
static GX_FORCE_INLINE const GxVector3 & | getCrossVector (GxVector3 &dst, const GxVector3 &vector) |
直交する単位ベクトルを取得 | |
static GX_FORCE_INLINE f32 | getDistance (const GxVector3 &vector0, const GxVector3 &vector1) |
距離を取得 | |
static GX_FORCE_INLINE f32 | getDistanceSquare (const GxVector3 &vector0, const GxVector3 &vector1) |
距離の2乗を取得 | |
static GX_FORCE_INLINE f32 | getAngle (const GxVector3 &vector0, const GxVector3 &vector1) |
角度差を取得(符号なし radian) | |
static GX_FORCE_INLINE f32 | getAngle (const GxVector3 &vector0, const GxVector3 &vector1, const GxVector3 &up) |
角度差を取得(符号つき radian) | |
static GX_FORCE_INLINE GxVector3 | getMinimum (const GxVector3 &vector0, const GxVector3 &vector1) |
要素毎に最小値を選択 | |
static GX_FORCE_INLINE const GxVector3 & | getMinimum (GxVector3 &dst, const GxVector3 &vector0, const GxVector3 &vector1) |
要素毎に最小値を選択 | |
static GX_FORCE_INLINE GxVector3 | getMaximum (const GxVector3 &vector0, const GxVector3 &vector1) |
要素毎に最大値を選択 | |
static GX_FORCE_INLINE const GxVector3 & | getMaximum (GxVector3 &dst, const GxVector3 &vector0, const GxVector3 &vector1) |
要素毎に最大値を選択 | |
static GX_FORCE_INLINE GxVector3 | getLerp (const GxVector3 &vector0, const GxVector3 &vector1, f32 t) |
線形補間 | |
static GX_FORCE_INLINE const GxVector3 & | getLerp (GxVector3 &dst, const GxVector3 &vector0, const GxVector3 &vector1, f32 t) |
線形補間 | |
static GX_FORCE_INLINE f32 | getLineParam (const GxVector3 &checkPosition, const GxVector3 &startPosition, const GxVector3 &endPosition) |
指定した点が線分上のどこに位置するかのパラメータを返す | |
static GX_FORCE_INLINE GxVector3 | getLinePosition (const GxVector3 &position, const GxVector3 &linePosition0, const GxVector3 &linePosition1) |
指定した点を直線上に下ろした点を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getLinePosition (GxVector3 &dst, const GxVector3 &position, const GxVector3 &linePosition0, const GxVector3 &linePosition1) |
指定した点を直線上に下ろした点を取得 | |
static GX_FORCE_INLINE GxVector3 | getSegmentPosition (const GxVector3 &position, const GxVector3 &startPosition, const GxVector3 &endPosition) |
指定した点を線分上に下ろした点を取得 | |
static GX_FORCE_INLINE const GxVector3 & | getSegmentPosition (GxVector3 &dst, const GxVector3 &position, const GxVector3 &startPosition, const GxVector3 &endPosition) |
指定した点を線分上に下ろした点を取得 | |
static GX_FORCE_INLINE b32 | isSameDirectionLessEqual (const GxVector3 &vector0, const GxVector3 &vector1, f32 limitRadian=PI/2.0f) |
ベクトルが同じ方向を向いているか(ラジアン指定/指定値以内なら(==も含む)同じ方向) | |
static GX_FORCE_INLINE b32 | isSameDirectionLessThan (const GxVector3 &vector0, const GxVector3 &vector1, f32 limitRadian=PI/2.0f) |
ベクトルが同じ方向を向いているか(ラジアン指定/指定値より小さければ(==は含まない)同じ方向) | |
Additional Inherited Members | |
![]() | |
static GxRtti & | __getStaticRtti (void) |
3次元ベクトル
GX_FORCE_INLINE GxVector3::GxVector3 | ( | f32 | x, |
f32 | y, | ||
f32 | z ) |
コンストラクタ
x | [in] X値 |
y | [in] Y値 |
z | [in] Z値 |
GX_FORCE_INLINE GxVector3::GxVector3 | ( | const GxFloat3 & | float3 | ) |
コンストラクタ
float3 | [in] XYZ値 |
GX_FORCE_INLINE GxVector3::GxVector3 | ( | const f32 * | pFloatArray | ) |
コンストラクタ
pFloatArray | [in] XYZ値 |
GX_FORCE_INLINE GxVector3::GxVector3 | ( | const GxPoint2 & | point, |
f32 | z = 0.0f ) |
コンストラクタ
point | [in] XY値 |
z | [in] Z値 |
GX_FORCE_INLINE GxVector3::GxVector3 | ( | const GxVector2 & | vector, |
f32 | z = 0.0f ) |
コンストラクタ
vector | [in] XY値 |
z | [in] Z値 |
GX_FORCE_INLINE GxVector3::GxVector3 | ( | const GxVector4 & | vector | ) |
コンストラクタ
vector | [in] XYZW値 |
GX_FORCE_INLINE GxVector3::GxVector3 | ( | const GxVector3 & | vector | ) |
コピーコンストラクタ
vector | [in] XYZ値 |
GX_FORCE_INLINE const GxVector3 & GxVector3::addScalar | ( | f32 | scalar | ) |
スカラ加算
scalar | [in] スカラ |
ベクトル加算
vector | [in] ベクトル |
GX_FORCE_INLINE const GxVector3 & GxVector3::divScalar | ( | f32 | scalar | ) |
スカラ除算
scalar | [in] スカラ |
ベクトル除算
vector | [in] ベクトル |
|
static |
スカラ加算を取得
dst | [out] 出力先 |
vector | [in] ベクトル |
scalar | [in] スカラ |
|
static |
ベクトル加算を取得
dst | [out] 出力先 |
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
|
static |
角度差を取得(符号なし radian)
vector0 | [in] ベクトル |
vector1 | [in] ベクトル 長さ0のベクトルが渡されたときは 0.0f が返る |
|
static |
角度差を取得(符号つき radian)
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
up | [in] 上を表すベクトル 長さ0のベクトルが渡されたときは 0.0f が返る |
|
static |
外積を取得
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
|
static |
外積を取得
dst | [out] 出力先 |
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
直交する単位ベクトルを取得
vector | [in] ベクトル |
|
static |
直交する単位ベクトルを取得
dst | [in] 出力先 |
vector | [in] ベクトル |
|
static |
距離を取得
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
|
static |
距離の2乗を取得
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
|
static |
スカラ除算を取得
dst | [out] 出力先 |
vector | [in] ベクトル |
scalar | [in] スカラ |
|
static |
ベクトル除算を取得
dst | [out] 出力先 |
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
|
static |
内積を取得
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
GX_FORCE_INLINE f32 GxVector3::getLength | ( | void | ) | const |
長さを取得
GX_FORCE_INLINE f32 GxVector3::getLengthSquare | ( | void | ) | const |
長さの2乗を取得
|
static |
線形補間
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
t | [in] 補間割合。0.0f→vector0 1.0f→vector1 |
|
static |
線形補間
dst | [out] 出力先 |
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
t | [in] 補間割合。0.0f→vector0 1.0f→vector1 |
|
static |
指定した点が線分上のどこに位置するかのパラメータを返す
checkPosition | [in] 調べたい点 |
startPosition | [in] 線分開始点 |
endPosition | [in] 線分終了点(startPositionと同じ位置にならないように注意) |
|
static |
指定した点を直線上に下ろした点を取得
position | [in] 調べたい点 |
linePosition0 | [in] 直線上の点 |
linePosition1 | [in] 直線上の点(linePosition0と同じ位置にならないように注意) |
|
static |
指定した点を直線上に下ろした点を取得
dst | [out] 出力先 |
position | [in] 調べたい点 |
linePosition0 | [in] 直線上の点 |
linePosition1 | [in] 直線上の点(linePosition0と同じ位置にならないように注意) |
|
static |
要素毎に最大値を選択
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
|
static |
要素毎に最大値を選択
dst | [out] 出力先 |
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
|
static |
要素毎に最小値を選択
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
|
static |
要素毎に最小値を選択
dst | [out] 出力先 |
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
|
static |
スカラ乗算を取得
dst | [out] 出力先 |
vector | [in] ベクトル |
scalar | [in] スカラ |
|
static |
ベクトル乗算を取得
dst | [out] 出力先 |
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
|
static |
正規化ベクトルを取得
dst | [out] 出力先 |
vector | [in] ベクトル |
GX_FORCE_INLINE GxVector3 GxVector3::getNormalize | ( | void | ) | const |
正規化ベクトルを取得
|
static |
正規化ベクトルを取得(長さ0に対応)
dst | [out] 出力先 |
vector | [in] ベクトル |
GX_FORCE_INLINE GxVector3 GxVector3::getNormalizeEx | ( | void | ) | const |
正規化ベクトルを取得(長さ0に対応)
GX_FORCE_INLINE GxVector3 GxVector3::getRotate | ( | const GxQuaternion & | quaternion | ) | const |
回転後のベクトルを取得
quaternion | [in] クォータニオン |
|
static |
回転後のベクトルを取得
dst | [out] 出力先 |
quaternion | [in] クォータニオン |
|
static |
指定した点を線分上に下ろした点を取得
position | [in] 調べたい点 |
startPosition | [in] 線分開始点 |
endPosition | [in] 線分終了点(startPositionと同じ位置にならないように注意) |
|
static |
指定した点を線分上に下ろした点を取得
dst | [out] 出力先 |
position | [in] 調べたい点 |
startPosition | [in] 線分開始点 |
endPosition | [in] 線分終了点(startPositionと同じ位置にならないように注意) |
|
static |
スカラ減算を取得
dst | [out] 出力先 |
vector | [in] ベクトル |
scalar | [in] スカラ |
|
static |
ベクトル減算を取得
dst | [out] 出力先 |
vector0 | [in] ベクトル |
vector1 | [in] ベクトル |
GX_FORCE_INLINE GxVector3 GxVector3::getTransform | ( | const GxMatrix44 & | matrix | ) | const |
w=1.0として座標変換したベクトルを取得
matrix | [in] 行列 |
GX_FORCE_INLINE GxVector3 GxVector3::getTransform | ( | const GxMatrixAffine & | matrix | ) | const |
w=1.0として座標変換したベクトルを取得
matrix | [in] 行列 |
|
static |
w=1.0として座標変換したベクトルを取得
dst | [out] 出力先 |
vector | [in] ベクトル |
matrix | [in] 行列 |
|
static |
w=1.0として座標変換したベクトルを取得
dst | [out] 出力先 |
vector | [in] ベクトル |
matrix | [in] 行列 |
|
static |
w=1.0として座標変換したベクトルを取得
dst | [out] 出力先 |
vector | [in] ベクトル |
matrix | [in] 行列 |
|
static |
w=1.0として座標変換したベクトルを取得
dst | [out] 出力先 |
vector | [in] ベクトル |
matrix | [in] 行列 |
GX_FORCE_INLINE GxVector3 GxVector3::getTransformCoord | ( | const GxMatrix44 & | matrix | ) | const |
w=1.0として座標変換後、wで除算したベクトルを取得
matrix | [in] 行列 |
|
static |
w=1.0として座標変換後、wで除算したベクトルを取得
dst | [out] 出力先 |
vector | [in] ベクトル |
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformCoordX | ( | const GxMatrix44 & | matrix | ) | const |
w=1.0として座標変換後、wで除算したx成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformCoordY | ( | const GxMatrix44 & | matrix | ) | const |
w=1.0として座標変換後、wで除算したy成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformCoordZ | ( | const GxMatrix44 & | matrix | ) | const |
w=1.0として座標変換後、wで除算したz成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE GxVector3 GxVector3::getTransformNormal | ( | const GxMatrix44 & | matrix | ) | const |
w=0.0として座標変換したベクトルを取得
matrix | [in] 行列 |
GX_FORCE_INLINE GxVector3 GxVector3::getTransformNormal | ( | const GxMatrixAffine & | matrix | ) | const |
w=0.0として座標変換したベクトルを取得
matrix | [in] 行列 |
|
static |
w=0.0として座標変換したベクトルを取得
dst | [out] 出力先 |
vector | [in] ベクトル |
matrix | [in] 行列 |
|
static |
w=0.0として座標変換したベクトルを取得
dst | [out] 出力先 |
vector | [in] ベクトル |
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformNormalX | ( | const GxMatrix44 & | matrix | ) | const |
w=0.0として座標変換したx成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformNormalX | ( | const GxMatrixAffine & | matrix | ) | const |
w=0.0として座標変換したx成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformNormalY | ( | const GxMatrix44 & | matrix | ) | const |
w=0.0として座標変換したy成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformNormalY | ( | const GxMatrixAffine & | matrix | ) | const |
w=0.0として座標変換したy成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformNormalZ | ( | const GxMatrix44 & | matrix | ) | const |
w=0.0として座標変換したz成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformNormalZ | ( | const GxMatrixAffine & | matrix | ) | const |
w=0.0として座標変換したz成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformX | ( | const GxMatrix44 & | matrix | ) | const |
w=1.0として座標変換したx成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformX | ( | const GxMatrixAffine & | matrix | ) | const |
w=1.0として座標変換したx成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformY | ( | const GxMatrix44 & | matrix | ) | const |
w=1.0として座標変換したy成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformY | ( | const GxMatrixAffine & | matrix | ) | const |
w=1.0として座標変換したy成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformZ | ( | const GxMatrix44 & | matrix | ) | const |
w=1.0として座標変換したz成分を取得
matrix | [in] 行列 |
GX_FORCE_INLINE f32 GxVector3::getTransformZ | ( | const GxMatrixAffine & | matrix | ) | const |
w=1.0として座標変換したz成分を取得
matrix | [in] 行列 |
XY要素のベクトルを取得
dst | [out] 出力先 |
GX_FORCE_INLINE GxVector3 GxVector3::getXY | ( | void | ) | const |
XY要素のベクトルを取得
XZ要素のベクトルを取得
dst | [out] 出力先 |
GX_FORCE_INLINE GxVector3 GxVector3::getXZ | ( | void | ) | const |
XZ要素のベクトルを取得
YZ要素のベクトルを取得
dst | [out] 出力先 |
GX_FORCE_INLINE GxVector3 GxVector3::getYZ | ( | void | ) | const |
YZ要素のベクトルを取得
|
static |
ベクトルが同じ方向を向いているか(ラジアン指定/指定値以内なら(==も含む)同じ方向)
vector0 | [in] 調べたいベクトル(正規化してなくてもOK) |
vector1 | [in] 調べたいベクトル(正規化してなくてもOK) |
limitRadian | [in] この角度以内であれば同じ方向とする |
|
static |
ベクトルが同じ方向を向いているか(ラジアン指定/指定値より小さければ(==は含まない)同じ方向)
vector0 | [in] 調べたいベクトル(正規化してなくてもOK) |
vector1 | [in] 調べたいベクトル(正規化してなくてもOK) |
limitRadian | [in] この角度より小さければ同じ方向とする |
GX_FORCE_INLINE b32 GxVector3::isZeroVector | ( | void | ) | const |
ゼロベクトルかを取得
GX_FORCE_INLINE const GxVector3 & GxVector3::mulScalar | ( | f32 | scalar | ) |
スカラ乗算
scalar | [in] スカラ |
ベクトル乗算
vector | [in] ベクトル |
GX_FORCE_INLINE const GxVector3 & GxVector3::normalize | ( | void | ) |
正規化する
GX_FORCE_INLINE const GxVector3 & GxVector3::normalizeEx | ( | void | ) |
正規化する(長さ0に対応)
ベクトル乗算代入
vector | [in] XYZ値 |
GX_FORCE_INLINE GxVector3 & GxVector3::operator*= | ( | f32 | scalar | ) |
スカラ乗算代入
scalar | [in] スカラ |
ベクトル加算代入
vector | [in] XYZ値 |
GX_FORCE_INLINE GxVector3 & GxVector3::operator+= | ( | f32 | scalar | ) |
スカラ加算代入
scalar | [in] スカラ |
ベクトル減算代入
vector | [in] XYZ値 |
GX_FORCE_INLINE GxVector3 & GxVector3::operator-= | ( | f32 | scalar | ) |
スカラ減算代入
scalar | [in] スカラ |
ベクトル除算代入
vector | [in] XYZ値 |
GX_FORCE_INLINE GxVector3 & GxVector3::operator/= | ( | f32 | scalar | ) |
スカラ除算代入
scalar | [in] スカラ |
代入
vector | [in] XYZW値 |
GX_FORCE_INLINE f32 & GxVector3::operator[] | ( | u32 | i | ) |
配列
i | [in] インデックス |
GX_FORCE_INLINE const f32 & GxVector3::operator[] | ( | u32 | i | ) | const |
const配列
i | [in] インデックス |
GX_FORCE_INLINE const GxVector3 & GxVector3::rotate | ( | const GxQuaternion & | quaternion | ) |
回転する
quaternion | [in] クォータニオン |
GX_FORCE_INLINE void GxVector3::setLength | ( | f32 | length | ) |
長さを設定
length | [in] 長さ |
GX_FORCE_INLINE void GxVector3::setLengthEx | ( | f32 | length | ) |
長さを設定(長さ0に対応)
length | [in] 長さ |
GX_FORCE_INLINE void GxVector3::setXY | ( | const GxVector3 & | vector | ) |
XY要素のベクトルを設定
vector | [in] ベクトル |
GX_FORCE_INLINE void GxVector3::setXZ | ( | const GxVector3 & | vector | ) |
XZ要素のベクトルを設定
vector | [in] ベクトル |
GX_FORCE_INLINE void GxVector3::setYZ | ( | const GxVector3 & | vector | ) |
YZ要素のベクトルを設定
vector | [in] ベクトル |
GX_FORCE_INLINE const GxVector3 & GxVector3::subScalar | ( | f32 | scalar | ) |
スカラ減算
scalar | [in] スカラ |
ベクトル減算
vector | [in] ベクトル |
GX_FORCE_INLINE const GxVector3 & GxVector3::transform | ( | const GxMatrix44 & | matrix | ) |
w=1.0として座標変換
matrix | [in] 行列 |
GX_FORCE_INLINE const GxVector3 & GxVector3::transform | ( | const GxMatrixAffine & | matrix | ) |
w=1.0として座標変換
matrix | [in] 行列 |
GX_FORCE_INLINE const GxVector3 & GxVector3::transformCoord | ( | const GxMatrix44 & | matrix | ) |
w=1.0として座標変換後、wで割る
matrix | [in] 行列 |
GX_FORCE_INLINE const GxVector3 & GxVector3::transformNormal | ( | const GxMatrix44 & | matrix | ) |
w=0.0として座標変換
matrix | [in] 行列 |
GX_FORCE_INLINE const GxVector3 & GxVector3::transformNormal | ( | const GxMatrixAffine & | matrix | ) |
w=0.0として座標変換
matrix | [in] 行列 |
不一致
vector0 | [in] XYZ値 |
vector1 | [in] XYZ値 |
スカラ乗算
vector | [in] XYZ値 |
scalar | [in] スカラ |
|
friend |
ベクトル乗算
vector0 | [in] XYZ値 |
vector1 | [in] XYZ値 |
スカラ乗算
scalar | [in] スカラ |
vector | [in] XYZ値 |
スカラ加算
vector | [in] XYZ値 |
scalar | [in] スカラ |
|
friend |
ベクトル加算
vector0 | [in] XYZ値 |
vector1 | [in] XYZ値 |
スカラ減算
vector | [in] XYZ値 |
scalar | [in] スカラ |
|
friend |
ベクトル減算
vector0 | [in] XYZ値 |
vector1 | [in] XYZ値 |
スカラ除算
vector | [in] XYZ値 |
scalar | [in] スカラ |
|
friend |
ベクトル除算
vector0 | [in] XYZ値 |
vector1 | [in] XYZ値 |
一致
vector0 | [in] XYZ値 |
vector1 | [in] XYZ値 |