/geohash-java

Implementation of GeoHashes in java. We try to be/stay compliant to the spec, as far as possible.

Primary LanguageJavaGNU Lesser General Public License v3.0LGPL-3.0

java code for geohashes
=======================

An implementation of Geohashes in pure Java.
The produced hashes, when using character precision (multiples of 5 bits) are compatible
to the reference implementation geohash.org.

You can however also encode Geohashes down to the full available precision of a long i.e. 64 bits.


Building/Testing the code
-------------------------

The geohash-java code can be built using Apache Ant.
Following targets are available:

	- clean		# wash dishes.
    - compile	# compile the main source code.
    - test		# (default) run the unit tests.
    - jar		# pack a jar archive with the compiled class files.
    - zip 		# pack a zip archive with the compiled binaries, source code and all other files.


TODO
----

Current development involves getting the following things to run:

-	a method to find the n closest hashes to any given point.
-	find all hashes within a bounding box (possibly including false positives)


Last important changes
----------------------

-	Fixed issue #2 from Github:
	- Neighbouring hashes can be calculated by using the getAdjacent() method, which yields a hashes 8 neighbors.
	- northern, eastern, western and southern neighbours can be determined using the respective methods.

-	Fixed issue #1 from Github:
	- A bug caused different hashes to be yielded sometimes.

	
License
-------

This code has been placed under the LGPL. See the LICENSE file for more information.
Please contribute improvements and bug fixes back via github.