Compare projects
Project comparisons allow you to view any selection of projects side by side just like they're shown on regular categories or in search results. You can try out an example or start yourself by adding a library to the comparison via the input below. You can also easily share your current comparison with others by sending the URL of the current page.
0.0
## DESCRIPTION:
Ruby interface to a C++ implemention of the A\* search algorithm.
The C++ implementaion is found here <http://code.google.com/p/a-star-algorithm-implementation/>
## FEATURES:
## SYNOPSIS:
See `spec\castar_spec.rb` for usage examples.
Create an empty map and plan a path across it:
require 'castar'
include Castar
map = init_map(:width => 4, :height => 3)
astar = HeyesDriver.new(map, HeyesDriver::EIGHT_NEIGHBORS)
astar.run(0,0,3,2)
puts get_map_with_path(astar)
|S|1|1|1|
|1|*|1|1|
|1|1|*|G|
Load a map from a text file and plan a path:
map = load_map('./spec/map_20.txt')
astar = HeyesDriver.new(map, HeyesDriver::EIGHT_NEIGHBORS)
astar.run(0,0,19,19)
puts get_map_with_path(astar)
|S|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|
|1|*|*|*|*|*|1|1|1|1|1|1|1|1|1|1|1|1|1|1|
|1|1|9|9|9|9|*|1|1|1|1|9|9|9|9|9|9|9|9|9|
|1|1|9|9|9|9|1|*|1|1|1|9|9|9|9|9|9|9|9|9|
|1|1|9|9|9|9|1|1|*|1|1|9|9|9|9|9|9|9|9|9|
|1|1|9|9|9|9|1|1|1|*|1|9|9|9|9|9|9|9|9|9|
|1|1|9|9|9|9|1|1|1|1|*|9|9|9|9|9|9|9|9|9|
|1|1|9|9|9|9|1|1|1|1|*|9|9|9|9|9|9|9|9|9|
|1|1|1|1|1|1|1|1|1|1|*|9|9|9|9|9|9|9|9|9|
|1|1|1|1|1|1|1|1|1|1|*|9|9|9|9|9|9|9|9|9|
|1|1|1|1|1|1|1|1|1|1|1|*|1|1|1|1|1|1|1|1|
|1|1|1|1|1|1|1|1|1|1|1|1|*|*|*|*|*|1|1|1|
|1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|*|1|1|
|1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|*|1|
|1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*|
|1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*|
|1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*|
|1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*|
|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|*|
|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|G|
## REQUIREMENTS:
* Ruby 1.9
* C compiler for C extensions
## DEVELOPMENT
To modify the gem in a cloned repo this is what I'm doing (from root of gem):
bundle install
cd ext/
ruby extconf.rb
make
These steps will install the development dependencies, build the Makefile and compile the C++ code. Running
bundle exec rspec ./spec
should show all tests passing. To clean up the autogenerated Makefile and the compiled objects:
cd ext/
make realclean
If you need to regenerate the ruby interface functions `heyes_wrap.cxx`, run:
cd swig/
swig -c++ -ruby heyes.i
mv heyes_wrap.cxx ../ext
If you are just trying to run the tests:
rake build
gem install pkg/castar-0.0.1.gem
builds the gem and installs it to your local machine.
gem which castar
tells you where it is. You can then cd to that directory and run the tests as above (but since you're not in a git repo you can't commit them).
I followed the instructions [here](https://github.com/radar/guides/blob/master/gem-development.md) for using Bundler to create the gem.
## INSTALL:
* gem install castar
## LICENSE:
(The MIT License)
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024