ロードマップ More...
#include <Roadmap.h>
Public Member Functions | |
| void | addEdge (RoadmapNodePtr from, RoadmapNodePtr to) |
| 有向エッジを追加する | |
| void | addNode (RoadmapNodePtr node) |
| ノードを追加する | |
| void | clear () |
| ロードマップをクリアする | |
| std::vector< RoadmapNodePtr > | DFS (RoadmapNodePtr startNode, RoadmapNodePtr goalNode) |
| 深さ優先探索 | |
| void | findNearestNode (const Configuration &cfg, RoadmapNodePtr &node, double &distance) |
| 最も距離の小さいノードを返す | |
| int | indexOfNode (RoadmapNodePtr node) |
| 指定されたノードのインデックスを取得する | |
| void | integrate (RoadmapPtr rdmp) |
| このロードマップの内容を引数のロードマップに統合する | |
| RoadmapNodePtr | lastAddedNode () |
| 最後に追加されたノードを取得する | |
| unsigned int | nEdges () const |
| unsigned int | nNodes () const |
| ノード数を取得する | |
| RoadmapNodePtr | node (unsigned int index) |
| ノードを取得する | |
| bool | removeEdge (RoadmapNodePtr from, RoadmapNodePtr to) |
| 有向エッジを削除する | |
| Roadmap (PathPlanner *planner) | |
| コンストラクタ | |
| void | tryConnection (RoadmapNodePtr from, RoadmapNodePtr to, bool tryReversed=true) |
| 2つのノードの接続を試み、接続できた場合はエッジを追加する | |
| ~Roadmap () | |
| デストラクタ | |
Private Attributes | |
| unsigned int | m_nEdges |
| std::vector< RoadmapNodePtr > | nodes_ |
| ノードのリスト | |
| PathPlanner * | planner_ |
| PathEngine::Roadmap::Roadmap | ( | PathPlanner * | planner | ) | [inline] |
| void Roadmap::addEdge | ( | RoadmapNodePtr | from, |
| RoadmapNodePtr | to | ||
| ) |
| void PathEngine::Roadmap::addNode | ( | RoadmapNodePtr | node | ) | [inline] |
| void Roadmap::clear | ( | void | ) |
ロードマップをクリアする
Definition at line 9 of file Roadmap.cpp.
| std::vector< RoadmapNodePtr > Roadmap::DFS | ( | RoadmapNodePtr | startNode, |
| RoadmapNodePtr | goalNode | ||
| ) |
深さ優先探索
| startNode | 初期ノード |
| goalNode | 終了ノード |
Definition at line 78 of file Roadmap.cpp.
| void Roadmap::findNearestNode | ( | const Configuration & | cfg, |
| RoadmapNodePtr & | node, | ||
| double & | distance | ||
| ) |
最も距離の小さいノードを返す
| cfg | 距離計算を行う対象となる位置 |
| node | 最も近いノード。ノードが一つもない場合はNULL |
| distance | 最も近いノードまでの距離 |
Definition at line 42 of file Roadmap.cpp.
| int Roadmap::indexOfNode | ( | RoadmapNodePtr | node | ) |
指定されたノードのインデックスを取得する
| node | ノード |
Definition at line 70 of file Roadmap.cpp.
| void Roadmap::integrate | ( | RoadmapPtr | rdmp | ) |
このロードマップの内容を引数のロードマップに統合する
統合の後、このロードマップの中身は空になる。
| rdmp | 統合先のロードマップ |
Definition at line 27 of file Roadmap.cpp.
| unsigned int PathEngine::Roadmap::nEdges | ( | ) | const [inline] |
| unsigned int PathEngine::Roadmap::nNodes | ( | ) | const [inline] |
| RoadmapNodePtr Roadmap::node | ( | unsigned int | index | ) |
ノードを取得する
| index | ノードのインデックス |
Definition at line 35 of file Roadmap.cpp.
| bool Roadmap::removeEdge | ( | RoadmapNodePtr | from, |
| RoadmapNodePtr | to | ||
| ) |
有向エッジを削除する
| from | エッジの始点 |
| to | エッジの終点 |
Definition at line 126 of file Roadmap.cpp.
| void Roadmap::tryConnection | ( | RoadmapNodePtr | from, |
| RoadmapNodePtr | to, | ||
| bool | tryReversed = true |
||
| ) |
2つのノードの接続を試み、接続できた場合はエッジを追加する
| from | 接続元 |
| to | 接続先 |
| tryReversed | trueの時逆向きの接続も試みる |
Definition at line 112 of file Roadmap.cpp.
unsigned int PathEngine::Roadmap::m_nEdges [private] |
std::vector<RoadmapNodePtr> PathEngine::Roadmap::nodes_ [private] |
PathPlanner* PathEngine::Roadmap::planner_ [private] |