Skip to main content

A simple to use library for finding the shortest path in a grid.

Project description

gtravyl

gtravyl provides an easy way to take a grid-like layout and compute the shortest distance from any two desired cells in the grid.

How does it work?

Suppose you are trying to create a real time strategy game. You may have a grid-like map internally represented as a numpy array. It might look something like:

0001111
0001111
0000000
1101110
1101110

where the 1 indicates you cannot travel into that cell. Now you want to move a character that is in the cell with index (0, 0) to the bottom right corner. Ideally, you would like to know the shortest path too. This can be done easily with gtravyl, observe:

import numpy as np
import gtravyl as gt
world = np.array([[0, 0, 0, 1, 1, 1, 1],
                  [0, 0, 0, 1, 1, 1, 1],
                  [0, 0, 0, 0, 0, 0, 0],
                  [1, 1, 0, 1, 1, 1, 0],
                  [1, 1, 0, 1, 1, 1, 0]])
path = gt.shortest_path(world, (0, 0), (4, 6))
for cell in path:
    world[cell] = 2

print(world)

This gives a path (represented by the cells with 2) that looks like one should expect:

[[2 2 2 1 1 1 1]
 [0 0 2 1 1 1 1]
 [0 0 2 2 2 2 2]
 [1 1 0 1 1 1 2]
 [1 1 0 1 1 1 2]]

Documentation

More documentation can be found on readthedocs.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gtravyl-0.1.4.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gtravyl-0.1.4-py3-none-any.whl (3.7 kB view details)

Uploaded Python 3

File details

Details for the file gtravyl-0.1.4.tar.gz.

File metadata

  • Download URL: gtravyl-0.1.4.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for gtravyl-0.1.4.tar.gz
Algorithm Hash digest
SHA256 897be19ed9b4b116e2386183b9999ca385c89547a1a1e33e8076bd33c9f169bd
MD5 e2b65418ddd9503d4f0d60639654a2de
BLAKE2b-256 8ebebc704fd3b53ff009b259d56de52998245ab194de221086ef1f71e2980205

See more details on using hashes here.

Provenance

The following attestation bundles were made for gtravyl-0.1.4.tar.gz:

Publisher: python-publish.yml on thyrgle/gtravyl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gtravyl-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: gtravyl-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 3.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for gtravyl-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 dff1997158aa0a6d320df33aaff12298838b8717d7b8bad3a8ea888ad3e19d6f
MD5 b5139b7735f9b8165c0e3beee6c261e8
BLAKE2b-256 a3d142c4fc149d4d27a95513e05dcca8c00670f3c3a1c5ad99ea2a8ff4bed2d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for gtravyl-0.1.4-py3-none-any.whl:

Publisher: python-publish.yml on thyrgle/gtravyl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page