平面を定義します。
More...
#include <Plane.h>
List of all members.
Public Member Functions |
| Plane () |
| 各要素に 0.0 を設定してインスタンスを初期化します。
|
| Plane (float a, float b, float c, float d) |
| 各要素を指定してインスタンスを初期化します。
|
| Plane (const Vector3 &point, const Vector3 &normal) |
| 平面上の1点と法線を指定してインスタンスを初期化します。
|
| Plane (const Vector3 &point1, const Vector3 &point2, const Vector3 &point3) |
| 平面上の3点を指定してインスタンスを初期化します。
|
void | Normalize () |
| この平面を正規化します。
|
bool | CheckInside (const Vector3 &point) const |
| 点がこの平面の裏側にあるかを判定します。
|
bool | CheckInside (const Vector3 &point, float radius) const |
| 球がこの平面の裏側にあるかを判定します。
|
bool | Intersects (const Vector3 &start, const Vector3 &end, Vector3 *point) const |
| この平面と線分が交差するかを判定します。
|
void | Transform (const Matrix &mat) |
| 指定された行列を使用してこの平面を座標変換します。
|
void | Print (const char *format=NULL, FILE *stream=NULL) const |
| デバッグ用に文字列を標準出力します。
|
Static Public Member Functions |
static Plane | Normalize (const Plane &plane) |
| 正規化した平面を返します。
|
static float | Dot (const Plane &plane, const Vector4 &vec) |
| 平面と 4D ベクトルの内積を計算します。
|
static float | DotCoord (const Plane &plane, const Vector3 &vec) |
| 平面と 3D ベクトルの内積を計算します。(ベクトルの W を 1.0 として計算する)
|
static float | DotNormal (const Plane &plane, const Vector3 &vec) |
| 平面と 3D ベクトルの内積を計算します。(ベクトルの W を 0.0 として計算する)
|
static Plane | Transform (const Plane &plane, const Matrix &mat) |
| 指定された行列を使用して平面を座標変換します。
|
Public Attributes |
Vector3 | Normal |
| Plane の法線 ベクトル
|
float | D |
| 原点からの法線に沿った Plane の距離
|
Detailed Description
Constructor & Destructor Documentation
各要素を指定してインスタンスを初期化します。
- Parameters:
-
[in] | a | : 法線の X 成分 |
[in] | b | : 法線の Y 成分 |
[in] | c | : 法線の Z 成分 |
[in] | d | : 原点からの法線に沿った Plane の距離 |
平面上の1点と法線を指定してインスタンスを初期化します。
- Parameters:
-
[in] | point | : 平面上の点 |
[in] | normal | : 法線 (正規化済みであること) |
平面上の3点を指定してインスタンスを初期化します。
- Parameters:
-
[in] | point1 | : 平面上の点1 |
[in] | point2 | : 平面上の点2 |
[in] | point3 | : 平面上の点3 |
Member Function Documentation
点がこの平面の裏側にあるかを判定します。
- Parameters:
-
- Returns:
- true の場合、裏側にある
面は法線が伸びている方が表側です。
球がこの平面の裏側にあるかを判定します。
- Parameters:
-
[in] | point | : 球の中心座標 |
[in] | radius | : 球の半径 |
- Returns:
- true の場合、裏側にある (接触している場合も true)
面は法線が伸びている方が表側です。
平面と 4D ベクトルの内積を計算します。
- Parameters:
-
[in] | plane | : 処理の基になる平面 |
[in] | vec | : 処理の基になるベクトル |
平面と 3D ベクトルの内積を計算します。(ベクトルの W を 1.0 として計算する)
- Parameters:
-
[in] | plane | : 処理の基になる平面 |
[in] | vec | : 処理の基になるベクトル |
- Note:
- 戻り値が正の値である場合、点は平面の表側になります。
平面と 3D ベクトルの内積を計算します。(ベクトルの W を 0.0 として計算する)
- Parameters:
-
[in] | plane | : 処理の基になる平面 |
[in] | vec | : 処理の基になるベクトル |
この平面と線分が交差するかを判定します。
- Parameters:
-
[in] | start | : 線分の始点 |
[in] | end | : 線分の終点 |
[in] | point | : 交点の座標を格納するベクトルのポインタ |
- Returns:
- 交差する場合は true、平行な場合は false
この平面を正規化します。
面法線 Normal を正規化し、それに使用した係数を D にも適用します。
正規化した平面を返します。
- Parameters:
-
- Returns:
- 正規化された平面
面法線 Normal を正規化し、それに使用した係数を D にも適用します。
デバッグ用に文字列を標準出力します。
- Parameters:
-
[in] | format | : 書式指定文字列 |
[in] | stream | : 出力先ストリーム |
format が NULL の場合、書式は "%f, %f, %f, %f\n" を使用します。
指定された行列を使用してこの平面を座標変換します。
- Parameters:
-
- Returns:
- 変換された平面
指定された行列を使用して平面を座標変換します。
- Parameters:
-
[in] | plane | : 処理の基になる平面 |
[in] | mat | : 処理の基になる行列 |
- Returns:
- 変換された平面
The documentation for this class was generated from the following files:
- D:/Proj/Lumino.Math/include/Lumino/Math/Plane.h
- D:/Proj/Lumino.Math/include/Lumino/Math/Plane.inl