一般的な数学関数と定数をまとめたモジュールです。 More...
#include <MathUtils.h>
Static Public Member Functions | |
static float | ToRadians (float d) |
度をラジアンに変換します。 | |
static float | ToDegrees (float r) |
ラジアンを度に変換します。 | |
static float | Clamp (float value, float minValue, float maxValue) |
値を指定された範囲内に制限します。 | |
static float | Clamp01 (float value) |
値を0.0~1.0の範囲内に制限します。 | |
static unsigned int | NextPow2 (unsigned int value) |
指定値以上の最小の 2 のべき乗数を返します。 | |
static bool | EqualsFloat (float value1, float value2) |
誤差を考慮し、浮動小数点の比較を行います。 | |
static bool | IsNaN (float value) |
値が NaN(非数) かを判定します。 | |
static bool | IsNaN (double value) |
値が NaN(非数) かを判定します。 | |
static bool | IsInf (float value) |
値が無限大かを判定します。 | |
static bool | IsInf (double value) |
値が無限大かを判定します。 | |
static bool | IsNaNOrInf (float value) |
値が NaN(非数) または 無限大 かを判定します。 | |
static bool | IsNaNOrInf (double value) |
値が NaN(非数) または 無限大 かを判定します。 | |
static float | QuadAccel (float p, float v, float a, float t) |
等加速度運動の式で値を計算します。 | |
static float | Lerp (float v1, float v2, float t) |
2つの値の間を線形補完します。 | |
static float | Hermite (float v1, float a1, float v2, float a2, float t) |
エルミートスプライン補間を実行します。 | |
static float | CatmullRom (float v1, float v2, float v3, float v4, float t) |
Catmull-Rom 補間を実行します。 | |
Static Public Attributes | |
static const float | PI |
円周率 (3.14159265...) | |
static const float | PIOver2 |
円周率 / 2 |
一般的な数学関数と定数をまとめたモジュールです。
static float Lumino::Math::CatmullRom | ( | float | v1, |
float | v2, | ||
float | v3, | ||
float | v4, | ||
float | t | ||
) | [static] |
Catmull-Rom 補間を実行します。
[in] | v1 | : 1番目の位置 |
[in] | v2 | : 2番目の位置 (t = 0.0 のときの値) |
[in] | v3 | : 3番目の位置 (t = 1.0 のときの値) |
[in] | v4 | : 4番目の位置 |
[in] | t | : 加重係数 |
t は通常、0.0~1.0 を指定します。
static float Lumino::Math::Hermite | ( | float | v1, |
float | a1, | ||
float | v2, | ||
float | a2, | ||
float | t | ||
) | [static] |
エルミートスプライン補間を実行します。
[in] | v1 | : 開始値 |
[in] | a1 | : 開始値の接線の傾き(速度) |
[in] | v2 | : 終了値 |
[in] | a2 | : 終了値の接線の傾き(速度) |
[in] | t | : 加重係数 |
t は通常、0.0~1.0 を指定します。
static float Lumino::Math::Lerp | ( | float | v1, |
float | v2, | ||
float | t | ||
) | [static] |
2つの値の間を線形補完します。
[in] | v1 | : 開始値 |
[in] | v2 | : 終了値 |
[in] | t | : 加重係数 |
t は通常、0.0~1.0 を指定します。
static float Lumino::Math::QuadAccel | ( | float | p, |
float | v, | ||
float | a, | ||
float | t | ||
) | [static] |
等加速度運動の式で値を計算します。
[in] | p | : 開始値 |
[in] | v | : 初速度 |
[in] | a | : 加速度 |
[in] | t | : 時間 |