Skip to content

Commit

Permalink
ISEA Inverse projection (#3047)
Browse files Browse the repository at this point in the history
- Integrating code ported from Java to eC, then eC to C++ implementing the inverse ISEA projection
- Originally from Franz-Benjamin Mocnik's ISEA implementation found at
   https://github.com/mocnik-science/geogrid/blob/master/src/main/java/org/giscience/utils/geogrid/projections/ISEAProjection.java
   (MIT License)
- NOTE: The inverse only supports the default planar options
  • Loading branch information
jerstlouis committed Aug 13, 2024
1 parent 64ece97 commit 825682a
Show file tree
Hide file tree
Showing 3 changed files with 624 additions and 138 deletions.
34 changes: 24 additions & 10 deletions docs/source/operations/projections/isea.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,16 @@
Icosahedral Snyder Equal Area
********************************************************************************

Snyder's Icosahedral Equal Area map projections on polyhedral globes for the
dodecahedron and truncated icosahedron offer relatively low scale and
angular distortion. The equations involved are relatively straight-forward,
and for certain instructional tools and databases, the projections are useful
for world maps. The interruptions remain a disadvantage, as with any low-error
projection system applied to the entire globe :cite:`Snyder1992`.

Snyder's Icosahedral Equal Area map projection on an icosahedron polyhedral globe
offers relatively low scale and angular distortion. The equations involved are
relatively straight-forward. The interruptions remain a disadvantage, as with
any low-error projection system applied to the entire globe :cite:`Snyder1992`.
This projection is used as a basis for defining discrete global grid hierarchies.

+---------------------+----------------------------------------------------------+
| **Classification** | Polyhedral, equal area |
+---------------------+----------------------------------------------------------+
| **Available forms** | Forward, spherical |
| **Available forms** | Forward and inverse, spherical |
+---------------------+----------------------------------------------------------+
| **Defined area** | Global |
+---------------------+----------------------------------------------------------+
Expand All @@ -36,6 +34,14 @@ projection system applied to the entire globe :cite:`Snyder1992`.

proj-string: ``+proj=isea``

.. note::
As the projection is only defined on a sphere, it should only be used
with a spherical ellipsoid e.g., ``+R=6371007.18091875`` for a sphere with the
authalic radius of the WGS84 ellipsoid. For mapping coordinates on the WGS84
ellipsoid to the authalic sphere, the input latitude should be converted
from geodetic latitude to authalic latitude. A future version may
automatically perform this conversion when using a non-spherical ellipsoid.

Parameters
################################################################################

Expand All @@ -44,27 +50,35 @@ Parameters
.. option:: +orient=<string>

Can be set to either ``isea`` or ``pole``. See Snyder's Figure 12 for pole orientation :cite:`Snyder1992`.

*Defaults to isea*

.. option:: +azi=<value>

Azimuth.

Not supported by the inverse.

*Defaults to 0.0*

.. option:: +aperture=<value>

Not supported by the inverse.

*Defaults to 3.0*

.. option:: +resolution=<value>

Not supported by the inverse.

*Defaults to 4.0*

.. option:: +mode=<string>

Can be either ``plane``, ``di``, ``dd`` or ``hex``.


Only ``plane`` supported by the inverse.

*Defaults to plane*

.. include:: ../options/lon_0.rst
Expand Down
Loading

0 comments on commit 825682a

Please sign in to comment.