From: Jiri Vlasak Date: Mon, 24 Jun 2019 16:08:35 +0000 (+0200) Subject: Make sampling range scenario dependent X-Git-Tag: v0.7.0~4 X-Git-Url: http://rtime.felk.cvut.cz/gitweb/hubacji1/iamcar.git/commitdiff_plain/b163ddbee966e67c8bd5a1681a2c34175335b7a7 Make sampling range scenario dependent --- diff --git a/base/main.cc b/base/main.cc index dc3eda5..effd757 100644 --- a/base/main.cc +++ b/base/main.cc @@ -152,24 +152,43 @@ int main() jvo["init"][2] = p.root()->h(); std::vector co; std::vector so; + p.HMIN = p.root()->x(); + p.HMAX = p.root()->x(); + p.VMIN = p.root()->y(); + p.VMAX = p.root()->y(); for (auto o: jvi["obst"]) { + float tmpx; + float tmpy; + float tmpr; + float tmps; if (o["circle"] != Json::nullValue) { - co.push_back(CircleObstacle( - o["circle"][0].asFloat(), - o["circle"][1].asFloat(), - o["circle"][2].asFloat())); + tmpx = o["circle"][0].asFloat(); + tmpy = o["circle"][1].asFloat(); + tmpr = o["circle"][2].asFloat(); + co.push_back(CircleObstacle(tmpx, tmpy, tmpr)); + if (tmpx < p.HMIN) p.HMIN = tmpx; + if (tmpx > p.HMAX) p.HMAX = tmpx; + if (tmpy < p.VMIN) p.VMIN = tmpy; + if (tmpy > p.VMAX) p.VMAX = tmpy; } if (o["segment"] != Json::nullValue) { + tmpx = o["segment"][0][0].asFloat(); + tmpy = o["segment"][0][1].asFloat(); + tmpr = o["segment"][1][0].asFloat(); + tmps = o["segment"][1][1].asFloat(); so.push_back(SegmentObstacle( - new RRTNode( - o["segment"][0][0].asFloat(), - o["segment"][0][1].asFloat(), - 0), - new RRTNode( - o["segment"][1][0].asFloat(), - o["segment"][1][1].asFloat(), - 0))); + new RRTNode(tmpx, tmpy, 0), + new RRTNode(tmpr, tmps, 0) + )); p.frame().add_bnode(so.back().init()); + if (tmpx < p.HMIN) p.HMIN = tmpx; + if (tmpx > p.HMAX) p.HMAX = tmpx; + if (tmpy < p.VMIN) p.VMIN = tmpy; + if (tmpy > p.VMAX) p.VMAX = tmpy; + if (tmpr < p.HMIN) p.HMIN = tmpr; + if (tmpr > p.HMAX) p.HMAX = tmpr; + if (tmps < p.VMIN) p.VMIN = tmps; + if (tmps > p.VMAX) p.VMAX = tmps; } } p.link_obstacles(&co, &so);