# クラス fk_ReferenceL2

位相状態参照用クラス(Level2) [詳細]

fk_ReferenceL2に対する継承グラフ
[凡例]
fk_ReferenceL2のコラボレーション図
[凡例]

すべてのメンバ一覧

## Public メソッド
頂点に関連する関数
fk_Vertex * | getOneNeighborVOnV (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_Loop * | getOneNeighborLOnL (fk_Loop *L) const
| 隣接ループ参照関数
fk_Loop * | getNeighborLOnLH (fk_Loop *L, fk_Half *H) const
| 半稜線条件付き隣接ループ参照関数
int | getVNumOnL (fk_Loop *L) const
| ループ上頂点数参照関数

## 説明

位相状態参照用クラス(Level2)

このクラスでは、 fk_Solid クラスのインスタンスにおいて、 様々な位相状態を参照する機能を提供します。 fk_Solid の位相についての詳細は、 ユーザーズマニュアルの「形状に対する高度な操作」という章を参照して下さい。

位相状態を参照するためのクラスとして、 本クラスの他に fk_ReferenceL1 や fk_ReferenceL3 といったクラスが存在します。 これらのクラスは、内部実装として上位・下位を区別しているものであり、 機能について区別する必要はありません。

参照:
  fk_ReferenceL1, fk_ReferenceL3, fk_DataAccess, fk_Operation, fk_Modify, fk_Solid

## 関数

fk_Vertex* fk_ReferenceL2::getOneNeighborVOnV | ( | fk_Vertex * | V | ) | const

隣接頂点参照関数

頂点 V に隣接している頂点のうちの1つを返します。 V が独立頂点であった場合は NULL を返します。

引数:

  `[in]` | V | 頂点位相

戻り値:
  隣接頂点のうちの1つ。ない場合は NULL を返します。

std::vector<fk_Half *> fk_ReferenceL2::getAllHOnV | ( | fk_Vertex * | V | ) | const

頂点接続全半稜線参照関数

頂点 V を元頂点(開始点)としている全ての半稜線を、 vector配列として返します。

引数:

  `[in]` | V | 頂点位相

戻り値:
  V を元頂点とする半稜線の配列

std::vector<fk_Edge *> fk_ReferenceL2::getAllEOnV | ( | fk_Vertex * | V | ) | const

頂点接続全稜線参照関数

頂点 V に接続している全ての稜線を、 vector配列として返します。

引数:

  `[in]` | V | 頂点位相

戻り値:
  V に接続する稜線の配列

std::vector<fk_Loop *> fk_ReferenceL2::getAllLOnV | ( | fk_Vertex * | V | ) | const

頂点接続全ループ参照関数

頂点 V に接続している全てのループを、 vector配列として返します。

引数:

  `[in]` | V | 頂点位相

戻り値:
  V に接続するループの配列

int fk_ReferenceL2::getENumOnV | ( | fk_Vertex * | V | ) | const

頂点接続稜線数参照関数

頂点 V に接続している稜線の本数を返します。

引数:

  `[in]` | V | 頂点位相

戻り値:
  V に接続する稜線本数

std::vector<fk_Vertex *> fk_ReferenceL2::getAllVOnL | ( | fk_Loop * | L | ) | const

ループ所属全頂点参照関数

ループ L に所属している全ての頂点を、 vector配列として返します。

引数:

  `[in]` | L | ループ位相

戻り値:
  L に所属する頂点の配列

std::vector<fk_Half *> fk_ReferenceL2::getAllHOnL | ( | fk_Loop * | L | ) | const

ループ所属全半稜線参照関数

ループ L に所属している全ての半稜線を、 vector配列として返します。

引数:

  `[in]` | L | ループ位相

戻り値:
  L に所属する半稜線の配列

std::vector<fk_Edge *> fk_ReferenceL2::getAllEOnL | ( | fk_Loop * | L | ) | const

ループ所属全稜線参照関数

ループ L に所属している全ての稜線を、 vector配列として返します。

引数:

  `[in]` | L | ループ位相

戻り値:
  L に所属する稜線の配列

fk_Loop* fk_ReferenceL2::getOneNeighborLOnL | ( | fk_Loop * | L | ) | const

隣接ループ参照関数

ループ L と隣接しているループのうちの1つを返します。 隣接するループが存在しないときは NULL を返します。

引数:

  `[in]` | L | ループ位相

戻り値:
  隣接ループのうちの1つ。ない場合は NULL を返します。

fk_Loop* fk_ReferenceL2::getNeighborLOnLH | ( | fk_Loop * | L,
|  | fk_Half * | H |
| ) |  |  | const

半稜線条件付き隣接ループ参照関数

ループ L と隣接しているループのうち、 半稜線 H の親稜線を共有しているループを返します。 この共有関係が成り立たないような状態の場合 (H が L 上にない、H の反対側にループが存在しないなど) は、NULL を返します。

引数:

  `[in]` | L | ループ位相
  `[in]` | H | 半稜線位相

戻り値:
  H を挟んだ隣接ループ。存在しない場合は NULL を返します。

int fk_ReferenceL2::getVNumOnL | ( | fk_Loop * | L | ) | const

ループ上頂点数参照関数

ループ L に所属している頂点の個数を返します。

引数:

  `[in]` | L | ループ位相

戻り値:
  L に所属する頂点個数