2 This file is part of I am car.
4 I am car is free software: you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation, either version 3 of the License, or
7 (at your option) any later version.
9 I am car is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
14 You should have received a copy of the GNU General Public License
15 along with I am car. If not, see <http://www.gnu.org/licenses/>.
27 class LaValle1998: public RRTBase {
29 //using RRTBase::RRTBase;
30 LaValle1998(RRTNode *init, RRTNode *goal);
34 std::vector<RRTNode *> &nodes,
36 float (*cost)(RRTNode *, RRTNode *));
38 std::vector<RRTNode *> (*steer)(
41 float (*cost)(RRTNode *init, RRTNode *goal);
45 class Kuwata2008: public RRTBase {
47 Kuwata2008(RRTNode *init, RRTNode *goal);
51 std::vector<RRTNode *> &nodes,
53 float (*cost)(RRTNode *, RRTNode *));
55 std::vector<RRTNode *> (*steer)(
58 float (*cost)(RRTNode *init, RRTNode *goal);
62 class Karaman2011: public RRTBase {
64 Karaman2011(RRTNode *init, RRTNode *goal);
68 std::vector<RRTNode *> &nodes,
70 float (*cost)(RRTNode *, RRTNode *));
71 std::vector<RRTNode *> (*nv)(
74 float (*cost)(RRTNode *, RRTNode *),
77 std::vector<RRTNode *> (*steer)(
80 float (*cost)(RRTNode *init, RRTNode *goal);
84 class T1: public RRTBase {
86 T1(RRTNode *init, RRTNode *goal);
90 std::vector<RRTNode *> &nodes,
92 float (*cost)(RRTNode *, RRTNode *));
93 std::vector<RRTNode *> (*nv)(
96 float (*cost)(RRTNode *, RRTNode *),
99 std::vector<RRTNode *> (*steer)(
102 float (*cost)(RRTNode *init, RRTNode *goal);