Skip to content

Teque5/pydymax

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

Dymaxion Projections

This is a simple geodetic conversion tool for conversion from Lat/Lon to Dymaxion Fuller Map Projection Coordinates.

Rectilinear Blue Marble though pixel coordinate conversion becomes Dymax Blue Marble

The conversion routine is as follows. The specified (lon, lat) pair is first converted to spherical coordinates, then cartesian. That value is then used to determine the face number (0-19) and sub-triangle (0-5) on the icosahedron. All this information is then fed into a final subroutine that outputs an (X,Y) position pair suitable for mapping. Results from conversion are cached so repeated calls query a lookup-table first. Note that this is not WGS84 accurate due to the spherical conversion routine in use.

Icosahedron Faces

Technically, to unfold the earth into an icosahedron, we must first consider slicing the surface using various intersecting great circle patterns. This results in 20 spherical triangles. Each spherical triangle contain 6 of what Buckminster Fuller called LCD (Lowest Common Denominator) triangles. In pydymax these are ordered in a clockwise fashion.

LCD Triangles

All images in /docs and on this page are created by running python3 -m dymax.examples.

To-Do List

  1. Replace spherical coordinate conversion with Earth-Centered-Earth-Fixed for much better accuracy.
  2. Get documentation working correctly.

Install

pip install dymax
# run examples
python3 -m dymax.examples
# benchmark performance
python3 -m dymax.convert

Usage

import dymax
xy_projection = dymax.lonlat2dymax(-118.0367, 34.8951)

Data Sources

License

pydymax code is Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)

References

About

Python Dymaxion Projection Module

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages