FineKernelToolKit 4.2.13
|
球を生成、管理するクラス [詳解]
#include <CLI/FK_CLI/include/Sphere_CLI.h>
公開メンバ関数 | |
fk_Sphere () | |
コンストラクタ1 | |
fk_Sphere (int div, double rad) | |
コンストラクタ2 | |
~fk_Sphere () | |
デストラクタ | |
!fk_Sphere () | |
ファイナライザ | |
void | SetDivide (int div) |
分割数設定メソッド | |
void | SetRadius (double rad) |
半径設定メソッド | |
void | SetScale (double scale) |
拡大縮小メソッド | |
![]() | |
fk_IndexFaceSet () | |
コンストラクタ | |
~fk_IndexFaceSet () | |
デストラクタ | |
!fk_IndexFaceSet () | |
ファイナライザ | |
bool | ReadSMFFile (String^ name) |
SMFファイル入力メソッド | |
bool | ReadVRMLFile (String^ name, bool materialFlg, bool solidFlg) |
VRML ファイル入力メソッド1 | |
bool | ReadVRMLFile (String^ name, bool materialFlg) |
VRML ファイル入力メソッド2 | |
bool | ReadVRMLFile (String^ name) |
VRML ファイル入力メソッド3 | |
bool | ReadSTLFile (String^ name, bool solidFlg, double tolerance) |
STL ファイル入力メソッド1 | |
bool | ReadSTLFile (String^ name, bool solidFlg) |
STL ファイル入力メソッド2 | |
bool | ReadSTLFile (String^ name) |
STL ファイル入力メソッド3 | |
bool | ReadHRCFile (String^ name) |
HRCファイル入力メソッド | |
bool | ReadRDSFile (String^ name, bool solidFlg) |
RDSファイル入力メソッド1 | |
bool | ReadRDSFile (String^ name) |
RDSファイル入力メソッド2 | |
bool | ReadDXFFile (String^ name, bool solidFlg) |
DXFファイル入力メソッド1 | |
bool | ReadDXFFile (String^ name) |
DXFファイル入力メソッド1 | |
bool | ReadMQOFile (String^ fileName, String^ objName, bool solidFlg, bool contFlg, bool materialFlg) |
MQOファイル入力メソッド1-1 | |
bool | ReadMQOFile (String^ fileName, String^ objName, bool solidFlg, bool contFlg) |
MQOファイル入力メソッド1-2 | |
bool | ReadMQOFile (String^ fileName, String^ objName, bool solidFlg) |
MQOファイル入力メソッド1-3 | |
bool | ReadMQOFile (String^ fileName, String^ objName) |
MQOファイル入力メソッド1-4 | |
bool | ReadMQOFile (String^ fileName, String^ objName, int materialID, bool solidFlg, bool contFlg, bool materialFlg) |
MQOファイル入力メソッド2-1 | |
bool | ReadMQOFile (String^ fileName, String^ objName, int materialID, bool solidFlg, bool contFlg) |
MQOファイル入力メソッド2-2 | |
bool | ReadMQOFile (String^ fileName, String^ objName, int materialID, bool solidFlg) |
MQOファイル入力メソッド2-3 | |
bool | ReadMQOFile (String^ fileName, String^ objName, int materialID) |
MQOファイル入力メソッド2-4 | |
bool | ReadMQOData (IEnumerable< Byte >^ buffer, String^ objName, bool solidFlg, bool contFlg, bool materialFlg) |
MQOデータ入力メソッド1-1 | |
bool | ReadMQOData (IEnumerable< Byte >^ buffer, String^ objName, bool solidFlg, bool contFlg) |
MQOデータ入力メソッド1-2 | |
bool | ReadMQOData (IEnumerable< Byte >^ buffer, String^ objName, bool solidFlg) |
MQOデータ入力メソッド1-3 | |
bool | ReadMQOData (IEnumerable< Byte >^ buffer, String^ objName) |
MQOデータ入力メソッド1-4 | |
bool | ReadMQOData (IEnumerable< Byte >^ buffer, String^ objName, int materialID, bool solidFlg, bool contFlg, bool materialFlg) |
MQOデータ入力メソッド2-1 | |
bool | ReadMQOData (IEnumerable< Byte >^ buffer, String^ objName, int materialID, bool solidFlg, bool contFlg) |
MQOデータ入力メソッド2-2 | |
bool | ReadMQOData (IEnumerable< Byte >^ buffer, String^ objName, int materialID, bool solidFlg) |
MQOデータ入力メソッド2-3 | |
bool | ReadMQOData (IEnumerable< Byte >^ buffer, String^ objName, int materialID) |
MQOデータ入力メソッド2-4 | |
bool | ReadD3DXFile (String^ fileName, String^ objName, bool solidFlg) |
DirectX (D3DX) ファイル入力メソッド1-1 | |
bool | ReadD3DXFile (String^ fileName, String^ objName) |
DirectX (D3DX) ファイル入力メソッド1-2 | |
bool | ReadD3DXFile (String^ fileName, String^ objName, int materialID, bool solidFlg) |
DirectX (D3DX) ファイル入力メソッド2-1 | |
bool | ReadD3DXFile (String^ fileName, String^ objName, int materialID) |
DirectX (D3DX) ファイル入力メソッド2-2 | |
bool | WriteVRMLFile (String^ fileName, fk_Material^ material, bool triFlg) |
VRML ファイル出力メソッド1-1 | |
bool | WriteVRMLFile (String^ fileName, fk_Material^ material) |
VRML ファイル出力メソッド1-2 | |
bool | WriteVRMLFile (String^ fileName) |
VRML ファイル出力メソッド1-3 | |
bool | WriteVRMLFile (String^ fileName, IEnumerable< double >^ time, IEnumerable< fk_Vector^>^ pos, fk_Material^ material, bool triFlg) |
VRML ファイル出力メソッド2-1 | |
bool | WriteVRMLFile (String^ fileName, IEnumerable< double >^ time, IEnumerable< fk_Vector^>^ pos, fk_Material^ material) |
VRML ファイル出力メソッド2-2 | |
bool | WriteVRMLFile (String^ fileName, IEnumerable< double >^ time, IEnumerable< fk_Vector^>^ pos) |
VRML ファイル出力メソッド2-3 | |
bool | WriteSTLFile (String^ fileName) |
STL ファイル出力メソッド | |
bool | WriteDXFFile (String^ fileName, bool triFlg) |
DXF ファイル出力メソッド1 | |
bool | WriteDXFFile (String^ fileName) |
DXF ファイル出力メソッド1 | |
bool | WriteMQOFile (String^ fileName) |
MQO ファイル出力メソッド | |
fk_Vector ^ | GetPosVec (int vertexID) |
頂点位置ベクトル参照メソッド | |
cli::array< int > ^ | GetFaceData (int faceID) |
頂点 ID 配列参照メソッド | |
int | GetFaceData (int faceID, int vertexNum) |
頂点 ID 参照メソッド | |
fk_Vector ^ | GetPNorm (int faceID, int order) |
面法線ベクトル取得メソッド1 | |
fk_Vector ^ | GetPNorm (int faceID) |
面法線ベクトル取得メソッド2 | |
fk_Vector ^ | GetVNorm (int vertexID, int order) |
頂点法線ベクトル取得メソッド1 | |
fk_Vector ^ | GetVNorm (int vertexID) |
頂点法線ベクトル取得メソッド2 | |
int | GetElemMaterialID (int faceID) |
マテリアルID取得メソッド | |
bool | MoveVPosition (int vertexID, fk_Vector^ pos, int order) |
頂点移動メソッド1-1 | |
bool | MoveVPosition (int vertexID, fk_Vector^ pos) |
頂点移動メソッド1-2 | |
bool | MoveVPosition (int vertexID, double x, double y, double z, int order) |
頂点移動メソッド2-1 | |
bool | MoveVPosition (int vertexID, double x, double y, double z) |
頂点移動メソッド2-1 | |
bool | MoveVPosition (int vertexID, IEnumerable< double >^ array, int order) |
頂点移動メソッド3-1 | |
bool | MoveVPosition (int vertexID, IEnumerable< double >^ array) |
頂点移動メソッド3-2 | |
void | MakeIFSet (int faceNum, int polyNum, IEnumerable< int >^ IFSet, int vertexNum, IEnumerable< fk_Vector^>^ posArray, int order) |
任意形状生成メソッド1 | |
void | MakeIFSet (int faceNum, int polyNum, IEnumerable< int >^ IFSet, int vertexNum, IEnumerable< fk_Vector^>^ posArray) |
任意形状生成メソッド2 | |
void | MakeIFSet (int faceNum, int polyNum, IEnumerable< int >^ IFSet, int vertexNum, IEnumerable< fk_Vector^>^ posArray, bool smoothMode) |
任意形状生成メソッド3 | |
void | MakeIFSet (int faceNum, int polyNum, IEnumerable< int >^ IFSet, int vertexNum, IEnumerable< fk_Vector^>^ posArray, bool smoothMode, int order) |
任意形状生成メソッド4 | |
void | MakeIFSet (List< List< int >^ >^ faceArray, List< fk_Vector^>^ posArray, bool smoothMode, int order) |
任意形状生成メソッド5 | |
void | MakeIFSet (List< List< int >^ >^ faceArray, List< fk_Vector^>^ posArray, bool smoothMode) |
任意形状生成メソッド6 | |
void | MakeIFSet (List< List< int >^ >^ faceArray, List< fk_Vector^>^ posArray) |
任意形状生成メソッド7 | |
bool | SetPNorm (int faceID, fk_Vector^ norm, int order) |
面法線ベクトル設定メソッド1 | |
bool | SetPNorm (int faceID, fk_Vector^ norm) |
面法線ベクトル設定メソッド2 | |
bool | SetVNorm (int vertexID, fk_Vector^ norm, int order) |
頂点法線ベクトル設定メソッド1 | |
bool | SetVNorm (int vertexID, fk_Vector^ norm) |
頂点法線ベクトル設定メソッド1 | |
bool | SetElemMaterialID (int faceID, int materialID) |
マテリアルID設定メソッド | |
void | Flush (void) |
法線ベクトル強制計算メソッド | |
void | MakeBlock (double x, double y, double z) |
直方体生成メソッド | |
void | SetBlockSize (double x, double y, double z) |
直方体辺長変更メソッド | |
void | SetBlockSize (double length, fk_Axis axis) |
直方体個別辺長設定メソッド | |
void | SetBlockScale (double scale) |
直方体全体拡大縮小メソッド | |
void | SetBlockScale (double scale, fk_Axis axis) |
直方体軸方向拡大縮小メソッド | |
void | SetBlockScale (double x, double y, double z) |
直方体軸方向個別拡大縮小メソッド | |
void | MakeCircle (int div, double rad) |
円形状生成メソッド | |
void | SetCircleRadius (double rad) |
円形状半径設定メソッド | |
void | SetCircleDivide (int div) |
円形状分割数設定メソッド | |
void | SetCircleScale (double scale) |
円形状拡大縮小メソッド | |
void | MakeSphere (int div, double rad) |
球形状生成メソッド | |
void | SetSphereRadius (double rad) |
球形状半径設定メソッド | |
void | SetSphereDivide (int div) |
球形状分割数設定メソッド | |
void | SetSphereScale (double scale) |
球形状拡大縮小メソッド | |
void | MakePrism (int div, double top, double bottom, double height) |
正多角柱(円柱)形状生成メソッド | |
void | SetPrismDivide (int div) |
正多角柱(円柱)角数設定メソッド | |
void | SetPrismTopRadius (double top) |
正多角柱(円柱)上面半径設定メソッド | |
void | SetPrismBottomRadius (double bottom) |
正多角柱(円柱)角数設定メソッド | |
void | SetPrismHeight (double height) |
正多角柱(円柱)高さ設定メソッド | |
void | MakeCone (int div, double rad, double height) |
正多角錐(円錐)形状生成メソッド | |
void | SetConeDivide (int div) |
正多角錐(円錐)角数設定メソッド | |
void | SetConeRadius (double rad) |
正多角錐(円錐)底面半径設定メソッド | |
void | SetConeHeight (double height) |
正多角錐(円錐)高さ設定メソッド | |
void | MakeCapsule (int div, double len, double rad) |
カプセル型形状生成メソッド | |
void | SetCapsuleSize (double len, double rad) |
カプセル型形状寸法設定メソッド | |
void | PutSolid (fk_Solid^ solid) |
fk_Solid 出力メソッド | |
void | CloneShape (fk_IndexFaceSet^ ifs) |
形状コピーメソッド | |
![]() | |
void | SetShaderAttribute (String^ name, int dim, IEnumerable< int >^ array) |
シェーダー内 attribute 変数設定メソッド1 | |
void | SetShaderAttribute (String^ name, int dim, IEnumerable< float >^ array) |
シェーダー内 attribute 変数設定メソッド2 | |
void | SetShaderAttribute (String^ name, int dim, IEnumerable< double >^ array) |
シェーダー内 attribute 変数設定メソッド3 | |
void | SetShaderAttribute (String^ name, int dim, IEnumerable< fk_Vector^>^ array) |
シェーダー内 attribute 変数設定メソッド4 | |
void | SetShaderAttribute (String^ name, int dim, IEnumerable< fk_TexCoord^>^ array) |
シェーダー内 attribute 変数設定メソッド5 | |
void | SetShaderAttribute (String^ name, int dim, IEnumerable< fk_HVector^>^ array) |
シェーダー内 attribute 変数設定メソッド6 | |
![]() | |
bool | SetAttrII (int key, int value) |
キーが int 型、値が int 型である属性設定メソッド | |
bool | SetAttrID (int key, double value) |
キーが int 型、値が double 型である属性設定メソッド | |
bool | SetAttrIS (int key, String^ value) |
キーが int 型、値が String 型である属性設定メソッド | |
bool | SetAttrSI (String^ key, int value) |
キーが String 型、値が int 型である属性設定メソッド | |
bool | SetAttrSD (String^ key, double value) |
キーが String 型、値が double 型である属性設定メソッド | |
bool | SetAttrSS (String ^ key, String^ value) |
キーが String 型、値が String 型である属性設定メソッド | |
int | GetAttrII (int key) |
キーが int 型、値が int 型である属性参照メソッド | |
double | GetAttrID (int key) |
キーが int 型、値が double 型である属性参照メソッド | |
String ^ | GetAttrIS (int key) |
キーが int 型、値が String 型である属性参照メソッド | |
int | GetAttrSI (String^ key) |
キーが String 型、値が int 型である属性参照メソッド | |
double | GetAttrSD (String^ key) |
キーが String 型、値が double 型である属性参照メソッド | |
String ^ | GetAttrSS (String^ key) |
キーが String 型、値が String 型である属性参照メソッド | |
bool | ExistAttrII (int key) |
キーが int 型、値が int 型である属性存在参照メソッド | |
bool | ExistAttrID (int key) |
キーが int 型、値が double 型である属性存在参照メソッド | |
bool | ExistAttrIS (int key) |
キーが int 型、値が String 型である属性存在参照メソッド | |
bool | ExistAttrSI (String^ key) |
キーが String 型、値が int 型である属性存在参照メソッド | |
bool | ExistAttrSD (String^ key) |
キーが String 型、値が double 型である属性存在参照メソッド | |
bool | ExistAttrSS (String^ key) |
キーが String 型、値が String 型である属性存在参照メソッド | |
bool | DeleteAttrII (int key) |
キーが int 型、値が int 型である属性消去メソッド | |
bool | DeleteAttrID (int key) |
キーが int 型、値が double 型である属性消去メソッド | |
bool | DeleteAttrIS (int key) |
キーが int 型、値が String 型である属性消去メソッド | |
bool | DeleteAttrSI (String^ key) |
キーが String 型、値が int 型である属性消去メソッド | |
bool | DeleteAttrSD (String^ key) |
キーが String 型、値が double 型である属性消去メソッド | |
bool | DeleteAttrSS (String^ key) |
キーが String 型、値が String 型である属性消去メソッド | |
その他の継承メンバ | |
![]() | |
int | PosSize [get] |
頂点数プロパティ | |
int | FaceSize [get] |
面数プロパティ | |
double | AnimationTime [set] |
アニメーション時間プロパティ | |
fk_BVHMotion^ | BVHMotion [set] |
BVHデータプロパティ | |
![]() | |
fk_RealShapeType^ | RealShapeType [get] |
形状データ構造プロパティ | |
球を生成、管理するクラス
このクラスは、形状として球を制御する機能を提供しています。
実際には、球を近似する3角形面集合として表現されています。 3角形面の数は分割数を \( d \) とした場合 \( 8d(d-1) \) 枚となります。 分割数が高いほど球としての描画精度は高くなりますが、 面数も多くなるため描画速度が低下することになります。 特に多くのオブジェクトを同時に配置する場合は注意が必要です。
初期状態では、中心を原点とするように配置されます。 このクラスは fk_IndexFaceSet クラスの派生クラスであり、 生成後に fk_IndexFaceSet クラスの機能によって頂点を移動することが可能です。
FK_CLI::fk_Sphere::fk_Sphere | ( | ) |
コンストラクタ1
分割数 2、半径 1 の球を生成します。
FK_CLI::fk_Sphere::fk_Sphere | ( | int | div, |
double | rad | ||
) |
コンストラクタ2
引数として、分割数と半径を入力できます。分割数の最小値は 2 です。
[in] | div | 分割数 |
[in] | rad | 半径 |
FK_CLI::fk_Sphere::~fk_Sphere | ( | ) |
デストラクタ
FK_CLI::fk_Sphere::!fk_Sphere | ( | ) |
ファイナライザ
void FK_CLI::fk_Sphere::SetDivide | ( | int | div | ) |
分割数設定メソッド
分割数を設定します。分割数の最小値は 2 です。
[in] | div | 分割数 |
void FK_CLI::fk_Sphere::SetRadius | ( | double | rad | ) |
半径設定メソッド
半径を設定します。
[in] | rad | 半径 |
void FK_CLI::fk_Sphere::SetScale | ( | double | scale | ) |
拡大縮小メソッド
球全体を与えられた倍率で拡大縮小します。
[in] | scale | 倍率 |