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

https://github.com/xarg/gopathfinding

Pathfinding implementations in Go lang
https://github.com/xarg/gopathfinding

Last synced: over 1 year ago
JSON representation

Pathfinding implementations in Go lang

Awesome Lists containing this project

README

          

.. image:: https://secure.travis-ci.org/xarg/gopathfinding.png?branch=master

gopathfinding
=================

A small package that implements pathfinding algorithms.

Implementions
---------------

* A* (A star) - implemented
* Dijkstra - not implemented

Installing
------------

Using goinstall
++++++++++++++++++

::

$ go get github.com/xarg/gopathfinding

Using make
+++++++++++++

::

$ git clone git://github.com/xarg/gopathfinding
$ cd gopathfinding
$ make install

Example
-----------

::

import (
"fmt"
pathfinding "github.com/xarg/gopathfinding"
)

func main() {
//A pathfinding.MapData containing the
//coordinates(x, y) of LAND, WALL, START and STOP of the map.
//If your map is something more than 2d matrix then you might want to modify adjacentNodes

graph := pathfinding.NewGraph(map_data)

//Returns a list of nodes from START to STOP avoiding all obstacles if possible
shortest_path := pathfinding.Astar(graph)
}

Documentation
---------------

http://gopkgdoc.appspot.com/pkg/github.com/xarg/gopathfinding

Or

::

$ go doc github.com/xarg/gopathfinding