#include <OrientedBox.h>
Public Member Functions | |
OrientedBox () | |
コンストラクタ | |
OrientedBox (const Matrix33 &rotationMatrix, const Vector3 ¢er, const Vector3 &extent) | |
コンストラクタ | |
OrientedBox (float rotation00, float rotation01, float rotation02, float rotation10, float rotation11, float rotation12, float rotation20, float rotation21, float rotation22, float centerX, float centerY, float centerZ, float extentX, float extentY, float extentZ) | |
コンストラクタ | |
OrientedBox (const float *const source) | |
コンストラクタ | |
void | set (const Matrix33 &rotationMatrix, const Vector3 ¢er, const Vector3 &extent) |
値の設定 | |
void | set (float rotation00, float rotation01, float rotation02, float rotation10, float rotation11, float rotation12, float rotation20, float rotation21, float rotation22, float centerX, float centerY, float centerZ, float extentX, float extentY, float extentZ) |
値の設定 | |
void | set (const float *const source) |
値の設定 | |
void | setRotationMatrix (const Matrix33 &rotationMatrix) |
回転行列の設定 | |
void | setRotationXYZ (const Vector3 rotationXYZ) |
XYZ回転の設定. | |
void | setRotationQuaternion (const Quaternion &rotationQuaternion) |
四元数回転の設定 | |
void | setCenter (const Vector3 ¢er) |
中心の設定 | |
void | setExtent (const Vector3 &extent) |
大きさの設定 | |
const Matrix33 & | getRotationMatrix () const |
回転行列の取得 | |
const Vector3 & | getCenter () const |
中心の取得 | |
const Vector3 & | getExtent () const |
大きさの取得 | |
Vector3 | getSize () const |
サイズの取得 | |
Vector3 | getAxis (int index) const |
軸の取得 | |
Vector3 | getAxisX () const |
X軸の取得. | |
Vector3 | getAxisY () const |
Y軸の取得. | |
Vector3 | getAxisZ () const |
Z軸の取得. | |
Vector3 | getExtendedAxis (int index) const |
大きさを適用した軸の取得 | |
Vector3 | getExtendedAxisX () const |
大きさを適用したX軸の取得 | |
Vector3 | getExtendedAxisY () const |
大きさを適用したY軸の取得 | |
Vector3 | getExtendedAxisZ () const |
大きさを適用したZ軸の取得 | |
float | getEffectiveDiameter (const Vector3 &direction) const |
実効直径の取得 | |
float | getEffectiveRadius (const Vector3 &direction) const |
実効半径の取得 | |
Vector3 | getCorner (int index) const |
コーナーの取得 | |
void | getCornerArray (Vector3 corner[8]) const |
コーナー配列の取得 | |
bool | isZero () const |
ゼロボックスかどうか | |
bool | isUnit () const |
単位ボックスかどうか | |
OrientedBox | transform (const Matrix33 &matrix) const |
トランスフォーム | |
OrientedBox | transform (const Matrix34 &matrix) const |
トランスフォーム | |
OrientedBox | transform (const Matrix44 &matrix) const |
トランスフォーム | |
AxisAlignedBox | scaledTransform (const Matrix33 &matrix) const |
スケール有りトランスフォーム | |
AxisAlignedBox | scaledTransform (const Matrix34 &matrix) const |
スケール有りトランスフォーム | |
AxisAlignedBox | scaledTransform (const Matrix44 &matrix) const |
スケール有りトランスフォーム | |
float | getDistance (const Vector3 &point) const |
点距離 | |
float | getSquaredDistance (const Vector3 &point) const |
点距離の二乗 | |
float | getDistance (const AxisAlignedBox &axisAlignedBox) const |
軸沿いボックス距離 | |
float | getSquaredDistance (const AxisAlignedBox &axisAlignedBox) const |
軸沿いボックス距離の二乗 | |
float | getDistance (const Capsule &capsule) const |
カプセル距離 | |
float | getSquaredDistance (const Capsule &capsule) const |
カプセル距離の二乗 | |
float | getDistance (const Cone &cone) const |
コーン距離 | |
float | getSquaredDistance (const Cone &cone) const |
コーン距離の二乗 | |
float | getDistance (const Line &line) const |
ライン距離 | |
float | getSquaredDistance (const Line &line) const |
ライン距離の二乗 | |
float | getDistance (const OrientedBox &orientedBox) const |
指向性ボックス距離 | |
float | getSquaredDistance (const OrientedBox &orientedBox) const |
指向性ボックス距離の二乗 | |
float | getDistance (const Plane &plane) const |
平面距離 | |
float | getSquaredDistance (const Plane &plane) const |
平面距離の二乗 | |
float | getDistance (const Ray &ray) const |
レイ距離 | |
float | getSquaredDistance (const Ray &ray) const |
レイ距離の二乗 | |
float | getDistance (const Segment &segment) const |
セグメント距離 | |
float | getSquaredDistance (const Segment &segment) const |
セグメント距離の二乗 | |
float | getDistance (const Sphere &sphere) const |
球距離 | |
float | getSquaredDistance (const Sphere &sphere) const |
球距離の二乗 | |
float | getDistance (const Triangle &triangle) const |
三角距離 | |
float | getSquaredDistance (const Triangle &triangle) const |
三角距離の二乗 | |
bool | intersect (const Vector3 &point) const |
点交差 | |
bool | intersect (const AxisAlignedBox &axisAlignedBox) const |
軸沿いボックス交差 | |
bool | intersect (const Capsule &capsule) const |
カプセル交差 | |
bool | intersect (const Cone &cone) const |
コーン交差 | |
bool | intersect (const Line &line) const |
ライン交差 | |
bool | intersect (const OrientedBox &orientedBox) const |
指向性ボックス交差 | |
bool | intersect (const Plane &plane) const |
平面交差 | |
bool | intersect (const Ray &ray) const |
レイ交差 | |
bool | intersect (const Segment &segment) const |
セグメント交差 | |
bool | intersect (const Sphere &sphere) const |
球交差 | |
bool | intersect (const Triangle &triangle) const |
三角交差 | |
bool | operator== (const OrientedBox &target) const |
指向性ボックスが同じかどうか | |
bool | epsilonEquals (const OrientedBox &target, float epsilon) const |
指向性ボックスが同じかどうか | |
bool | operator!= (const OrientedBox &target) const |
指向性ボックスが同じでないかどうか | |
bool | notEpsilonEquals (const OrientedBox &target, float epsilon) const |
指向性ボックスが同じでないかどうか | |
String | toString () const |
文字列化 | |
Static Public Attributes | |
const OrientedBox | zero |
ゼロボックス | |
const OrientedBox | unit |
単位ボックス |
このクラスは継承しないで下さい。
Definition at line 51 of file OrientedBox.h.
|
コンストラクタ このコンストラクタは初期値の設定を行わないため値は不定です。 Definition at line 70 of file OrientedBox.h. |
|
コンストラクタ
Definition at line 78 of file OrientedBox.h. References Assert, Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
コンストラクタ
Definition at line 102 of file OrientedBox.h. References Assert, Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
コンストラクタ
Definition at line 120 of file OrientedBox.h. References Assert, Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
指向性ボックスが同じかどうか
Definition at line 828 of file OrientedBox.h. References Assert, center_, Lamp::Vector3::epsilonEquals(), Lamp::Matrix33::epsilonEquals(), extent_, and rotationMatrix_. |
|
軸の取得
Definition at line 266 of file OrientedBox.h. References Assert, and Lamp::Matrix33::m. |
|
X軸の取得.
Definition at line 276 of file OrientedBox.h. References Lamp::Matrix33::m00, Lamp::Matrix33::m01, and Lamp::Matrix33::m02. |
|
Y軸の取得.
Definition at line 285 of file OrientedBox.h. References Lamp::Matrix33::m10, Lamp::Matrix33::m11, and Lamp::Matrix33::m12. |
|
Z軸の取得.
Definition at line 294 of file OrientedBox.h. References Lamp::Matrix33::m20, Lamp::Matrix33::m21, and Lamp::Matrix33::m22. |
|
中心の取得
Definition at line 246 of file OrientedBox.h. Referenced by Lamp::OrientedBoxIntersection::intersect(). |
|
コーナーの取得 以下の図のインデックスに沿ってコーナーを取得します。 0が中心で4が大きさです。
Definition at line 382 of file OrientedBox.h. References Assert, ErrorOut, getExtendedAxisX(), getExtendedAxisY(), and getExtendedAxisZ(). |
|
コーナー配列の取得 以下の図のインデックスに沿ってコーナーを取得します。 0が中心で4が大きさです。
Definition at line 427 of file OrientedBox.h. References getExtendedAxisX(), getExtendedAxisY(), and getExtendedAxisZ(). Referenced by scaledTransform(). |
|
三角距離
Definition at line 708 of file OrientedBox.h. References getSquaredDistance(). |
|
球距離
Definition at line 691 of file OrientedBox.h. References getSquaredDistance(). |
|
セグメント距離
Definition at line 674 of file OrientedBox.h. References getSquaredDistance(). |
|
レイ距離
Definition at line 657 of file OrientedBox.h. References getSquaredDistance(). |
|
平面距離
Definition at line 122 of file OrientedBox.cpp. |
|
指向性ボックス距離
Definition at line 622 of file OrientedBox.h. References getSquaredDistance(). |
|
ライン距離
Definition at line 605 of file OrientedBox.h. References getSquaredDistance(). |
|
コーン距離
Definition at line 588 of file OrientedBox.h. References getSquaredDistance(). |
|
カプセル距離
Definition at line 571 of file OrientedBox.h. References getSquaredDistance(). |
|
軸沿いボックス距離
Definition at line 554 of file OrientedBox.h. References getSquaredDistance(). |
|
点距離
Definition at line 537 of file OrientedBox.h. References getSquaredDistance(). Referenced by getSquaredDistance(). |
|
実効直径の取得
Definition at line 346 of file OrientedBox.h. References Lamp::Vector3::dotProduct(). Referenced by getEffectiveRadius(), and Lamp::OrientedBoxIntersection::intersect(). |
|
実効半径の取得
Definition at line 357 of file OrientedBox.h. References getEffectiveDiameter(). |
|
大きさを適用した軸の取得
Definition at line 305 of file OrientedBox.h. References Lamp::Vector3::array, Assert, and Lamp::Matrix33::m. |
|
大きさを適用したX軸の取得
Definition at line 317 of file OrientedBox.h. References Lamp::Matrix33::m00, Lamp::Matrix33::m01, Lamp::Matrix33::m02, and Lamp::Vector3::x. Referenced by getCorner(), and getCornerArray(). |
|
大きさを適用したY軸の取得
Definition at line 326 of file OrientedBox.h. References Lamp::Matrix33::m10, Lamp::Matrix33::m11, Lamp::Matrix33::m12, and Lamp::Vector3::y. Referenced by getCorner(), and getCornerArray(). |
|
大きさを適用したZ軸の取得
Definition at line 335 of file OrientedBox.h. References Lamp::Matrix33::m20, Lamp::Matrix33::m21, Lamp::Matrix33::m22, and Lamp::Vector3::z. Referenced by getCorner(), and getCornerArray(). |
|
大きさの取得
Definition at line 252 of file OrientedBox.h. |
|
回転行列の取得
Definition at line 240 of file OrientedBox.h. |
|
サイズの取得
Definition at line 258 of file OrientedBox.h. |
|
三角距離の二乗
Definition at line 142 of file OrientedBox.cpp. |
|
球距離の二乗
Definition at line 137 of file OrientedBox.cpp. |
|
セグメント距離の二乗
Definition at line 132 of file OrientedBox.cpp. |
|
レイ距離の二乗
Definition at line 127 of file OrientedBox.cpp. |
|
平面距離の二乗
Definition at line 646 of file OrientedBox.h. References getDistance(). |
|
指向性ボックス距離の二乗
Definition at line 116 of file OrientedBox.cpp. |
|
ライン距離の二乗
Definition at line 111 of file OrientedBox.cpp. |
|
コーン距離の二乗
Definition at line 106 of file OrientedBox.cpp. |
|
カプセル距離の二乗
Definition at line 101 of file OrientedBox.cpp. |
|
軸沿いボックス距離の二乗
Definition at line 95 of file OrientedBox.cpp. |
|
点距離の二乗
Definition at line 90 of file OrientedBox.cpp. Referenced by getDistance(). |
|
三角交差
Definition at line 199 of file OrientedBox.cpp. |
|
球交差
Definition at line 194 of file OrientedBox.cpp. |
|
セグメント交差
Definition at line 189 of file OrientedBox.cpp. |
|
レイ交差
Definition at line 184 of file OrientedBox.cpp. |
|
平面交差
Definition at line 179 of file OrientedBox.cpp. |
|
指向性ボックス交差
Definition at line 174 of file OrientedBox.cpp. |
|
ライン交差
Definition at line 169 of file OrientedBox.cpp. |
|
コーン交差
Definition at line 164 of file OrientedBox.cpp. |
|
カプセル交差
Definition at line 159 of file OrientedBox.cpp. |
|
軸沿いボックス交差
Definition at line 154 of file OrientedBox.cpp. |
|
点交差
Definition at line 149 of file OrientedBox.cpp. |
|
単位ボックスかどうか
Definition at line 457 of file OrientedBox.h. References Lamp::Vector3::epsilonEquals(). |
|
ゼロボックスかどうか
Definition at line 449 of file OrientedBox.h. References Lamp::Vector3::epsilonEquals(). |
|
指向性ボックスが同じでないかどうか
Definition at line 853 of file OrientedBox.h. References Assert, center_, extent_, Lamp::Vector3::notEpsilonEquals(), Lamp::Matrix33::notEpsilonEquals(), and rotationMatrix_. |
|
指向性ボックスが同じでないかどうか
Definition at line 842 of file OrientedBox.h. References center_, extent_, and rotationMatrix_. |
|
指向性ボックスが同じかどうか
Definition at line 817 of file OrientedBox.h. References center_, extent_, and rotationMatrix_. |
|
スケール有りトランスフォーム
Definition at line 77 of file OrientedBox.cpp. References getCornerArray(), Lamp::AxisAlignedBox::merge(), and Lamp::AxisAlignedBox::set(). |
|
スケール有りトランスフォーム
Definition at line 66 of file OrientedBox.cpp. References getCornerArray(), Lamp::AxisAlignedBox::merge(), and Lamp::AxisAlignedBox::set(). |
|
スケール有りトランスフォーム
Definition at line 55 of file OrientedBox.cpp. References getCornerArray(), Lamp::AxisAlignedBox::merge(), and Lamp::AxisAlignedBox::set(). |
|
値の設定
Definition at line 182 of file OrientedBox.h. References Assert, Lamp::Vector3::set(), Lamp::Matrix33::set(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
値の設定
Definition at line 164 of file OrientedBox.h. References Assert, Lamp::Vector3::set(), Lamp::Matrix33::set(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
値の設定
Definition at line 138 of file OrientedBox.h. References Assert, Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
中心の設定
Definition at line 221 of file OrientedBox.h. |
|
大きさの設定
Definition at line 228 of file OrientedBox.h. References Assert, Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
回転行列の設定
Definition at line 196 of file OrientedBox.h. |
|
四元数回転の設定
Definition at line 212 of file OrientedBox.h. References Lamp::Matrix33::setRotationQuaternion(). |
|
XYZ回転の設定.
Definition at line 204 of file OrientedBox.h. References Lamp::Matrix33::setRotationXYZ(). |
|
文字列化
Definition at line 869 of file OrientedBox.h. References Lamp::String::format(), Lamp::Matrix33::m00, Lamp::Matrix33::m01, Lamp::Matrix33::m02, Lamp::Matrix33::m10, Lamp::Matrix33::m11, Lamp::Matrix33::m12, Lamp::Matrix33::m20, Lamp::Matrix33::m21, Lamp::Matrix33::m22, Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
トランスフォーム
Definition at line 497 of file OrientedBox.h. References center_, extent_, rotationMatrix_, and Lamp::Matrix33::set(). |
|
トランスフォーム
Definition at line 482 of file OrientedBox.h. References center_, extent_, rotationMatrix_, and Lamp::Matrix33::set(). |
|
トランスフォーム
Definition at line 469 of file OrientedBox.h. References center_, extent_, and rotationMatrix_. |