FineKernelToolKit 4.2.13
読み取り中…
検索中…
一致する文字列を見つけられません
公開メンバ関数 | プロパティ | 全メンバ一覧
FK_CLI::fk_DataAccess クラス

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

#include <CLI/FK_CLI/include/DataAccess_CLI.h>

+ FK_CLI::fk_DataAccess の継承関係図
+ FK_CLI::fk_DataAccess 連携図

公開メンバ関数

bool CheckDB (void)
 データベース設定チェックメソッド
 
bool CheckTopology (void)
 位相状況チェックメソッド
 
位相要素存在判定
bool ExistVertex (fk_Vertex^ vertex)
 頂点位相要素存在判定メソッド1
 
bool ExistVertex (int ID)
 頂点位相要素存在判定メソッド2
 
bool ExistHalf (fk_Half^ half)
 半稜線位相要素存在判定メソッド1
 
bool ExistHalf (int ID)
 半稜線位相要素存在判定メソッド2
 
bool ExistEdge (fk_Edge^ edge)
 稜線位相要素存在判定メソッド1
 
bool ExistEdge (int ID)
 稜線位相要素存在判定メソッド2
 
bool ExistLoop (fk_Loop^ loop)
 ループ位相要素存在判定メソッド1
 
bool ExistLoop (int ID)
 ループ位相要素存在判定メソッド2
 
位相要素参照
fk_VertexGetVData (int ID)
 頂点位相要素参照メソッド
 
fk_HalfGetHData (int ID)
 半稜線位相要素参照メソッド
 
fk_EdgeGetEData (int ID)
 稜線位相要素参照メソッド
 
fk_LoopGetLData (int ID)
 ループ位相要素参照メソッド
 
fk_VertexGetNextV (fk_Vertex^ vertex)
 頂点位相要素逐次参照メソッド
 
fk_HalfGetNextH (fk_Half^ half)
 半稜線位相要素逐次参照メソッド
 
fk_EdgeGetNextE (fk_Edge^ edge)
 稜線位相要素逐次参照メソッド
 
fk_LoopGetNextL (fk_Loop^ loop)
 ループ位相要素逐次参照メソッド
 
fk_VertexGetLastV (void)
 頂点位相最終要素参照メソッド
 
fk_HalfGetLastH (void)
 半稜線位相最終要素参照メソッド
 
fk_EdgeGetLastE (void)
 稜線位相最終要素参照メソッド
 
fk_LoopGetLastL (void)
 ループ位相最終要素参照メソッド
 
位相要素格納コンテナ取得
cli::array< fk_Vertex^> ^ GetVertexArray (void)
 頂点コンテナ取得メソッド
 
cli::array< fk_Half^> ^ GetHalfArray (void)
 半稜線コンテナ取得メソッド
 
cli::array< fk_Edge^> ^ GetEdgeArray (void)
 稜線コンテナ取得メソッド
 
cli::array< fk_Loop^> ^ GetLoopArray (void)
 ループコンテナ取得メソッド
 
- 基底クラス FK_CLI::fk_Reference に属する継承公開メンバ関数
fk_HalfGetOneHOnV (fk_Vertex^ V)
 頂点接続半稜線参照メソッド
 
fk_EdgeGetOneEOnV (fk_Vertex^ V)
 頂点接続稜線参照メソッド
 
fk_VertexGetOneNeighborVOnV (fk_Vertex^ V)
 隣接頂点参照メソッド
 
cli::array< fk_Half^> ^ GetAllHOnV (fk_Vertex^ V)
 頂点接続全半稜線参照メソッド
 
cli::array< fk_Edge^> ^ GetAllEOnV (fk_Vertex^ V)
 頂点接続全稜線参照メソッド
 
cli::array< fk_Loop^> ^ GetAllLOnV (fk_Vertex^ V)
 頂点接続全ループ参照メソッド
 
int GetENumOnV (fk_Vertex^ V)
 頂点接続稜線数参照メソッド
 
cli::array< fk_Vertex^> ^ GetAllNeighborVOnV (fk_Vertex^ V)
 全隣接頂点参照メソッド
 
cli::array< fk_Edge^> ^ GetEOnVV (fk_Vertex^ V1, fk_Vertex^ V2)
 頂点間稜線参照メソッド
 
fk_LoopGetOneLOnV (fk_Vertex^ V)
 頂点接続ループ参照メソッド
 
fk_VertexGetVOnH (fk_Half^ H)
 半稜線接続頂点参照メソッド
 
fk_HalfGetMateHOnH (fk_Half^ H)
 対半稜線参照メソッド
 
fk_EdgeGetParentEOnH (fk_Half^ H)
 親稜線参照メソッド
 
fk_LoopGetParentLOnH (fk_Half^ H)
 親ループ参照メソッド
 
fk_VertexGetRightVOnE (fk_Edge^ E)
 右側頂点参照メソッド
 
fk_VertexGetLeftVOnE (fk_Edge^ E)
 左側頂点参照メソッド
 
fk_HalfGetRightHOnE (fk_Edge^ E)
 右側半稜線参照メソッド
 
fk_HalfGetLeftHOnE (fk_Edge^ E)
 左側半稜線参照メソッド
 
fk_LoopGetRightLOnE (fk_Edge^ E)
 右側ループ参照メソッド
 
fk_LoopGetLeftLOnE (fk_Edge^ E)
 左側ループ参照メソッド
 
fk_EdgeStatus GetEdgeStatus (fk_Edge^ E)
 稜線位相状態参照メソッド
 
fk_VertexGetOneVOnL (fk_Loop^ L)
 ループ所属頂点参照メソッド
 
fk_HalfGetOneHOnL (fk_Loop^ L)
 ループ所属半稜線参照メソッド
 
fk_EdgeGetOneEOnL (fk_Loop^ L)
 ループ所属稜線参照メソッド
 
cli::array< fk_Vertex^> ^ GetAllVOnL (fk_Loop^ L)
 ループ所属全頂点参照メソッド
 
cli::array< fk_Half^> ^ GetAllHOnL (fk_Loop^ L)
 ループ所属全半稜線参照メソッド
 
cli::array< fk_Edge^> ^ GetAllEOnL (fk_Loop^ L)
 ループ所属全稜線参照メソッド
 
fk_LoopGetOneNeighborLOnL (fk_Loop^ L)
 隣接ループ参照メソッド
 
fk_LoopGetNeighborLOnLH (fk_Loop^ L, fk_Half^ H)
 半稜線条件付き隣接ループ参照メソッド
 
int GetVNumOnL (fk_Loop^ L)
 ループ上頂点数参照メソッド
 
fk_LoopGetNeighborLOnLE (fk_Loop^ L, fk_Edge^ E)
 稜線条件付き隣接ループ参照メソッド
 
cli::array< fk_Loop^> ^ GetAllNeighborLOnL (fk_Loop^ L)
 全隣接ループ参照メソッド
 
- 基底クラス FK_CLI::fk_Shape に属する継承公開メンバ関数
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
 
- 基底クラス FK_CLI::fk_Attribute に属する継承公開メンバ関数
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 VNum [get]
 頂点数プロパティ
 
int HNum [get]
 半稜線数プロパティ
 
int ENum [get]
 稜線数プロパティ
 
int LNum [get]
 ループ数プロパティ
 
- 基底クラス FK_CLI::fk_Shape に属する継承プロパティ
fk_RealShapeTypeRealShapeType [get]
 形状データ構造プロパティ
 

詳解

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

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

参照
fk_Solid, fk_Vertex, fk_Half, fk_Edge, fk_Loop

関数詳解

◆ CheckDB()

bool FK_CLI::fk_DataAccess::CheckDB ( void  )

データベース設定チェックメソッド

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

戻り値
設定済みであれば true、未設定であれば false を返します。

◆ CheckTopology()

bool FK_CLI::fk_DataAccess::CheckTopology ( void  )

位相状況チェックメソッド

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

戻り値
整合していれば true、非整合状態であれば false を返します。

◆ ExistVertex() [1/2]

bool FK_CLI::fk_DataAccess::ExistVertex ( fk_Vertex vertex)

頂点位相要素存在判定メソッド1

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

引数
[in]vertex頂点位相要素
戻り値
存在すれば true、しなければ false を返します。

◆ ExistVertex() [2/2]

bool FK_CLI::fk_DataAccess::ExistVertex ( int  ID)

頂点位相要素存在判定メソッド2

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

引数
[in]ID頂点位相要素のID
戻り値
存在すれば true、しなければ false を返します。

◆ ExistHalf() [1/2]

bool FK_CLI::fk_DataAccess::ExistHalf ( fk_Half half)

半稜線位相要素存在判定メソッド1

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

引数
[in]half半稜線位相要素
戻り値
存在すれば true、しなければ false を返します。

◆ ExistHalf() [2/2]

bool FK_CLI::fk_DataAccess::ExistHalf ( int  ID)

半稜線位相要素存在判定メソッド2

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

引数
[in]ID半稜線位相要素のID
戻り値
存在すれば true、しなければ false を返します。

◆ ExistEdge() [1/2]

bool FK_CLI::fk_DataAccess::ExistEdge ( fk_Edge edge)

稜線位相要素存在判定メソッド1

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

引数
[in]edge稜線位相要素
戻り値
存在すれば true、しなければ false を返します。

◆ ExistEdge() [2/2]

bool FK_CLI::fk_DataAccess::ExistEdge ( int  ID)

稜線位相要素存在判定メソッド2

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

引数
[in]ID稜線位相要素のID
戻り値
存在すれば true、しなければ false を返します。

◆ ExistLoop() [1/2]

bool FK_CLI::fk_DataAccess::ExistLoop ( fk_Loop loop)

ループ位相要素存在判定メソッド1

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

引数
[in]loopループ位相要素
戻り値
存在すれば true、しなければ false を返します。

◆ ExistLoop() [2/2]

bool FK_CLI::fk_DataAccess::ExistLoop ( int  ID)

ループ位相要素存在判定メソッド2

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

引数
[in]IDループ位相要素のID
戻り値
存在すれば true、しなければ false を返します。

◆ GetVData()

fk_Vertex ^ FK_CLI::fk_DataAccess::GetVData ( int  ID)

頂点位相要素参照メソッド

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

引数
[in]ID頂点位相要素のID
戻り値
存在すれば位相要素のポインタを返します。 存在しなかった場合は null を返します。

◆ GetHData()

fk_Half ^ FK_CLI::fk_DataAccess::GetHData ( int  ID)

半稜線位相要素参照メソッド

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

引数
[in]ID半稜線位相要素のID
戻り値
存在すれば位相要素のポインタを返します。 存在しなかった場合は null を返します。

◆ GetEData()

fk_Edge ^ FK_CLI::fk_DataAccess::GetEData ( int  ID)

稜線位相要素参照メソッド

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

引数
[in]ID稜線位相要素のID
戻り値
存在すれば位相要素のポインタを返します。 存在しなかった場合は null を返します。

◆ GetLData()

fk_Loop ^ FK_CLI::fk_DataAccess::GetLData ( int  ID)

ループ位相要素参照メソッド

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

引数
[in]IDループ位相要素のID
戻り値
存在すれば位相要素のポインタを返します。 存在しなかった場合は null を返します。

◆ GetNextV()

fk_Vertex ^ FK_CLI::fk_DataAccess::GetNextV ( fk_Vertex vertex)

頂点位相要素逐次参照メソッド

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

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

◆ GetNextH()

fk_Half ^ FK_CLI::fk_DataAccess::GetNextH ( fk_Half half)

半稜線位相要素逐次参照メソッド

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

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

◆ GetNextE()

fk_Edge ^ FK_CLI::fk_DataAccess::GetNextE ( fk_Edge edge)

稜線位相要素逐次参照メソッド

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

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

◆ GetNextL()

fk_Loop ^ FK_CLI::fk_DataAccess::GetNextL ( fk_Loop loop)

ループ位相要素逐次参照メソッド

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

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

◆ GetLastV()

fk_Vertex ^ FK_CLI::fk_DataAccess::GetLastV ( void  )

頂点位相最終要素参照メソッド

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

戻り値
最もIDが大きな位相要素。 形状中に頂点が存在しなかった場合は、null を返します。

◆ GetLastH()

fk_Half ^ FK_CLI::fk_DataAccess::GetLastH ( void  )

半稜線位相最終要素参照メソッド

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

戻り値
最もIDが大きな位相要素。 形状中に半稜線が存在しなかった場合は、null を返します。

◆ GetLastE()

fk_Edge ^ FK_CLI::fk_DataAccess::GetLastE ( void  )

稜線位相最終要素参照メソッド

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

戻り値
最もIDが大きな位相要素。 形状中に稜線が存在しなかった場合は、null を返します。

◆ GetLastL()

fk_Loop ^ FK_CLI::fk_DataAccess::GetLastL ( void  )

ループ位相最終要素参照メソッド

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

戻り値
最もIDが大きな位相要素。 形状中にループが存在しなかった場合は、null を返します。

◆ GetVertexArray()

cli::array< fk_Vertex^> ^ FK_CLI::fk_DataAccess::GetVertexArray ( void  )

頂点コンテナ取得メソッド

形状中の頂点要素を全て格納した array 型コンテナを取得します。

覚え書き
本メソッドで取得した情報は、 位相変化を伴う変形を行う前まで有効です。 位相変化を伴う変形を行った場合に、 本メソッドで取得した位相要素を参照した場合の挙動は保証されません。
戻り値
頂点位相要素を格納したコンテナ。
参照
GetNextV(), VNum

◆ GetHalfArray()

cli::array< fk_Half^> ^ FK_CLI::fk_DataAccess::GetHalfArray ( void  )

半稜線コンテナ取得メソッド

形状中の半稜線要素を全て格納した array 型コンテナを取得します。

覚え書き
本メソッドで取得した情報は、 位相変化を伴う変形を行う前まで有効です。 位相変化を伴う変形を行った場合に、 本メソッドで取得した位相要素を参照した場合の挙動は保証されません。
戻り値
半稜線位相要素を格納したコンテナ。
参照
GetNextH(), HNum

◆ GetEdgeArray()

cli::array< fk_Edge^> ^ FK_CLI::fk_DataAccess::GetEdgeArray ( void  )

稜線コンテナ取得メソッド

形状中の稜線要素を全て格納した array 型コンテナを取得します。

覚え書き
本メソッドで取得した情報は、 位相変化を伴う変形を行う前まで有効です。 位相変化を伴う変形を行った場合に、 本メソッドで取得した位相要素を参照した場合の挙動は保証されません。
戻り値
稜線位相要素を格納したコンテナ。
参照
GetNextE(), ENum

◆ GetLoopArray()

cli::array< fk_Loop^> ^ FK_CLI::fk_DataAccess::GetLoopArray ( void  )

ループコンテナ取得メソッド

形状中のループ要素を全て格納した array 型コンテナを取得します。

覚え書き
本メソッドで取得した情報は、 位相変化を伴う変形を行う前まで有効です。 位相変化を伴う変形を行った場合に、 本メソッドで取得した位相要素を参照した場合の挙動は保証されません。
戻り値
ループ位相要素を格納したコンテナ。
参照
GetNextL(), LNum

プロパティ詳解

◆ VNum

int FK_CLI::fk_DataAccess::VNum
get

頂点数プロパティ

現在の頂点数を参照します。

◆ HNum

int FK_CLI::fk_DataAccess::HNum
get

半稜線数プロパティ

現在の半稜線数を参照します。

◆ ENum

int FK_CLI::fk_DataAccess::ENum
get

稜線数プロパティ

現在の稜線数を参照します。

◆ LNum

int FK_CLI::fk_DataAccess::LNum
get

ループ数プロパティ

現在のループ数を参照します。