Enhance dubins path docs (#664)

* Engance dubins path docs

* Update dubins_path.rst

* fix doc artifact link in CI

* wip

* wip

* wip

* Update dubins_path.rst

* wip

* wip

* wip

* wip

* wip
This commit is contained in:
Atsushi Sakai
2022-05-07 13:19:30 +09:00
committed by GitHub
parent 462a8cd6c0
commit 32b545fe7c
15 changed files with 234 additions and 85 deletions

View File

@@ -13,8 +13,8 @@
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
import os
# import sys
# sys.path.insert(0, os.path.abspath('.'))
import sys
sys.path.insert(0, os.path.abspath('../'))
# -- Project information -----------------------------------------------------
@@ -42,6 +42,7 @@ extensions = [
'sphinx.ext.autodoc',
'sphinx.ext.mathjax',
'sphinx.ext.viewcode',
'sphinx.ext.napoleon',
'IPython.sphinxext.ipython_console_highlighting',
]

View File

@@ -1,3 +1,4 @@
sphinx == 4.3.2 # For sphinx documentation
sphinx_rtd_theme == 1.0.0
IPython == 7.31.1 # For sphinx documentation
sphinxcontrib-napoleon == 0.7 # For auto doc

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

View File

@@ -7,12 +7,37 @@ A sample code for Dubins path planning.
Dubins path
~~~~~~~~~~~~
Dubims path is a analyrical path planning algorithm for a simple car model.
Dubins path is a analytical path planning algorithm for a simple car model.
It can generates a shortest path between 2D poses (x, y, yaw) with maximum curvture comstraint and tangent(yaw angle) constraint.
The path consist of 3 segments of maximum curvature curves or a straight line segment.
Each segment type can is categorized by 3 type: 'Right turn (R)' , 'Left turn (L)', and 'Straight (S).'
Possible path will be at least one of these six types: RSR, RSL, LSR, LSL, RLR, LRL.
For example, one of RSR Dubins paths is:
.. image:: dubins_path/RSR.jpg
:width: 400px
one of RLR Dubins paths is:
.. image:: dubins_path/RLR.jpg
:width: 200px
Dubins path planner can output three types and distances of each course segment.
You can generate a path from these information and the maximum curvature information.
In the example code, a path which is minimum course length one among 6 course type is selected and then a path is constructed.
Code
~~~~~~~~~~~~~~~~~~~~
.. automodule:: PathPlanning.DubinsPath.dubins_path_planner
:members:
Reference
@@ -20,3 +45,4 @@ Reference
- `Dubins path - Wikipedia <https://en.wikipedia.org/wiki/Dubins_path>`__
- `15.3.1 Dubins Curves <http://planning.cs.uiuc.edu/node821.html>`__
- `A Comprehensive, Step-by-Step Tutorial to Computing Dubins Paths <https://gieseanw.wordpress.com/2012/10/21/a-comprehensive-step-by-step-tutorial-to-computing-dubins-paths/>`__