FineKernelToolKit: FK_CLI::fk_GraphNode クラス

FineKernelToolKit 4.3.0

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

グラフ構造のノードを制御するクラス [詳解]

`#include <CLI/FK_CLI/include/GraphNode_CLI.h>`

FK_CLI::fk_GraphNode の継承関係図
[凡例]
FK_CLI::fk_GraphNode 連携図
[凡例]

## 公開メンバ関数

bool | IsConnect (fk_GraphNode^ node)
| 接続ノード確認メソッド
bool | IsConnect (bool mode, fk_GraphNode^ node)
| 方向判定付き接続ノード確認メソッド
void | SetIntCost (unsigned int ID, int cost)
| 整数型コスト設定メソッド
void | SetDoubleCost (unsigned int ID, double cost)
| 実数型コスト設定メソッド
int | GetIntCost (unsigned int ID)
| 整数型コスト取得メソッド
double | GetDoubleCost (unsigned int ID)
| 実数型コスト取得メソッド
void | ClearIntCost (unsigned int ID)
| 整数型コスト設定解除メソッド
void | ClearDoubleCost (unsigned int ID)
| 実数型コスト設定解除メソッド
bool | IsDoneIntCost (unsigned int ID)
| 整数型コスト設定状態参照メソッド
bool | IsDoneDoubleCost (unsigned int ID)
| 実数型コスト設定状態参照メソッド

## プロパティ

unsigned int | ID`[get]`
| ID 取得プロパティ
fk_Vector^ | Position`[get, set]`
| 位置ベクトル設定関数
unsigned int | Generation`[get]`
| 位置変更回数取得プロパティ
List< fk_GraphEdge^>^ | AllEdge`[get]`
| 全接続辺取得プロパティ
List< fk_GraphEdge^>^ | StartEdge`[get]`
| 始点接続辺取得プロパティ
List< fk_GraphEdge^>^ | EndEdge`[get]`
| 終点接続辺取得プロパティ
List< fk_GraphNode^>^ | NextNode`[get]`
| 接続終点取得プロパティ
List< fk_GraphNode^>^ | PrevNode`[get]`
| 接続始点取得プロパティ
fk_Color^ | Color`[set]`
| 色指定プロパティ

## 詳解

グラフ構造のノードを制御するクラス

このクラスは、グラフ構造におけるノードを制御する機能を提供します。

グラフ構造の詳細および利用方法についての詳細は、 fk_Graph のマニュアルを参照して下さい。 ここでは、グラフの辺に関する情報に特化して解説します。

本クラスのインスタンスは fk_Graph 内で自動的に生成されるものであり、 FK 利用者が直接インスタンスを生成することはありません。

参照
  fk_Graph, fk_GraphNode

## 関数詳解

## ◆ IsConnect() [1/2]

bool FK_CLI::fk_GraphNode::IsConnect | ( | fk_GraphNode^ | node | ) |

接続ノード確認メソッド

指定したノードとの間に辺が存在するかどうかを判定します。 辺の方向も考慮したい場合は IsConnect(bool, fk_GraphNode^) を使用して下さい。

引数

  [in] | node | 接続を確認するノード

戻り値
  辺が存在する場合 true を、存在しない場合 false を返します。

参照
  IsConnect(bool, fk_GraphNode^), AllEdge

## ◆ IsConnect() [2/2]

bool FK_CLI::fk_GraphNode::IsConnect | ( | bool | mode,
|  | fk_GraphNode^ | node )

方向判定付き接続ノード確認メソッド

指定したノードとの間に、指定した方向の辺が存在するかどうかを判定します。 IsConnect(fk_GraphNode^) の場合は何かしらの辺が存在すれば true を返しますが、 こちらの関数では辺の方向を指定することができます。 mode が true のときは、this インスタンスから node への経路が存在する場合のみに true を返します。そのため、辺が存在していたとしても、 node から this への一方通行辺だった場合は false を返します。 mode が false の場合は this インスタンスが終点側の場合に true を返します。 間の辺が双方向辺だった場合は、mode の値にかかわらず true を返します。

引数

  [in] | mode | 辺の向きを指定します。
  [in] | node | 接続を確認するノード。

戻り値
  指定した方向への辺が存在する場合 true を、存在しない場合 false を返します。

## ◆ SetIntCost()

void FK_CLI::fk_GraphNode::SetIntCost | ( | unsigned int | ID,
|  | int | cost )

整数型コスト設定メソッド

整数型コストを設定します。

引数

  [in] | ID | コスト ID
  [in] | cost | コスト値

参照
  SetDoubleCost(), GetIntCost(), ClearIntCost(), IsDoneIntCost()

## ◆ SetDoubleCost()

void FK_CLI::fk_GraphNode::SetDoubleCost | ( | unsigned int | ID,
|  | double | cost )

実数型コスト設定メソッド

実数型コストを設定します。

引数

  [in] | ID | コスト ID
  [in] | cost | コスト値

参照
  SetIntCost(), GetDoubleCost(), ClearDoubleCost(), IsDoneDoubleCost()

## ◆ GetIntCost()

int FK_CLI::fk_GraphNode::GetIntCost | ( | unsigned int | ID | ) |

整数型コスト取得メソッド

整数型コストを取得します。 なお、ID に対応するコスト値が未設定だった場合は 0 が返りますが、 取得後も未設定状態のままになります。

引数

  [in] | ID | コスト ID

戻り値
  コスト値

参照
  GetDoubleCost(), SetIntCost(), ClearIntCost(), IsDoneIntCost()

## ◆ GetDoubleCost()

double FK_CLI::fk_GraphNode::GetDoubleCost | ( | unsigned int | ID | ) |

実数型コスト取得メソッド

実数型コストを取得します。 なお、ID に対応するコスト値が未設定だった場合は 0.0 が返りますが、 取得後も未設定状態のままになります。

引数

  [in] | ID | コスト ID

戻り値
  コスト値

参照
  GetIntCost(), SetDoubleCost(), ClearDoubleCost(), IsDoneDoubleCost()

## ◆ ClearIntCost()

void FK_CLI::fk_GraphNode::ClearIntCost | ( | unsigned int | ID | ) |

整数型コスト設定解除メソッド

整数型コストの設定を解除し、未設定状態とします。

引数

  [in] | ID | コスト ID

参照
  ClearDoubleCost(), SetIntCost(), GetIntCost(), IsDoneIntCost()

## ◆ ClearDoubleCost()

void FK_CLI::fk_GraphNode::ClearDoubleCost | ( | unsigned int | ID | ) |

実数型コスト設定解除メソッド

実数型コストの設定を解除し、未設定状態とします。

引数

  [in] | ID | コスト ID

参照
  ClearIntCost(), SetDoubleCost(), GetDoubleCost(), IsDoneDoubleCost()

## ◆ IsDoneIntCost()

bool FK_CLI::fk_GraphNode::IsDoneIntCost | ( | unsigned int | ID | ) |

整数型コスト設定状態参照メソッド

整数型コストが設定済がどうかを参照します。

引数

  [in] | ID | コスト ID

戻り値
  対応する ID のコストが設定されている場合 true を、 未設定の場合 false を返します。

参照
  IsDoneDoubleCost(), SetIntCost(), GetIntCost(), ClearIntCost()

## ◆ IsDoneDoubleCost()

bool FK_CLI::fk_GraphNode::IsDoneDoubleCost | ( | unsigned int | ID | ) |

実数型コスト設定状態参照メソッド

実数型コストが設定済がどうかを参照します。

引数

  [in] | ID | コスト ID

戻り値
  対応する ID のコストが設定されている場合 true を、 未設定の場合 false を返します。

参照
  IsDoneIntCost(), SetDoubleCost(), GetDoubleCost(), ClearDoubleCost()

## プロパティ詳解

## ◆ ID

unsigned int FK_CLI::fk_GraphNode::ID

get

ID 取得プロパティ

ノードの ID を取得します。

## ◆ Position

fk_Vector^ FK_CLI::fk_GraphNode::Position

getset

位置ベクトル設定関数

ノードの位置ベクトルを設定します。

引数

  [in] | pos | 位置ベクトル 位置ベクトルプロパティ

ノードの位置ベクトルの設定・参照を行います。

## ◆ Generation

unsigned int FK_CLI::fk_GraphNode::Generation

get

位置変更回数取得プロパティ

これまでのノード位置変更回数を取得します。

## ◆ AllEdge

List< fk_GraphEdge^>^ FK_CLI::fk_GraphNode::AllEdge

get

全接続辺取得プロパティ

現在ノードに接続している全ての辺を取得します。

参照
  StartEdge, EndEdge, NextNode, PrevNode

## ◆ StartEdge

List< fk_GraphEdge^>^ FK_CLI::fk_GraphNode::StartEdge

get

始点接続辺取得プロパティ

現在ノードに接続している辺のうち、以下の条件に当てはまる辺を取得します。

- 双方向辺。
- 一方通行辺のうち、このノードが始点となっている辺。

参照
  AllEdge, EndEdge, NextNode, PrevNode

## ◆ EndEdge

List< fk_GraphEdge^>^ FK_CLI::fk_GraphNode::EndEdge

get

終点接続辺取得プロパティ

現在ノードに接続している辺のうち、以下の条件に当てはまる辺を取得します。

- 双方向辺。
- 一方通行辺のうち、このノードが終点となっている辺。

参照
  AllEdge, StartEdge, NextNode, PrevNode

## ◆ NextNode

List< fk_GraphNode^>^ FK_CLI::fk_GraphNode::NextNode

get

接続終点取得プロパティ

このノードと隣接するノードのうち、以下の条件に当てはまるノードを取得します。

- 双方向辺で接続しているノード。
- このノードが始点である一方通行辺に接続している終点ノード。

参照
  AllEdge, StartEdge, EndEdge, PrevNode

## ◆ PrevNode

List< fk_GraphNode^>^ FK_CLI::fk_GraphNode::PrevNode

get

接続始点取得プロパティ

このノードと隣接するノードのうち、以下の条件に当てはまるノードを取得します。

- 双方向辺で接続しているノード。
- このノードが終点である一方通行辺に接続している始点ノード。

参照
  AllEdge, StartEdge, EndEdge, NextNode

## ◆ Color

fk_Color^ FK_CLI::fk_GraphNode::Color

set

色指定プロパティ

辺の色を指定します。