#include <Plane.h>
Public Member Functions | |
Plane () | |
コンストラクタ | |
Plane (const Vector3 &normal, float constant) | |
コンストラクタ | |
Plane (float normalX, float normalY, float normalZ, float constant) | |
コンストラクタ | |
Plane (const float *const source) | |
コンストラクタ | |
Plane (const Vector3 &vertex0, const Vector3 &vertex1, const Vector3 &vertex2) | |
コンストラクタ | |
Plane (const Vector3 &normal, const Vector3 &vertex) | |
コンストラクタ | |
void | set (const Vector3 &normal, float constant) |
値の設定 | |
void | set (float normalX, float normalY, float normalZ, float constant) |
値の設定 | |
void | set (const float *const source) |
値の設定 | |
void | set (const Vector3 &vertex0, const Vector3 &vertex1, const Vector3 &vertex2) |
値の設定 | |
void | set (const Vector3 &normal, const Vector3 &vertex) |
値の設定 | |
void | setNormal (float normalX, float normalY, float normalZ) |
法線の設定 | |
void | setNormal (const Vector3 &normal) |
法線の設定 | |
void | setConstant (float constant) |
定数の設定 | |
const Plane & | setLength (float length) |
長さの設定 | |
const Vector3 & | getNormal () const |
法線の取得 | |
float | getConstant () const |
定数の取得 | |
float | getLength () const |
長さの取得 | |
float | getSquaredLength () const |
長さの二乗を取得 | |
const Plane & | normalize () |
正規化 | |
float | dotProduct (const Vector3 &vector) const |
内積を行う | |
bool | isZero () const |
ゼロ平面かどうか | |
bool | isUnit () const |
単位平面かどうか | |
Plane | transform (const Matrix33 &matrix) const |
トランスフォーム | |
Plane | transform (const Matrix34 &matrix) const |
トランスフォーム | |
Plane | transform (const Matrix44 &matrix) const |
トランスフォーム | |
Plane | scaledTransform (const Matrix33 &matrix) const |
スケール有りトランスフォーム | |
Plane | scaledTransform (const Matrix34 &matrix) const |
スケール有りトランスフォーム | |
Plane | 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, float range=Math::epsilon) 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 Plane &target) const |
平面が同じかどうか | |
bool | epsilonEquals (const Plane &target, float epsilon) const |
平面が同じかどうか | |
bool | operator!= (const Plane &target) const |
平面が同じでないかどうか | |
bool | notEpsilonEquals (const Plane &target, float epsilon) const |
平面が同じでないかどうか | |
String | toString () const |
文字列化 | |
Static Public Attributes | |
const Plane | zero |
ゼロ平面 | |
const Plane | unitX |
X単位平面. | |
const Plane | unitY |
Y単位平面. | |
const Plane | unitZ |
Z単位平面. |
このクラスは継承しないで下さい。
Definition at line 51 of file Plane.h.
|
コンストラクタ このコンストラクタは初期値の設定を行わないため値は不定です。 |
|
コンストラクタ
|
|
コンストラクタ
|
|
コンストラクタ
|
|
コンストラクタ
Definition at line 114 of file Plane.h. References Lamp::Vector3::dotProduct(). |
|
コンストラクタ
Definition at line 125 of file Plane.h. References Lamp::Vector3::dotProduct(). |
|
内積を行う
Definition at line 269 of file Plane.h. References Lamp::Vector3::dotProduct(). Referenced by Lamp::PlaneDistance::distance(), and Lamp::AxisAlignedBoxIntersection::intersect(). |
|
平面が同じかどうか
Definition at line 698 of file Plane.h. References Assert, constant_, Lamp::Vector3::epsilonEquals(), and normal_. |
|
定数の取得
|
|
三角距離
|
|
球距離
|
|
セグメント距離
|
|
レイ距離
|
|
平面距離
|
|
指向性ボックス距離
|
|
ライン距離
|
|
コーン距離
|
|
カプセル距離
|
|
軸沿いボックス距離
|
|
点距離
Definition at line 61 of file Plane.cpp. Referenced by Lamp::Camera::clipping(), getSquaredDistance(), Lamp::PlaneIntersection::intersect(), Lamp::OrientedBoxIntersection::intersect(), and Lamp::LineIntersection::intersect(). |
|
長さの取得
Definition at line 242 of file Plane.h. References Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
法線の取得
Definition at line 230 of file Plane.h. Referenced by Lamp::PlaneIntersection::intersect(), Lamp::OrientedBoxIntersection::intersect(), and Lamp::LineIntersection::intersect(). |
|
三角距離の二乗
Definition at line 584 of file Plane.h. References getDistance(). |
|
球距離の二乗
Definition at line 566 of file Plane.h. References getDistance(). |
|
セグメント距離の二乗
Definition at line 548 of file Plane.h. References getDistance(). |
|
レイ距離の二乗
Definition at line 530 of file Plane.h. References getDistance(). |
|
平面距離の二乗
Definition at line 512 of file Plane.h. References getDistance(). |
|
指向性ボックス距離の二乗
Definition at line 494 of file Plane.h. References getDistance(). |
|
ライン距離の二乗
Definition at line 476 of file Plane.h. References getDistance(). |
|
コーン距離の二乗
Definition at line 458 of file Plane.h. References getDistance(). |
|
カプセル距離の二乗
Definition at line 440 of file Plane.h. References getDistance(). |
|
軸沿いボックス距離の二乗
Definition at line 422 of file Plane.h. References getDistance(). |
|
点距離の二乗
Definition at line 404 of file Plane.h. References getDistance(). |
|
長さの二乗を取得
Definition at line 251 of file Plane.h. References Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
三角交差
|
|
球交差
|
|
セグメント交差
|
|
レイ交差
|
|
平面交差
|
|
指向性ボックス交差
|
|
ライン交差
|
|
コーン交差
|
|
カプセル交差
|
|
軸沿いボックス交差
|
|
点交差
|
|
単位平面かどうか
Definition at line 286 of file Plane.h. References getLength(). Referenced by Lamp::PlaneDistance::distance(). |
|
ゼロ平面かどうか
Definition at line 278 of file Plane.h. References getLength(). |
|
正規化
Definition at line 263 of file Plane.h. References setLength(). |
|
平面が同じでないかどうか
Definition at line 720 of file Plane.h. References Assert, constant_, normal_, and Lamp::Vector3::notEpsilonEquals(). |
|
平面が同じでないかどうか
|
|
平面が同じかどうか
|
|
スケール有りトランスフォーム
Definition at line 377 of file Plane.h. References constant_, Lamp::Matrix44::getTranslation(), Lamp::Matrix33::invert(), normal_, Lamp::Matrix33::set(), and Lamp::Matrix33::transpose(). |
|
スケール有りトランスフォーム
Definition at line 360 of file Plane.h. References constant_, Lamp::Matrix34::getTranslation(), Lamp::Matrix33::invert(), normal_, Lamp::Matrix33::set(), and Lamp::Matrix33::transpose(). |
|
スケール有りトランスフォーム
Definition at line 345 of file Plane.h. References constant_, Lamp::Matrix33::invert(), normal_, and Lamp::Matrix33::transpose(). |
|
値の設定
Definition at line 182 of file Plane.h. References Lamp::Vector3::dotProduct(). |
|
値の設定
Definition at line 171 of file Plane.h. References Lamp::Vector3::dotProduct(). |
|
値の設定
Definition at line 160 of file Plane.h. References Lamp::Vector3::set(). |
|
値の設定
Definition at line 150 of file Plane.h. References Lamp::Vector3::set(). |
|
値の設定
Definition at line 138 of file Plane.h. Referenced by Lamp::Camera::clippingSetup(). |
|
定数の設定
|
|
長さの設定
Definition at line 213 of file Plane.h. References Assert, and Lamp::Vector3::getLength(). Referenced by normalize(). |
|
法線の設定
|
|
法線の設定
Definition at line 193 of file Plane.h. References Lamp::Vector3::set(). |
|
文字列化
Definition at line 734 of file Plane.h. References Lamp::String::format(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
トランスフォーム
Definition at line 327 of file Plane.h. References constant_, Lamp::Vector3::dotProduct(), Lamp::Matrix44::getTranslation(), Lamp::Matrix44::m00, Lamp::Matrix44::m01, Lamp::Matrix44::m02, Lamp::Matrix44::m10, Lamp::Matrix44::m11, Lamp::Matrix44::m12, Lamp::Matrix44::m20, Lamp::Matrix44::m21, Lamp::Matrix44::m22, Lamp::Matrix44::multiply33(), normal_, Lamp::Vector3::set(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
トランスフォーム
Definition at line 310 of file Plane.h. References constant_, Lamp::Vector3::dotProduct(), Lamp::Matrix34::getTranslation(), Lamp::Matrix34::m00, Lamp::Matrix34::m01, Lamp::Matrix34::m02, Lamp::Matrix34::m10, Lamp::Matrix34::m11, Lamp::Matrix34::m12, Lamp::Matrix34::m20, Lamp::Matrix34::m21, Lamp::Matrix34::m22, Lamp::Matrix34::multiply33(), normal_, Lamp::Vector3::set(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z. |
|
トランスフォーム
|