|
FineKernelToolKit 4.2.13
|
グラフ構造のノードを制御するクラス [詳解]
#include <FK/GraphNode.h>
FK::fk_GraphNode の継承関係図
FK::fk_GraphNode 連携図公開メンバ関数 | |
| unsigned int | getID (void) |
| ID 取得関数 | |
| void | setPosition (fk_Vector pos) |
| 位置ベクトル設定関数 | |
| fk_Vector & | getPosition (void) |
| 位置ベクトル取得関数 | |
| unsigned int | getGeneration (void) |
| 位置変更回数取得関数 | |
| bool | isConnect (fk_GraphNode *node) |
| 接続ノード確認関数 | |
| bool | isConnect (bool mode, fk_GraphNode *node) |
| 方向判定付き接続ノード確認関数 | |
| std::list< fk_GraphEdge * > | getAllEdge (void) |
| 全接続辺取得関数1 | |
| void | getAllEdge (std::list< fk_GraphEdge * > *list) |
| 全接続辺取得関数2 | |
| std::list< fk_GraphEdge * > | getStartEdge (void) |
| 始点接続辺取得関数1 | |
| void | getStartEdge (std::list< fk_GraphEdge * > *list) |
| 始点接続辺取得関数2 | |
| std::list< fk_GraphEdge * > | getEndEdge (void) |
| 終点接続辺取得関数1 | |
| void | getEndEdge (std::list< fk_GraphEdge * > *list) |
| 終点接続辺取得関数2 | |
| std::list< fk_GraphNode * > | getNextNode (void) |
| 接続終点取得関数1 | |
| void | getNextNode (std::list< fk_GraphNode * > *list) |
| 接続終点取得関数2 | |
| std::list< fk_GraphNode * > | getPrevNode (void) |
| 接続始点取得関数1 | |
| void | getPrevNode (std::list< fk_GraphNode * > *list) |
| 接続始点取得関数2 | |
| void | setIntCost (unsigned int ID, int cost, int prev=-1) |
| 整数型コスト設定関数 | |
| void | setDoubleCost (unsigned int ID, double cost, int prev=-1) |
| 実数型コスト設定関数 | |
| 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) |
| 実数型コスト設定状態参照関数 | |
| void | setColor (fk_Color col) |
| 色指定関数1 | |
| void | setColor (fk_Color *col) |
| 色指定関数2 | |
基底クラス FK::fk_BaseObject に属する継承公開メンバ関数 | |
| fk_BaseObject (fk_Type type=fk_Type::BASEOBJECT) | |
| コンストラクタ | |
| fk_Type | getObjectType (void) const |
| タイプ取得関数 | |
グラフ構造のノードを制御するクラス
このクラスは、グラフ構造におけるノードを制御する機能を提供します。
グラフ構造の詳細および利用方法についての詳細は、 fk_Graph のマニュアルを参照して下さい。 ここでは、グラフの辺に関する情報に特化して解説します。
本クラスのインスタンスは fk_Graph 内で自動的に生成されるものであり、 FK 利用者が直接インスタンスを生成することはありません。
| unsigned int FK::fk_GraphNode::getID | ( | void | ) |
ID 取得関数
ノードの ID を取得します。
| void FK::fk_GraphNode::setPosition | ( | fk_Vector | pos | ) |
位置ベクトル設定関数
ノードの位置ベクトルを設定します。
| [in] | pos | 位置ベクトル |
| fk_Vector & FK::fk_GraphNode::getPosition | ( | void | ) |
位置ベクトル取得関数
ノードの位置ベクトルを取得します。
| unsigned int FK::fk_GraphNode::getGeneration | ( | void | ) |
位置変更回数取得関数
これまでのノード位置変更回数を取得します。
| bool FK::fk_GraphNode::isConnect | ( | fk_GraphNode * | node | ) |
接続ノード確認関数
指定したノードとの間に辺が存在するかどうかを判定します。 辺の方向も考慮したい場合は isConnect(bool, fk_GraphNode *) を使用して下さい。
| [in] | node | 接続を確認するノード |
| bool FK::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 | 接続を確認するノード。 |
| std::list< fk_GraphEdge * > FK::fk_GraphNode::getAllEdge | ( | void | ) |
全接続辺取得関数1
このノードに接続している全ての辺を取得します。
| void FK::fk_GraphNode::getAllEdge | ( | std::list< fk_GraphEdge * > * | list | ) |
全接続辺取得関数2
このノードに接続している全ての辺を取得します。
| [out] | list | 接続辺の list 集合。 |
| std::list< fk_GraphEdge * > FK::fk_GraphNode::getStartEdge | ( | void | ) |
始点接続辺取得関数1
このノードに接続している辺のうち、以下の条件に当てはまる辺を取得します。
| void FK::fk_GraphNode::getStartEdge | ( | std::list< fk_GraphEdge * > * | list | ) |
始点接続辺取得関数2
このノードに接続している辺のうち、以下の条件に当てはまる辺を取得します。
| [out] | list | 接続辺の list 集合。 |
| std::list< fk_GraphEdge * > FK::fk_GraphNode::getEndEdge | ( | void | ) |
終点接続辺取得関数1
このノードに接続している辺のうち、以下の条件に当てはまる辺を取得します。
| void FK::fk_GraphNode::getEndEdge | ( | std::list< fk_GraphEdge * > * | list | ) |
終点接続辺取得関数2
このノードに接続している辺のうち、以下の条件に当てはまる辺を取得します。
| [out] | list | 接続辺の list 集合。 |
| std::list< fk_GraphNode * > FK::fk_GraphNode::getNextNode | ( | void | ) |
接続終点取得関数1
このノードと隣接するノードのうち、以下の条件に当てはまるノードを取得します。
| void FK::fk_GraphNode::getNextNode | ( | std::list< fk_GraphNode * > * | list | ) |
接続終点取得関数2
このノードと隣接するノードのうち、以下の条件に当てはまるノードを取得します。
| [out] | list | 接続点の list 集合 |
| std::list< fk_GraphNode * > FK::fk_GraphNode::getPrevNode | ( | void | ) |
接続始点取得関数1
このノードと隣接するノードのうち、以下の条件に当てはまるノードを取得します。
| void FK::fk_GraphNode::getPrevNode | ( | std::list< fk_GraphNode * > * | list | ) |
接続始点取得関数2
このノードと隣接するノードのうち、以下の条件に当てはまるノードを取得します。
| [out] | list | 接続点の list 集合 |
| void FK::fk_GraphNode::setIntCost | ( | unsigned int | ID, |
| int | cost, | ||
| int | prev = -1 |
||
| ) |
整数型コスト設定関数
整数型コストを設定します。
| [in] | ID | コスト ID |
| [in] | cost | コスト値 |
| [in] | prev | 前ノード ID (省略可) |
| void FK::fk_GraphNode::setDoubleCost | ( | unsigned int | ID, |
| double | cost, | ||
| int | prev = -1 |
||
| ) |
実数型コスト設定関数
実数型コストを設定します。
| [in] | ID | コスト ID |
| [in] | cost | コスト値 |
| [in] | prev | 前ノード ID (省略可) |
| int FK::fk_GraphNode::getIntCost | ( | unsigned int | ID | ) |
整数型コスト取得関数
整数型コストを取得します。 なお、ID に対応するコスト値が未設定だった場合は 0 が返りますが、 取得後も未設定状態のままになります。
| [in] | ID | コスト ID |
| double FK::fk_GraphNode::getDoubleCost | ( | unsigned int | ID | ) |
実数型コスト取得関数
実数型コストを取得します。 なお、ID に対応するコスト値が未設定だった場合は 0.0 が返りますが、 取得後も未設定状態のままになります。
| [in] | ID | コスト ID |
| void FK::fk_GraphNode::clearIntCost | ( | unsigned int | ID | ) |
整数型コスト設定解除関数
整数型コストの設定を解除し、未設定状態とします。
| [in] | ID | コスト ID |
| void FK::fk_GraphNode::clearDoubleCost | ( | unsigned int | ID | ) |
実数型コスト設定解除関数
実数型コストの設定を解除し、未設定状態とします。
| [in] | ID | コスト ID |
| bool FK::fk_GraphNode::isDoneIntCost | ( | unsigned int | ID | ) |
整数型コスト設定状態参照関数
整数型コストが設定済がどうかを参照します。
| [in] | ID | コスト ID |
| bool FK::fk_GraphNode::isDoneDoubleCost | ( | unsigned int | ID | ) |
実数型コスト設定状態参照関数
実数型コストが設定済がどうかを参照します。
| [in] | ID | コスト ID |
| void FK::fk_GraphNode::setColor | ( | fk_Color | col | ) |
色指定関数1
辺の色を指定します。
| [in] | col | 色値 |
| void FK::fk_GraphNode::setColor | ( | fk_Color * | col | ) |
色指定関数2
辺の色を指定します。
| [in] | col | 色値 |