FineKernelToolKit  2.9.0
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義 ページ
Public メソッド | すべてのメンバ一覧
クラス fk_Block

直方体を生成、管理するクラス [詳細]

+ fk_Blockに対する継承グラフ
+ fk_Blockのコラボレーション図

Public メソッド

 fk_Block (double x=1.0, double y=1.0, double z=1.0)
 コンストラクタ [詳細]
 
virtual ~fk_Block ()
 デストラクタ [詳細]
 
void setSize (double x, double y, double z)
 各辺長設定関数 [詳細]
 
void setSize (double length, fk_Axis axis)
 個別辺長設定関数 [詳細]
 
void setScale (double scale)
 全体拡大縮小関数 [詳細]
 
void setScale (double scale, fk_Axis axis)
 軸方向拡大縮小関数 [詳細]
 
void setScale (double x, double y, double z)
 軸方向個別拡大縮小関数 [詳細]
 
- Public メソッド inherited from fk_IndexFaceSet
 fk_IndexFaceSet (void)
 コンストラクタ [詳細]
 
virtual ~fk_IndexFaceSet ()
 デストラクタ [詳細]
 
void cloneShape (fk_IndexFaceSet *ifs)
 形状コピー関数 [詳細]
 
bool readSMFFile (std::string fileName)
 SMFファイル入力関数 [詳細]
 
bool readVRMLFile (std::string fileName, bool materialFlg=true, bool solidFlg=true)
 VRML ファイル入力関数 [詳細]
 
bool readSTLFile (std::string fileName, bool solidFlg=true, double tolerance=1.0e-08)
 STL ファイル入力関数 [詳細]
 
bool readHRCFile (std::string fileName)
 HRCファイル入力関数 [詳細]
 
bool readRDSFile (std::string fileName, bool solidFlg=true)
 RDSファイル入力関数 [詳細]
 
bool readDXFFile (std::string fileName, bool solidFlg=true)
 DXFファイル入力関数 [詳細]
 
bool readMQOFile (std::string fileName, std::string objName, bool solidFlg=true, bool contFlg=true, bool materialFlg=false)
 MQOファイル入力関数1. [詳細]
 
bool readMQOFile (std::string fileName, std::string objName, int materialID, bool solidFlg=true, bool contFlg=true, bool materialFlg=false)
 MQOファイル入力関数2. [詳細]
 
bool readMQOData (unsigned char *buffer, std::string objName, bool solidFlg=true, bool contFlg=true, bool materialFlg=false)
 MQOデータ入力関数1. [詳細]
 
bool readMQOData (unsigned char *buffer, std::string objName, int materialID, bool solidFlg=true, bool contFlg=true, bool materialFlg=false)
 MQOデータ入力関数2. [詳細]
 
bool readD3DXFile (std::string fileName, std::string objName, bool solidFlg=true)
 DirectX (D3DX) ファイル入力関数1. [詳細]
 
bool readD3DXFile (std::string fileName, std::string objName, int materialID, bool solidFlg=true)
 DirectX (D3DX) ファイル入力関数2. [詳細]
 
bool writeVRMLFile (std::string fileName, fk_Material *material=NULL, bool triFlg=false)
 VRML ファイル出力関数1. [詳細]
 
bool writeVRMLFile (std::string fileName, std::vector< double > *time, std::vector< fk_Vector > *pos, fk_Material *material=NULL, bool triFlg=false)
 VRML ファイル出力関数2. [詳細]
 
bool writeSTLFile (std::string fileName)
 STL ファイル出力関数 [詳細]
 
bool writeDXFFile (std::string fileName, bool triFlg=false)
 DXF ファイル出力関数 [詳細]
 
bool writeMQOFile (std::string fileName)
 MQO ファイル出力関数 [詳細]
 
int getPosSize (void)
 頂点数参照関数 [詳細]
 
int getFaceSize (void)
 面数参照関数 [詳細]
 
fk_Vector getPosVec (int vertexID)
 頂点位置ベクトル参照関数 [詳細]
 
std::vector< int > getFaceData (int faceID)
 頂点 ID 配列参照関数 [詳細]
 
int getFaceData (int faceID, int vertexNum)
 頂点 ID 参照関数 [詳細]
 
fk_IFType getFaceType (void)
 面タイプ取得関数 [詳細]
 
fk_Vector getPNorm (int faceID, int order=0)
 面法線ベクトル取得関数 [詳細]
 
fk_Vector getVNorm (int vertexID, int order=0)
 頂点法線ベクトル取得関数 [詳細]
 
int getElemMaterialID (int faceID)
 マテリアルID取得関数 [詳細]
 
bool moveVPosition (int vertexID, const fk_Vector &pos, int order=0)
 頂点移動関数1 [詳細]
 
bool moveVPosition (int vertexID, double x, double y, double z, int order=0)
 頂点移動関数2 [詳細]
 
bool moveVPosition (int vertexID, double *array, int order=0)
 頂点移動関数3 [詳細]
 
void makeIFSet (int faceNum, int polyNum, int *IFSet, int vertexNum, fk_Vector *posArray, int order=0)
 任意形状生成関数 [詳細]
 
bool setPNorm (int faceID, const fk_Vector &norm, int order=0)
 面法線ベクトル設定関数 [詳細]
 
bool setVNorm (int vertexID, const fk_Vector &norm, int order=0)
 頂点法線ベクトル設定関数 [詳細]
 
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 putSolid (fk_Solid *solid)
 fk_Solid 出力関数 [詳細]
 
void setAnimationTime (double time)
 アニメーション時間設定関数 [詳細]
 
void setBVHMotion (fk_BVHMotion *bvh)
 BVHデータ設定関数 [詳細]
 
- Public メソッド inherited from fk_Shape
 fk_Shape (fk_ObjectType=FK_SHAPE)
 コンストラクタ [詳細]
 
virtual ~fk_Shape ()
 デストラクタ [詳細]
 
fk_PalettegetPaletteData (void)
 パレット取得関数 [詳細]
 
void clearMaterial (void)
 パレット初期化関数 [詳細]
 
void setObjMaterialID (int ID)
 オブジェクトマテリアル ID 設定関数 [詳細]
 
void pushPalette (fk_Material &mat)
 マテリアル追加関数 [詳細]
 
void setPalette (fk_Material &mat, int ID)
 マテリアル設定関数 [詳細]
 
void setMaterialMode (fk_MaterialMode mode)
 マテリアルモード設定関数 [詳細]
 
fk_MaterialMode getMaterialMode (void)
 マテリアルモード取得関数 [詳細]
 
int getObjMaterialID (void)
 オブジェクトマテリアル ID 取得関数 [詳細]
 
int getPaletteSize (void)
 パレット中のマテリアル格納数取得関数 [詳細]
 
fk_MaterialgetMaterial (int id)
 マテリアル取得関数 [詳細]
 
std::vector< fk_Material > * getMaterialVector (void)
 マテリアル配列取得関数 [詳細]
 
- Public メソッド inherited from fk_Attribute
 fk_Attribute (void)
 コンストラクタ [詳細]
 
virtual ~fk_Attribute ()
 デストラクタ [詳細]
 
bool setAttrII (const int key, const int value)
 キーが int 型、値が int 型である属性設定関数 [詳細]
 
bool setAttrID (const int key, const double value)
 キーが int 型、値が double 型である属性設定関数 [詳細]
 
bool setAttrIS (const int key, const std::string value)
 キーが int 型、値が string 型である属性設定関数 [詳細]
 
bool setAttrSI (const std::string key, const int value)
 キーが string 型、値が int 型である属性設定関数 [詳細]
 
bool setAttrSD (const std::string key, const double value)
 キーが string 型、値が double 型である属性設定関数 [詳細]
 
bool setAttrSS (const std::string key, const std::string value)
 キーが string 型、値が string 型である属性設定関数 [詳細]
 
int getAttrII (const int key) const
 キーが int 型、値が int 型である属性参照関数 [詳細]
 
double getAttrID (const int key) const
 キーが int 型、値が double 型である属性参照関数 [詳細]
 
std::string getAttrIS (const int key) const
 キーが int 型、値が string 型である属性参照関数 [詳細]
 
int getAttrSI (const std::string key) const
 キーが string 型、値が int 型である属性参照関数 [詳細]
 
double getAttrSD (const std::string key) const
 キーが string 型、値が double 型である属性参照関数 [詳細]
 
std::string getAttrSS (const std::string key) const
 キーが string 型、値が string 型である属性参照関数 [詳細]
 
bool existAttrII (const int key) const
 キーが int 型、値が int 型である属性存在参照関数 [詳細]
 
bool existAttrID (const int key) const
 キーが int 型、値が double 型である属性存在参照関数 [詳細]
 
bool existAttrIS (const int key) const
 キーが int 型、値が string 型である属性存在参照関数 [詳細]
 
bool existAttrSI (const std::string key) const
 キーが string 型、値が int 型である属性存在参照関数 [詳細]
 
bool existAttrSD (const std::string key) const
 キーが string 型、値が double 型である属性存在参照関数 [詳細]
 
bool existAttrSS (const std::string key) const
 キーが string 型、値が string 型である属性存在参照関数 [詳細]
 
bool deleteAttrII (const int key)
 キーが int 型、値が int 型である属性消去関数 [詳細]
 
bool deleteAttrID (const int key)
 キーが int 型、値が double 型である属性消去関数 [詳細]
 
bool deleteAttrIS (const int key)
 キーが int 型、値が string 型である属性消去関数 [詳細]
 
bool deleteAttrSI (const std::string key)
 キーが string 型、値が int 型である属性消去関数 [詳細]
 
bool deleteAttrSD (const std::string key)
 キーが string 型、値が double 型である属性消去関数 [詳細]
 
bool deleteAttrSS (const std::string key)
 キーが string 型、値が string 型である属性消去関数 [詳細]
 
- Public メソッド inherited from fk_BaseObject
 fk_BaseObject (fk_ObjectType type=FK_BASEOBJECT)
 コンストラクタ [詳細]
 
fk_ObjectType getObjectType (void) const
 タイプ取得関数 [詳細]
 

説明

直方体を生成、管理するクラス

このクラスは、形状として直方体を制御する機能を提供します。 直方体は、原点の物体の中心が来るように配置されます。 従って、(x, y, z) という大きさで直方体を生成した場合、 各頂点の位置ベクトルは以下のようになります。

このクラスは、実質的には fk_IndexFaceSet クラスの派生クラスであり、 生成後に fk_IndexFaceSet クラスの機能によって頂点を移動することが可能です。

参照
fk_IndexFaceSet, fk_Shape, fk_Model

コンストラクタとデストラクタ

fk_Block::fk_Block ( double  x = 1.0,
double  y = 1.0,
double  z = 1.0 
)

コンストラクタ

引数として、各軸方向の幅を入力できます。 引数を省略した場合は、辺長が 1 の立方体を生成します。

引数
[in]xx方向の辺長
[in]yy方向の辺長
[in]zz方向の辺長
virtual fk_Block::~fk_Block ( )
virtual

デストラクタ

関数

void fk_Block::setSize ( double  x,
double  y,
double  z 
)

各辺長設定関数

直方体の各軸方向の辺長を一括して設定します。

引数
[in]xx方向の辺長
[in]yy方向の辺長
[in]zz方向の辺長
void fk_Block::setSize ( double  length,
fk_Axis  axis 
)

個別辺長設定関数

直方体の辺長を個別に設定します。

引数
[in]length辺長
[in]axis軸方向。以下のいずれかを指定します。
  • fk_X x方向
  • fk_Y y方向
  • fk_Z z方向
void fk_Block::setScale ( double  scale)

全体拡大縮小関数

直方体全体を、指定された倍率で拡大・縮小します。

引数
[in]scale倍率
void fk_Block::setScale ( double  scale,
fk_Axis  axis 
)

軸方向拡大縮小関数

直方体を、指定された軸方向についてのみ拡大・縮小します。

引数
[in]scale倍率
[in]axis軸方向。以下のいずれかを指定します。
  • fk_X x方向
  • fk_Y y方向
  • fk_Z z方向
void fk_Block::setScale ( double  x,
double  y,
double  z 
)

軸方向個別拡大縮小関数

直方体を、各軸方向に対し個別の倍率で拡大・縮小します。

引数
[in]xx方向の倍率
[in]yy方向の倍率
[in]zz方向の倍率