From b7d5899ae6a251075c0b3564ce8dd75164af49d0 Mon Sep 17 00:00:00 2001 From: Joseph Mirabel <jmirabel@laas.fr> Date: Wed, 25 Oct 2017 17:44:54 +0200 Subject: [PATCH] Partially fix helper to build graph. * The behaviour is exactly the same as before the change in class * WaypointEdge. * In a near future, the TODO in src/graph/helper.cc will be fixed. --- src/graph/helper.cc | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/graph/helper.cc b/src/graph/helper.cc index 83be209..c1178e6 100644 --- a/src/graph/helper.cc +++ b/src/graph/helper.cc @@ -190,7 +190,7 @@ namespace hpp { WaypointEdge::create)); we->nbWaypoints (nbWaypoints); gls = linkWaypoint <LevelSetEdge> (n, T-1, T, name, "ls"); - for (std::size_t i = 0; i < Nedges - 1; ++i) + for (std::size_t i = 0; i < Nedges; ++i) we->setWaypoint (i, e[i], n[i]); we->setWaypoint (T-1, gls, n[T]); gls->state (n.front()); @@ -217,8 +217,11 @@ namespace hpp { WaypointEdge::create)); we->nbWaypoints (nbWaypoints); pls = linkWaypoint <LevelSetEdge> (n, T+1, T, name, "ls"); - for (std::size_t i = Nedges - 1; i != 0; --i) + // for (std::size_t i = Nedges - 1; i != 0; --i) + for (std::size_t k = 0; k < Nedges; ++k) { + std::size_t i = Nedges - 1 - k; we->setWaypoint (Nedges - 1 - i, e[i], n[i]); + } we->setWaypoint (Nedges - 1 - T, pls, n[T]); pls->state (n.back ()); pls->setShort (preplace); @@ -255,16 +258,17 @@ namespace hpp { EdgeArray e; WaypointEdgePtr_t we = HPP_DYNAMIC_PTR_CAST(WaypointEdge, edge); if (forward) - for (std::size_t i = 0; i < Nedges - 1; ++i) { + for (std::size_t i = 0; i < Nedges; ++i) { e[i] = linkWaypoint <Edge> (states, i, i + 1, name); we->setWaypoint (i, e[i], states[i+1]); } else - for (std::size_t i = Nedges - 1; i != 0; --i) { + // for (std::size_t i = Nedges - 1; i != 0; --i) { + for (std::size_t k = 0; k < Nedges; ++k) { + std::size_t i = Nedges - 1 - k; e[i] = linkWaypoint <Edge> (states, i + 1, i, name); we->setWaypoint (Nedges - 1 - i, e[i], states[i]); } - e[(forward?Nedges - 1:0)] = we; return e; } -- GitLab