SkillAgentSearch skills...

PyReedsShepp

The library of implementation of the analytic Reeds Shepp curve. Forked from (here)[https://github.com/ghliu/pyReedsShepp]

Install / Use

/learn @liespace/PyReedsShepp
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Reeds Shepp Path Library

Forked from the repository of Guan-Horng Liu. Modified some places:

  1. Modify the path_type function to get the length (>0 for forward, <0 for backward) and curvature (>0 for left, <0 for right) of each segment.

Overview

The library implements the analytic Reeds Shepp path between two SE2 configurations. Reeds Sheep path[^1] is defined as the shortest traveling path of the Reeds-Shepp Car, a car that can go both forward and backward with a constrained turning radius. Reeds-Sheep path can be viewed as a generalized version of Dubins path. The primary C++ source code comes from Open Motion Planning Library(OMPL). And the API of Python version (primarily a Cython wrapper) is similar to the Dubins library from Andrew Walker. More descriptions can be referred to the OMPL and section 15.3.2 of the book Planning Algorithms.

Installation

PyPI

$ pip install reeds-shepp

from source

$ sudo python setup.py install

Demo

$ python demos/demo.py

API

  • path_length(q0, q1, turning_radius)

    • return total length of Reed Shepps curve from q0 to q1 with specified turning radius
  • path_sample(q0, q1, turning_radius, step_size)

    • return list of tuple (x,y,theta) uniformly sampled from corresponding Reed Shepps curve
  • path_type(q0, q1, turning_radius)

    • return the tuple of path segment type and length for the Reed Sheps curve from q0 to q1 with specified turning radius

References

[^1]: Reeds, J., & Shepp, L. (1990). Optimal paths for a car that goes both forwards and backwards. Pacific journal of mathematics, 145(2), 367-393.

View on GitHub
GitHub Stars7
CategoryDevelopment
Updated11mo ago
Forks4

Languages

C++

Security Score

77/100

Audited on Apr 18, 2025

No findings