Skip to main content

Efficient great circle computation and projection library for x86 or x64 platform on Windows or Ubuntu.

Project description



pypi pypi pypi

Support this project

Buy Ѧ and:

  • <input type="checkbox" disabled="" /> Send Ѧ to AUahWfkfr5J4tYakugRbfow7RWVTK35GPW
  • <input type="checkbox" disabled="" /> Vote arky on Ark blockchain and earn Ѧ weekly

Why this package ?

Gryd package provides efficient great circle computation and projection library. It is light weight (less than 500Ko) and does not rely on dependency.


The Gryd Project [WIP]


from source distribution

$ python install

from pip

$ python -m pip install Gryd


Bug report & feedback

Use project issues.

Add / modify / fix code

Guidance words: keep it simple and solid!

  1. open a issue to propose your contribution
  2. once issue is granted
    • fork this repository
    • edit your contribution
    • start a pull request



  • documentation API change
  • binary source released
  • code improvement
  • dump location api change
>>> import Gryd
>>> dublin = Gryd.Geodesic(-6.272877, 53.344606, 105.)
>>> # mapbox static map api url
>>> url = ""\
...       "pin-s+f74e4e(%(lon)f,%(lat)f)/%(lon)f,%(lat)f,%(zoom)d,0/"\
...       "%(width)dx%(height)d?access_token=%(token)s"
>>> # see
>>> token = "pk.eyJ1IjoibW91c2lr[...]nJtcHlyejFrNXd4In0.JIyrV6sWjehsRHKVMBDFaw"
>>> dublin.dump_location("test/dublin.png", url, zoom=15, width=300, height=200, token=token)

Here is Dublin

  • geohash module improvement
    • implementation based on python integers
    • better encryption interface


  • added geohash module


  • Geodesic class can now dump thumbanil location from google staticmap API
  • bugfix in unit usage for classic projection (other than grid)


  • projection core changes (simpler & faster)
  • added miller and eqc projection
  • 64 bit support for Windows
  • encrypt/decrypt geodesic coordinates
>>> point = Gryd.Geodesic(-6.23, 53.63)
>>> point.encrypt("your encryption key")
>>> Gryd.decrypt('mwszncbe9g2tu29', key="hacking...") # gives coordinates but not the good ones
Geodesic point lon=+025°22'0.011'' lat=-086°36'35.290'' alt=0.000
>>> Gryd.decrypt('mwszncbe9g2tu29', key="your encryption key")
Geodesic point lon=-006°13'48.000'' lat=+053°37'48.000'' alt=0.000
>>> point
Geodesic point lon=-006°13'48.000'' lat=+053°37'48.000'' alt=0.000


  • bugfix for mgrs.inverse function
  • utm and mgrs grid tweaks


  • Gryd.Geodesic exports itself in geohash, maidenhead, georef and gars
  • Gryd.Geodesic created from geohash, maidenhead, georef and gars


  • bng and ing grid tweaks


  • bugfix for utm and mgrs grid computation
  • Crs.unit value is now used in computation


  • Provide a multiplatform wheel (32 and 64 bit for Windows and Ubuntu)
  • Python sources released


  • Added API doc


  • All Gryd objects are pickle-able
>>> import pickle
>>> data = pickle.dumps(wgs84)
>>> data
b'\x80\x03c_ctypes\n_unpickle\nq\x00cGryd\nEllipsoid\nq\x01}q\x02X\x04\x00\x00\x00nameq\x03X\x06\x00\x00\x00WGS 84q\x04sC(v\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00@\xa6TXA\xd0\x97\x1c\x14\xc4?XA\x9a\xaf\xda<\x1a\xf2\xb4?(\xe1\xf3\x84Zwk?q\x05\x86q\x06\x86q\x07Rq\x08.'
>>> pickle.loads(data)
Ellispoid epsg=7030 a=6378137.000000 1/f=298.25722356


  • bugfix Gryd.Vincenty_dest representation
  • wheel distribution fix


  • linux (ubuntu) fix


  • Gryd.Geodesic class takes degrees arguments for longitude and latitude values
  • better objects representation
  • speed improvement
  • added __float__ operator for Gryd.Dms and Gryd.Dmm objects
>>> float(Gryd.Dms(1, 5, 45, 23))
>>> "%.6f" % Gryd.Dms(-1, 5, 45, 23)


  • minor changes in C extensions
  • bugfix geoid.dms and geoid.dmm function


  • first public binary release (win32 and linux platform)

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for Gryd, version 2.0.0
Filename, size File type Python version Upload date Hashes
Filename, size Gryd-2.0.0-py3.8-win-amd64.egg (151.1 kB) File type Egg Python version 3.8 Upload date Hashes View
Filename, size Gryd-2.0.0.tar.gz (114.5 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page