]> rtime.felk.cvut.cz Git - hubacji1/rrts.git/commitdiff
Add ext2 collide method skeletons
authorJiri Vlasak <hubacji1@fel.cvut.cz>
Fri, 13 Sep 2019 08:22:28 +0000 (10:22 +0200)
committerJiri Vlasak <hubacji1@fel.cvut.cz>
Tue, 17 Sep 2019 12:49:47 +0000 (14:49 +0200)
api/rrtext.h
api/rrts.h
src/rrtext2.cc

index 561b6a193c4b48e01a91c02897abe3a74288ede0..7b61bf5cace0ce562e12028d233dff91e2632cf8 100644 (file)
@@ -20,6 +20,13 @@ class RRTExt2 : public RRTS {
                 DtShapeRef sr_bc_;
                 Obstacle static_obstacle_;
                 DtShapeRef sr_static_obstacles_;
+
+                // Collide RRT procedures
+                std::tuple<bool, unsigned int, unsigned int>
+                collide_steered_from(RRTNode &f);
+
+                std::tuple<bool, unsigned int, unsigned int>
+                collide_two_nodes(RRTNode &f, RRTNode &t);
         public:
                 /*! \brief Initialize SOLID based extension.
                 */
index abd43bb5d571eedf2894154b34fa0925c2e5099a..27b969c21aca3ef1e370de4812f7686f51371be8 100644 (file)
@@ -65,9 +65,9 @@ class RRTS {
                 // RRT procedures
                 std::tuple<bool, unsigned int, unsigned int>
                 collide(std::vector<std::tuple<double, double>> &poly);
-                std::tuple<bool, unsigned int, unsigned int>
+                virtual std::tuple<bool, unsigned int, unsigned int>
                 collide_steered_from(RRTNode &f);
-                std::tuple<bool, unsigned int, unsigned int>
+                virtual std::tuple<bool, unsigned int, unsigned int>
                 collide_two_nodes(RRTNode &f, RRTNode &t);
                 virtual double cost_build(RRTNode &f, RRTNode &t);
                 virtual double cost_search(RRTNode &f, RRTNode &t);
index d572c4d47e058fbfbc29b84867ea57bfc93559bb..2f693db3cadcd4b1448239acaffb2857c43952f7 100644 (file)
@@ -1,6 +1,18 @@
 #include "rrtext.h"
 #include "3D/Quaternion.h"
 
+std::tuple<bool, unsigned int, unsigned int>
+RRTExt2::collide_steered_from(RRTNode &f)
+{
+        return std::make_tuple(false, 0, 0);
+}
+
+std::tuple<bool, unsigned int, unsigned int>
+RRTExt2::collide_two_nodes(RRTNode &f, RRTNode &t)
+{
+        return std::make_tuple(false, 0, 0);
+}
+
 void solid_collide(
         void * client_data,
         DtObjectRef obj1,