Skip to content
This repository has been archived by the owner on Sep 13, 2022. It is now read-only.

Latest commit

 

History

History
65 lines (46 loc) · 1.19 KB

README.md

File metadata and controls

65 lines (46 loc) · 1.19 KB

Geohash

Build Status

Geohash encode/decode implementation for Elixir

Usage

  • Encode coordinates with Geohash.encode(lat, lon, precision \\ 11)
Geohash.encode(42.6, -5.6, 5)
# "ezs42"
  • Decode coordinates with Geohash.decode(geohash)
Geohash.decode("ezs42")
# {42.605, -5.603}
  • Find neighbors
Geohash.neighbors("abx1")
# %{"n" => "abx4",
#   "s" => "abx0",
#   "e" => "abx3",
#   "w" => "abwc",
#   "ne" => "abx6",
#   "se" => "abx2",
#   "nw" => "abwf",
#   "sw" => "abwb"}
  • Find adjacent
Geohash.adjacent("abx1","n")
# "abx4"
  • Get bounds
Geohash.bounds("u4pruydqqv")
# %{min_x: 10.407432317733765, min_y: 57.649109959602356, max_x: 10.407443046569824, max_y: 57.649115324020386}

Installation

  1. Add geohash to your list of dependencies in mix.exs:

    def deps do [{:geohash, "~> 1.0"}] end

  2. Ensure geohash is started before your application:

    def application do [applications: [:geohash]] end