I am honoured to have met both of you, Even, Martin - and I really do value 
your respective thoughts; 
I have invested quite a bit of research time and work I’ve put into this 
project so far, and your opinions are really valuable.

Martin, your points on ISO 19111/19112 are really well made.

As I understand it - and I am happy to be corrected,  it appears that you are 
confirming that there is not (yet) an 
agreed standard as to what a DGGS should be in ISO terms.

However, I feel that ISO 19112 (referencing by identifiers — "what cell am I 
in?") is a natural home for the DGGS addressing layer: given a location, return 
an
identifier: That's the H9 address, the H3 index, the S2 cell ID… and it's a 
different question from "what are the coordinates of this location in the Hex9 
projection?” 
— which is unambiguously ISO 19111 territory.

My work - Hex9 - straddles both standards cleanly:
  - The projection (continuous CRS) — ISO 19111
  - The addressing system (H9 cell hierarchy) — ISO 19112

It seems that most DGGS systems have historically conflated these two things. 

When I designed Hex9, it became clear that they are better refactored into 
genuinely separate layers which, while being architecturally unusual, feels 
arguably correct. (I chose to design the system so that the cell hierarchy is a 
consumer of the projection rather than intrinsic to it.  This, I feel, was a 
design decision with consequences: Any hierarchical resolution can sit on top 
of the same CRS without changing the projection. 

The PROJ plugin I am currently working on would implement the ISO 19111 layer. 
The Python hhg9 package, and/or additional software libraries would implement 
the ISO 19112 layer on top of it.

Hex9 is truly continuous (although both the python and the PROJ C++ 
implementation hit machine epsilon limits).  The PROJ implementation achieves 
sub-25nm round-trip geodesic accuracy in current testing — the continuous 
nature of the CRS is not just theoretical.

There is an additional question worth addressing directly: the CRS is 
octahedral, and the coordinate geometry is inherently triangular. The hexagonal 
cell structure arises as a precise consequence of that triangulation — it is 
not imposed on the projection but derived from it. I will  admit that in my own 
earlier documentation I conflated the projection geometry with the cell 
addressing, which likely contributed to the DGGS framing. That conflation was 
mine to make, not the architecture's — and separating them clearly is part of 
what this PROJ submission is intended to establish.

Kind regards.
 -Ben.

_______________________________________________
PROJ mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/proj

Reply via email to