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

ソリッドモデル用位相要素アクセスクラス [詳細]

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

Public メソッド

 fk_DataAccess (void)
 コンストラクタ [詳細]
 
virtual ~fk_DataAccess ()
 デストラクタ [詳細]
 
bool checkDB (void) const
 データベース設定チェック関数 [詳細]
 
bool checkTopology (void)
 位相状況チェック関数 [詳細]
 
void printTopology (void)
 位相状況出力関数 [詳細]
 
位相要素存在判定
bool existVertex (fk_Vertex *vertex) const
 頂点位相要素存在判定関数1 [詳細]
 
bool existVertex (int ID) const
 頂点位相要素存在判定関数2 [詳細]
 
bool existHalf (fk_Half *half) const
 半稜線位相要素存在判定関数1 [詳細]
 
bool existHalf (int ID) const
 半稜線位相要素存在判定関数2 [詳細]
 
bool existEdge (fk_Edge *edge) const
 稜線位相要素存在判定関数1 [詳細]
 
bool existEdge (int ID) const
 稜線位相要素存在判定関数2 [詳細]
 
bool existLoop (fk_Loop *loop) const
 ループ位相要素存在判定関数1 [詳細]
 
bool existLoop (int ID) const
 ループ位相要素存在判定関数2 [詳細]
 
位相要素参照
fk_VertexgetVData (int ID) const
 頂点位相要素参照関数 [詳細]
 
fk_HalfgetHData (int ID) const
 半稜線位相要素参照関数 [詳細]
 
fk_EdgegetEData (int ID) const
 稜線位相要素参照関数 [詳細]
 
fk_LoopgetLData (int ID) const
 ループ位相要素参照関数 [詳細]
 
fk_VertexgetNextV (fk_Vertex *vertex) const
 頂点位相要素逐次参照関数 [詳細]
 
fk_HalfgetNextH (fk_Half *half) const
 半稜線位相要素逐次参照関数 [詳細]
 
fk_EdgegetNextE (fk_Edge *edge) const
 稜線位相要素逐次参照関数 [詳細]
 
fk_LoopgetNextL (fk_Loop *loop) const
 ループ位相要素逐次参照関数 [詳細]
 
fk_VertexgetLastV (void) const
 頂点位相最終要素参照関数 [詳細]
 
fk_HalfgetLastH (void) const
 半稜線位相最終要素参照関数 [詳細]
 
fk_EdgegetLastE (void) const
 稜線位相最終要素参照関数 [詳細]
 
fk_LoopgetLastL (void) const
 ループ位相最終要素参照関数 [詳細]
 
位相要素数参照
int getVNum (void) const
 頂点数参照関数 [詳細]
 
int getHNum (void) const
 半稜線数参照関数 [詳細]
 
int getENum (void) const
 稜線数参照関数 [詳細]
 
int getLNum (void) const
 ループ数参照関数 [詳細]
 
- Public メソッド inherited from fk_ReferenceL3
std::vector< fk_Vertex * > getAllNeighborVOnV (fk_Vertex *V) const
 全隣接頂点参照関数 [詳細]
 
std::vector< fk_Edge * > getEOnVV (fk_Vertex *V1, fk_Vertex *V2) const
 頂点間稜線参照関数 [詳細]
 
fk_LoopgetOneLOnV (fk_Vertex *V) const
 頂点接続ループ参照関数 [詳細]
 
fk_LoopgetNeighborLOnLE (fk_Loop *L, fk_Edge *E) const
 稜線条件付き隣接ループ参照関数 [詳細]
 
std::vector< fk_Loop * > getAllNeighborLOnL (fk_Loop *L) const
 全隣接ループ参照関数 [詳細]
 
- Public メソッド inherited from fk_ReferenceL2
fk_VertexgetOneNeighborVOnV (fk_Vertex *V) const
 隣接頂点参照関数 [詳細]
 
std::vector< fk_Half * > getAllHOnV (fk_Vertex *V) const
 頂点接続全半稜線参照関数 [詳細]
 
std::vector< fk_Edge * > getAllEOnV (fk_Vertex *V) const
 頂点接続全稜線参照関数 [詳細]
 
std::vector< fk_Loop * > getAllLOnV (fk_Vertex *V) const
 頂点接続全ループ参照関数 [詳細]
 
int getENumOnV (fk_Vertex *V) const
 頂点接続稜線数参照関数 [詳細]
 
std::vector< fk_Vertex * > getAllVOnL (fk_Loop *L) const
 ループ所属全頂点参照関数 [詳細]
 
std::vector< fk_Half * > getAllHOnL (fk_Loop *L) const
 ループ所属全半稜線参照関数 [詳細]
 
std::vector< fk_Edge * > getAllEOnL (fk_Loop *L) const
 ループ所属全稜線参照関数 [詳細]
 
fk_LoopgetOneNeighborLOnL (fk_Loop *L) const
 隣接ループ参照関数 [詳細]
 
fk_LoopgetNeighborLOnLH (fk_Loop *L, fk_Half *H) const
 半稜線条件付き隣接ループ参照関数 [詳細]
 
int getVNumOnL (fk_Loop *L) const
 ループ上頂点数参照関数 [詳細]
 
- Public メソッド inherited from fk_ReferenceL1
fk_HalfgetOneHOnV (fk_Vertex *V) const
 頂点接続半稜線参照関数 [詳細]
 
fk_EdgegetOneEOnV (fk_Vertex *V) const
 頂点接続稜線参照関数 [詳細]
 
fk_VertexgetVOnH (fk_Half *H) const
 半稜線接続頂点参照関数 [詳細]
 
fk_HalfgetMateHOnH (fk_Half *H) const
 対半稜線参照関数 [詳細]
 
fk_EdgegetParentEOnH (fk_Half *H) const
 親稜線参照関数 [詳細]
 
fk_LoopgetParentLOnH (fk_Half *H) const
 親ループ参照関数 [詳細]
 
fk_VertexgetRightVOnE (fk_Edge *E) const
 右側頂点参照関数 [詳細]
 
fk_VertexgetLeftVOnE (fk_Edge *E) const
 左側頂点参照関数 [詳細]
 
fk_HalfgetRightHOnE (fk_Edge *E) const
 右側半稜線参照関数 [詳細]
 
fk_HalfgetLeftHOnE (fk_Edge *E) const
 左側半稜線参照関数 [詳細]
 
fk_LoopgetRightLOnE (fk_Edge *E) const
 右側ループ参照関数 [詳細]
 
fk_LoopgetLeftLOnE (fk_Edge *E) const
 左側ループ参照関数 [詳細]
 
fk_EdgeStatus getEdgeStatus (fk_Edge *E) const
 稜線位相状態参照関数 [詳細]
 
fk_VertexgetOneVOnL (fk_Loop *L) const
 ループ所属頂点参照関数 [詳細]
 
fk_HalfgetOneHOnL (fk_Loop *L) const
 ループ所属半稜線参照関数 [詳細]
 
fk_EdgegetOneEOnL (fk_Loop *L) const
 ループ所属稜線参照関数 [詳細]
 

説明

ソリッドモデル用位相要素アクセスクラス

このクラスは、 fk_Solid での各位相要素を参照するための機能を提供します。 FK におけるソリッドモデルの構造については、 ユーザーズマニュアルの「形状に対する高度な操作」の章を参照して下さい。

参照
fk_Solid, fk_Vertex, fk_Half, fk_Edge, fk_Loop

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

fk_DataAccess::fk_DataAccess ( void  )

コンストラクタ

virtual fk_DataAccess::~fk_DataAccess ( )
virtual

デストラクタ

関数

bool fk_DataAccess::checkDB ( void  ) const

データベース設定チェック関数

データベース設定の有無をチェックします。 通常、ユーザが利用することはありません。

戻り値
設定済みであれば true、未設定であれば false を返します。
bool fk_DataAccess::checkTopology ( void  )

位相状況チェック関数

位相状態の整合状態をチェックします。

戻り値
整合していれば true、非整合状態であれば false を返します。
void fk_DataAccess::printTopology ( void  )

位相状況出力関数

この関数はシステム内部での解析用に存在するもので、 ユーザによる利用は推奨されていません。

bool fk_DataAccess::existVertex ( fk_Vertex vertex) const

頂点位相要素存在判定関数1

fk_Vertex 型の頂点位相要素が形状内に存在するかどうかを判定します。

引数
[in]vertex頂点位相要素
戻り値
存在すれば true、しなければ false を返します。
bool fk_DataAccess::existVertex ( int  ID) const

頂点位相要素存在判定関数2

fk_Vertex 型の頂点位相要素が形状内に存在するかどうかを判定します。

引数
[in]ID頂点位相要素のID
戻り値
存在すれば true、しなければ false を返します。
bool fk_DataAccess::existHalf ( fk_Half half) const

半稜線位相要素存在判定関数1

fk_Half 型の半稜線位相要素が形状内に存在するかどうかを判定します。

引数
[in]half半稜線位相要素
戻り値
存在すれば true、しなければ false を返します。
bool fk_DataAccess::existHalf ( int  ID) const

半稜線位相要素存在判定関数2

fk_Half 型の半稜線位相要素が形状内に存在するかどうかを判定します。

引数
[in]ID半稜線位相要素のID
戻り値
存在すれば true、しなければ false を返します。
bool fk_DataAccess::existEdge ( fk_Edge edge) const

稜線位相要素存在判定関数1

fk_Edge 型の稜線位相要素が形状内に存在するかどうかを判定します。

引数
[in]edge稜線位相要素
戻り値
存在すれば true、しなければ false を返します。
bool fk_DataAccess::existEdge ( int  ID) const

稜線位相要素存在判定関数2

fk_Edge 型の稜線位相要素が形状内に存在するかどうかを判定します。

引数
[in]ID稜線位相要素のID
戻り値
存在すれば true、しなければ false を返します。
bool fk_DataAccess::existLoop ( fk_Loop loop) const

ループ位相要素存在判定関数1

fk_Loop 型のループ位相要素が形状内に存在するかどうかを判定します。

引数
[in]loopループ位相要素
戻り値
存在すれば true、しなければ false を返します。
bool fk_DataAccess::existLoop ( int  ID) const

ループ位相要素存在判定関数2

fk_Loop 型のループ位相要素が形状内に存在するかどうかを判定します。

引数
[in]IDループ位相要素のID
戻り値
存在すれば true、しなければ false を返します。
fk_Vertex* fk_DataAccess::getVData ( int  ID) const

頂点位相要素参照関数

fk_Vertex 型の頂点位相要素のポインタを取得します。

引数
[in]ID頂点位相要素のID
戻り値
存在すれば位相要素のポインタを返します。 存在しなかった場合は NULL を返します。
fk_Half* fk_DataAccess::getHData ( int  ID) const

半稜線位相要素参照関数

fk_Half 型の半稜線位相要素のポインタを取得します。

引数
[in]ID半稜線位相要素のID
戻り値
存在すれば位相要素のポインタを返します。 存在しなかった場合は NULL を返します。
fk_Edge* fk_DataAccess::getEData ( int  ID) const

稜線位相要素参照関数

fk_Edge 型の稜線位相要素のポインタを取得します。

引数
[in]ID稜線位相要素のID
戻り値
存在すれば位相要素のポインタを返します。 存在しなかった場合は NULL を返します。
fk_Loop* fk_DataAccess::getLData ( int  ID) const

ループ位相要素参照関数

fk_Loop 型のループ位相要素のポインタを取得します。

引数
[in]IDループ位相要素のID
戻り値
存在すれば位相要素のポインタを返します。 存在しなかった場合は NULL を返します。
fk_Vertex* fk_DataAccess::getNextV ( fk_Vertex vertex) const

頂点位相要素逐次参照関数

fk_Vertex 型の頂点位相要素において、 引数で与えられた頂点要素の次に大きな ID を持つ 位相要素を返します。

引数
[in]vertex頂点位相要素。 ここに NULL を代入した場合、 形状中で最も ID が小さな位相要素を返します。 これは、必ずしも最初に生成した位相要素とは限らないことに注意して下さい。
戻り値
vertex の次に大きな ID を持つ位相要素を返します。 以下のいずれかを満たしている場合、NULL を返します。
  • vertex が形状内頂点の中で最大の ID であった場合。
  • 形状中に頂点が存在しない場合。
  • vertex が形状中に存在する頂点位相要素ではなかった場合。
fk_Half* fk_DataAccess::getNextH ( fk_Half half) const

半稜線位相要素逐次参照関数

fk_Half 型の半稜線位相要素において、 引数で与えられた半稜線要素の次に大きな ID を持つ 位相要素を返します。

引数
[in]half半稜線位相要素。 ここに NULL を代入した場合、 形状中で最も ID が小さな位相要素を返します。 これは、必ずしも最初に生成した位相要素とは限らないことに注意して下さい。
戻り値
half の次に大きな ID を持つ位相要素を返します。 以下のいずれかを満たしている場合、NULL を返します。
  • half が形状内半稜線の中で最大の ID であった場合。
  • 形状中に半稜線が存在しない場合。
  • half が形状中に存在する半稜線位相要素ではなかった場合。
fk_Edge* fk_DataAccess::getNextE ( fk_Edge edge) const

稜線位相要素逐次参照関数

fk_Edge 型の稜線位相要素において、 引数で与えられた頂点要素の次に大きな ID を持つ 位相要素を返します。

引数
[in]edge稜線位相要素。 ここに NULL を代入した場合、 形状中で最も ID が小さな位相要素を返します。 これは、必ずしも最初に生成した位相要素とは限らないことに注意して下さい。
戻り値
edge の次に大きな ID を持つ位相要素を返します。 以下のいずれかを満たしている場合、NULL を返します。
  • edge が形状内稜線の中で最大の ID であった場合。
  • 形状中に稜線が存在しない場合。
  • edge が形状中に存在する稜線位相要素ではなかった場合。
fk_Loop* fk_DataAccess::getNextL ( fk_Loop loop) const

ループ位相要素逐次参照関数

fk_Loop 型のループ位相要素において、 引数で与えられたループ要素の次に大きな ID を持つ 位相要素を返します。

引数
[in]loopループ位相要素。 ここに NULL を代入した場合、 形状中で最も ID が小さな位相要素を返します。 これは、必ずしも最初に生成した位相要素とは限らないことに注意して下さい。
戻り値
loop の次に大きな ID を持つ位相要素を返します。 以下のいずれかを満たしている場合、NULL を返します。
  • loop が形状内ループの中で最大の ID であった場合。
  • 形状中にループが存在しない場合。
  • loop が形状中に存在するループ位相要素ではなかった場合。
fk_Vertex* fk_DataAccess::getLastV ( void  ) const

頂点位相最終要素参照関数

fk_Vertex 型の頂点位相要素において、 形状中で最も ID が大きな位相要素を返します。 これは、必ずしも最後に生成した位相要素とは限らないことに注意して下さい。

戻り値
最もIDが大きな位相要素。 形状中に頂点が存在しなかった場合は、NULL を返します。
fk_Half* fk_DataAccess::getLastH ( void  ) const

半稜線位相最終要素参照関数

fk_Half 型の半稜線位相要素において、 形状中で最も ID が大きな位相要素を返します。 これは、必ずしも最後に生成した位相要素とは限らないことに注意して下さい。

戻り値
最もIDが大きな位相要素。 形状中に半稜線が存在しなかった場合は、NULL を返します。
fk_Edge* fk_DataAccess::getLastE ( void  ) const

稜線位相最終要素参照関数

fk_Edge 型の稜線位相要素において、 形状中で最も ID が大きな位相要素を返します。 これは、必ずしも最後に生成した位相要素とは限らないことに注意して下さい。

戻り値
最もIDが大きな位相要素。 形状中に稜線が存在しなかった場合は、NULL を返します。
fk_Loop* fk_DataAccess::getLastL ( void  ) const

ループ位相最終要素参照関数

fk_Loop 型の頂点位相要素において、 形状中で最も ID が大きな位相要素を返します。 これは、必ずしも最後に生成した位相要素とは限らないことに注意して下さい。

戻り値
最もIDが大きな位相要素。 形状中にループが存在しなかった場合は、NULL を返します。
int fk_DataAccess::getVNum ( void  ) const

頂点数参照関数

形状中の頂点数を返します。

戻り値
頂点数
int fk_DataAccess::getHNum ( void  ) const

半稜線数参照関数

形状中の半稜線数を返します。

戻り値
半稜線数
int fk_DataAccess::getENum ( void  ) const

稜線数参照関数

形状中の稜線数を返します。

戻り値
稜線数
int fk_DataAccess::getLNum ( void  ) const

ループ数参照関数

形状中のループ数を返します。

戻り値
ループ数