ロードマップ More...
#include <Roadmap.h>
Public Member Functions | |
void | addEdge (RoadmapNodePtr from, RoadmapNodePtr to) |
有向エッジを追加する More... | |
void | addNode (RoadmapNodePtr node) |
ノードを追加する More... | |
void | clear () |
ロードマップをクリアする More... | |
std::vector< RoadmapNodePtr > | DFS (RoadmapNodePtr startNode, RoadmapNodePtr goalNode) |
深さ優先探索 More... | |
void | findNearestNode (const Configuration &cfg, RoadmapNodePtr &node, double &distance) |
最も距離の小さいノードを返す More... | |
int | indexOfNode (RoadmapNodePtr node) |
指定されたノードのインデックスを取得する More... | |
void | integrate (RoadmapPtr rdmp) |
このロードマップの内容を引数のロードマップに統合する More... | |
RoadmapNodePtr | lastAddedNode () |
最後に追加されたノードを取得する More... | |
unsigned int | nEdges () const |
unsigned int | nNodes () const |
ノード数を取得する More... | |
RoadmapNodePtr | node (unsigned int index) |
ノードを取得する More... | |
bool | removeEdge (RoadmapNodePtr from, RoadmapNodePtr to) |
有向エッジを削除する More... | |
Roadmap (PathPlanner *planner) | |
コンストラクタ More... | |
void | tryConnection (RoadmapNodePtr from, RoadmapNodePtr to, bool tryReversed=true) |
2つのノードの接続を試み、接続できた場合はエッジを追加する More... | |
~Roadmap () | |
デストラクタ More... | |
Private Attributes | |
unsigned int | m_nEdges |
std::vector< RoadmapNodePtr > | nodes_ |
ノードのリスト More... | |
PathPlanner * | planner_ |
|
inline |
Roadmap::~Roadmap | ( | ) |
void Roadmap::addEdge | ( | RoadmapNodePtr | from, |
RoadmapNodePtr | to | ||
) |
|
inline |
ロードマップをクリアする
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.
RoadmapNodePtr Roadmap::lastAddedNode | ( | ) |
|
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.
|
private |
|
private |