Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jannikmi/extremitypathfinder

python package for fast shortest path computation on 2D polygon or grid maps
https://github.com/jannikmi/extremitypathfinder

astar-pathfinding graph-algorithms gridworld multipolygon navigation offline-path-planners path path-planning pathfinder pathfinding pathfinding-algorithm polygon robotics shortest-path shortest-path-algorithm shortest-pathfinding-algorithm shortest-paths visibility visibility-graph visibility-graph-algorithm

Last synced: about 5 hours ago
JSON representation

python package for fast shortest path computation on 2D polygon or grid maps

Awesome Lists containing this project

README

        

===================
extremitypathfinder
===================

..
Note: can't include the badges file from the docs here, as it won't render on PyPI -> sync manually

.. image:: https://github.com/jannikmi/extremitypathfinder/actions/workflows/build.yml/badge.svg?branch=master
:target: https://github.com/jannikmi/extremitypathfinder/actions?query=branch%3Amaster

.. image:: https://readthedocs.org/projects/extremitypathfinder/badge/?version=latest
:alt: documentation status
:target: https://extremitypathfinder.readthedocs.io/en/latest/?badge=latest

.. image:: https://img.shields.io/pypi/wheel/extremitypathfinder.svg
:target: https://pypi.python.org/pypi/extremitypathfinder

.. image:: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white
:target: https://github.com/pre-commit/pre-commit
:alt: pre-commit

.. image:: https://pepy.tech/badge/extremitypathfinder
:alt: Total PyPI downloads
:target: https://pepy.tech/project/extremitypathfinder

.. image:: https://img.shields.io/pypi/v/extremitypathfinder.svg
:alt: latest version on PyPI
:target: https://pypi.python.org/pypi/extremitypathfinder

.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/psf/black

python package for fast geometric shortest path computation in 2D multi-polygon or grid environments based on visibility graphs.

.. image:: ./docs/_static/title_demo_plot.png

Quick Guide:

Install the package with the optional Numba extra for a significant speedup:

.. code-block:: console

pip install extremitypathfinder[numba]

.. code-block:: python

from extremitypathfinder import PolygonEnvironment

environment = PolygonEnvironment()
# counter clockwise vertex numbering!
boundary_coordinates = [(0.0, 0.0), (10.0, 0.0), (9.0, 5.0), (10.0, 10.0), (0.0, 10.0)]
# clockwise numbering!
list_of_holes = [
[
(3.0, 7.0),
(5.0, 9.0),
(4.5, 7.0),
(5.0, 4.0),
],
]
environment.store(boundary_coordinates, list_of_holes, validate=False)
start_coordinates = (4.5, 1.0)
goal_coordinates = (4.0, 8.5)
path, length = environment.find_shortest_path(start_coordinates, goal_coordinates)

For more refer to the `documentation `__.

Also see:
`GitHub `__,
`PyPI `__