Pathfinding implementations in Go lang
Go
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.travis.yml
LICENSE
README.rst
astar.go
dijkstra.go
pathfinding_test.go

README.rst

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