diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
new file mode 100644
index 00000000..80f4984c
--- /dev/null
+++ b/.github/FUNDING.yml
@@ -0,0 +1,3 @@
+# These are supported funding model platforms
+patreon: myenigma
+custom: https://www.paypal.me/myenigmapay/
diff --git a/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py b/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py
index d42592a0..351232d8 100644
--- a/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py
+++ b/PathPlanning/ProbabilisticRoadMap/probabilistic_road_map.py
@@ -161,12 +161,18 @@ def generate_roadmap(sample_x, sample_y, rr, obkdtree):
def dijkstra_planning(sx, sy, gx, gy, ox, oy, rr, road_map, sample_x, sample_y):
"""
+ sx: start x position [m]
+ sy: start y position [m]
gx: goal x position [m]
- gx: goal x position [m]
+ gy: goal y position [m]
ox: x position list of Obstacles [m]
oy: y position list of Obstacles [m]
- reso: grid resolution [m]
- rr: robot radius[m]
+ rr: robot radius [m]
+ road_map: ??? [m]
+ sample_x: ??? [m]
+ sample_y: ??? [m]
+
+ @return: Two lists of path coordinates ([x1, x2, ...], [y1, y2, ...]), empty list when no path was found
"""
nstart = Node(sx, sy, 0.0, -1)
@@ -175,9 +181,12 @@ def dijkstra_planning(sx, sy, gx, gy, ox, oy, rr, road_map, sample_x, sample_y):
openset, closedset = dict(), dict()
openset[len(road_map) - 2] = nstart
+ path_found = True
+
while True:
if not openset:
print("Cannot find path")
+ path_found = False
break
c_id = min(openset, key=lambda o: openset[o].cost)
@@ -217,6 +226,9 @@ def dijkstra_planning(sx, sy, gx, gy, ox, oy, rr, road_map, sample_x, sample_y):
openset[n_id].pind = c_id
else:
openset[n_id] = node
+
+ if path_found is False:
+ return [], []
# generate final course
rx, ry = [ngoal.x], [ngoal.y]
@@ -249,8 +261,8 @@ def sample_points(sx, sy, gx, gy, rr, ox, oy, obkdtree):
sample_x, sample_y = [], []
while len(sample_x) <= N_SAMPLE:
- tx = (random.random() - minx) * (maxx - minx)
- ty = (random.random() - miny) * (maxy - miny)
+ tx = (random.random() * (maxx - minx)) + minx
+ ty = (random.random() * (maxy - miny)) + miny
index, dist = obkdtree.search(np.array([tx, ty]).reshape(2, 1))
diff --git a/users_comments.md b/users_comments.md
index a68b828f..3fef92a0 100644
--- a/users_comments.md
+++ b/users_comments.md
@@ -208,6 +208,25 @@ Mr AtsushiSakai ..
Your work and teaching is light for me
thank you very
--Karim Anass
+---
+
+Thank You
+
+--Anonymous
+
+---
+
+I've learned the robotics from the traditional way of solving problem through finding packages and reading papers. This amazing project is unbelievably helpful for new-comers to learn and get familiar with the algorithms. Gods know how many hours you've taken to sort all the materials and written everything into one single coherent project. I'm truly amazed and deepest appreciation.
+
+--Ewing Kang
+
+---
+
+Hey, I'm a student and I just recently got into robotics, and visited your repository multiple times. Today I was super happy to find the link to Patreon! I am impressed by didactic quality of the repo, keep up the good work!
+
+--Carolina Bianchi
+
+
=========
# Citations