[PROJ] Central longitude & latitude of origin in ISEA projection
Jérôme St-Louis
jerome at ecere.com
Sat Sep 14 18:46:07 PDT 2024
Dear Even, All,
I am questioning the current meaning of /Central longitude & latitude of
origin/ (/lat_0/, /lon_0/) in the ISEA projection.
From what I can see in the code, the /+lat_0/ and /+lon_0/ are being
stored in /Q->o_lat/, /Q->o_lon/:
https://github.com/OSGeo/PROJ/blob/master/src/projections/isea.cpp#L1027
However, these values are also used as the coordinates of the first
icosahedron vertex, when using the /+orient/ parameter, which really
should have absolutely nothing to do with the concepts of central
longitude & latitude of origin in my opinion:
https://github.com/OSGeo/PROJ/blob/master/src/projections/isea.cpp#L604
So it seems like currently, /+lat_0/ and /+lon_0/ allow to specify an
orientation other than the polar or standard orientation that can be
selected with /+orient/.
Selecting both would have /+orient/ override the /+lat_0/ and /+lon_0/
values.
This is really not obvious (I just realized this now), and I would think
it is a misuse of the central latitude/longitude of origin concepts.
The latitude / longitude of origin are normally associated with less
distortion, but distortion is worst in ISEA at the icosahedron vertices,
and it'd definitely not "central" either.
What would make sense to me as the /central longitude & latitude of
origin/ would be which latitude & longitude is projected to the 0, 0
projected coordinates.
This is currently the point at half the height and half the width of the
icosahedron triangle containing South Africa, which is exactly in the
middle of the projection
<https://maps.gnosis.earth/ogcapi/collections/gebco/map?crs=OGC:1534> if
you exclude the bottom-right rhombus (containing part of New Zealand's
north island and Hawaii) making the projection horizontally symmetrical.
I think currently the only way to change this is by specifying false
easting & northing with /+x_0/ and /+y_0/ in projected coordinates.
Would it make sense / be possible to:
- Introduce new parameters allowing to specify a custom coordinate of
the first icosahedron vertex e.g, /+orient_lat/ and /+orient_lon
- /Change the meaning of /+lat_0/ and /+lon_0/ to be the geographic
latitude corresponding to 0, 0 in projected coordinates, documenting
that the default value is -30.0945296301° N, 11.25 E (authalic latitude)
This would be a breaking change only for cases where /+lat_0/ and or
/+lon_0/ is currently being used to position the first icosahedron vertex.
Given that the documentation does not hint at that in any way, I doubt
anyone is using these for that purpose.
Once the authalic / geodetic conversion is in place when using an oblate
spheroid ellipsoid, I think /+orient_lat/ and /+lat_0/ would be assumed
to be in geodetic coordinates (rather than authalic).
These changes would also help clarify what is 0,0 with the default
/+proj=isea/, which currently is quite a mystery which users need to
figure out by themselves.
It would also make it easier to put 0,0 at the vertex West of Alaska as
we do for the OGC:1534 CRS that we're trying to define.
Thank you!
Kind regards,
-Jerome
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/proj/attachments/20240914/7537d5d3/attachment.htm>
More information about the PROJ
mailing list