1#if !defined(__FK_BOUNDARY_HEADER__)
2#define __FK_BOUNDARY_HEADER__
11 class fk_IndexFaceSet;
67#if !defined(FK_DOXYGEN_USER_PROCESS)
72 std::unique_ptr<fk_Color> bLineColor, bIntLineColor;
76 std::unique_ptr<fk_Vector> bSpherePos;
77 std::unique_ptr<fk_Vector> bAABBMin, bAABBMax;
78 std::unique_ptr<fk_Vector> bOBBMin, bOBBMax;
79 std::unique_ptr<fk_Vector> bCapSPos, bCapEPos;
82 std::unique_ptr<fk_IndexFaceSet> bSphere;
83 std::unique_ptr<fk_IndexFaceSet> bAABB;
84 std::unique_ptr<fk_IndexFaceSet> bOBB;
85 std::unique_ptr<fk_IndexFaceSet> bCapsule;
608#if !defined(FK_DOXYGEN_USER_PROCESS)
613 std::unique_ptr<Member> _m;
614 void MakeAABBShape();
境界ボリュームを管理するクラス
Definition Boundary.h:65
virtual ~fk_Boundary()
デストラクタ
std::tuple< fk_Vector, fk_Vector > getAABBMaxMin(void)
軸平行境界ボックス (AABB) 最大最小取得関数
double getCapsuleRadius(void)
カプセル型領域規定距離取得関数
fk_Vector getCapsuleEndPos(void)
カプセル型中心軸終点取得関数
fk_Color * getBLineColor(void)
境界ボリューム非干渉描画色取得関数
void setOBBSize(fk_Vector size)
有向境界ボックス (OBB) サイズ設定関数2
void setOBBMax(fk_Vector v)
有向境界ボックス (OBB) 最大値側設定関数
void setCapsuleRadius(double r)
カプセル型領域規定距離設定関数
std::tuple< fk_Vector, fk_Vector > getOBBMaxMin(void)
有向境界ボックス (OBB) 最大最小取得関数
fk_Vector getOBBMax(void)
有向境界ボックス (OBB) 最大値側取得関数
void setSpherePos(fk_Vector pos)
境界球位置設定関数
fk_Vector getAABBMin(void)
軸平行境界ボックス (AABB) 最小値側取得関数
double getBLineWidth(void)
境界ボリューム描画線幅取得関数
std::tuple< fk_Vector, fk_Vector > getCapsulePos(void)
カプセル型中心軸両端点取得関数
void setOBBMin(fk_Vector v)
有向境界ボックス (OBB) 最小値側設定関数
fk_BoundaryMode getBMode(void)
境界ボリューム選択状態参照関数
double getCapsuleLength(void)
カプセル型中心軸長取得関数
void setCapsuleStartPos(fk_Vector argP)
カプセル型中心軸始点設定関数
void setAABBMaxMin(fk_Vector max, fk_Vector min)
軸平行境界ボックス (AABB) 最大最小設定関数
void setAABBMax(fk_Vector v)
軸平行境界ボックス (AABB) 最大値側設定関数
fk_Color * getBIntLineColor(void)
境界ボリューム干渉状態描画色取得関数
void setAABBSize(fk_Vector size)
軸平行境界ボックス (AABB) サイズ設定関数2
fk_Vector getCapsuleStartPos(void)
カプセル型中心軸始点取得関数
void setBLineWidth(double width)
境界ボリューム描画線幅設定関数
void setAABBSize(double x, double y, double z)
軸平行境界ボックス (AABB) サイズ設定関数1
void setBIntLineColor(fk_Color col)
境界ボリューム干渉状態描画色設定関数
void setAABBMin(fk_Vector v)
軸平行境界ボックス (AABB) 最小値側設定関数
fk_Vector getSpherePos(void)
境界球位置参照関数
fk_Vector getAABBMax(void)
軸平行境界ボックス (AABB) 最大値側取得関数
void setOBBSize(double x, double y, double z)
有向境界ボックス (OBB) サイズ設定関数1
bool getBDrawToggle(void)
境界ボリューム描画有無取得関数
fk_Vector getOBBMin(void)
有向境界ボックス (OBB) 最小値側取得関数
void setSphere(double r)
境界球半径設定関数
void setCapsule(fk_Vector sPos, fk_Vector ePos, double r)
カプセル型設定関数
void setOBBMaxMin(fk_Vector max, fk_Vector min)
有向境界ボックス (OBB) 最大最小設定関数
fk_Boundary(fk_Type)
コンストラクタ
void setBMode(fk_BoundaryMode mode)
境界ボリューム選択関数
void setBDrawToggle(bool mode)
境界ボリューム描画有無設定関数
void setCapsuleEndPos(fk_Vector argP)
カプセル型中心軸終点設定関数
double getSphere(void)
境界球半径参照関数
fk_Vector getAABBSize(void)
軸平行境界ボックス (AABB) サイズ取得関数
void setBLineColor(fk_Color col)
境界ボリューム非干渉描画色設定関数
fk_Vector getOBBSize(void)
有向境界ボックス (OBB) サイズ取得関数
RGB色を管理するクラス
Definition Color.h:21
インデックスフェースセットによる任意形状を生成、管理するクラス
Definition IndexFace.h:68
モデルの位置や姿勢を管理するクラス
Definition MatAdmin.h:52
3次元ベクトルを管理するクラス
Definition Vector.h:45
Fine Kernel Toolkit 名前空間
Definition Angle.h:6
fk_BoundaryMode
境界ボリュームのタイプを表す列挙型
Definition Boundary.h:14
@ AABB
軸平行境界ボックス (Axis Aligned Bounding Box)
@ OBB
有向境界ボックス (Oriented Bounding Box)
fk_Type
オブジェクトインスタンスのタイプを表す列挙型
Definition Base.h:43