DGGS/Proj/rHEALPix: mudanças entre as edições
Sem resumo de edição |
|||
Linha 1: | Linha 1: | ||
Projeção "Rotated HEALPix" (rHEALPix), projeção adaptada da [[wikipedia:HEALPix|HEALPix]]. As faces do globo são projetadas em uma "caixa cubica" para obtenção das coordenadas planas. | Projeção "Rotated HEALPix" (rHEALPix), projeção adaptada da [[wikipedia:HEALPix|HEALPix]]. O nome vem da frase em inglês "'''H'''ierarchical '''E'''qual '''A'''rea isoLatitude '''Pix'''elisation of a [[wikipedia:N-sphere|2-sphere]]". As faces do globo são projetadas em uma "caixa cubica" para obtenção das coordenadas planas. | ||
Ao contrário da maioria das projeções DGGS, que projetam o globo nas faces planas de um poliedro, o sistema rHEALPix conseguiu um ajuste satisfatório do cilindro com as faces polares, tendo toda a África e América Latina submetidas diretamente à [[wikipedia:Lambert cylindrical equal-area projection|Projeção cilíndrica equivalente de Lambert]]. | Ao contrário da maioria das projeções DGGS, que projetam o globo nas faces planas de um poliedro, o sistema rHEALPix conseguiu um ajuste satisfatório do cilindro com as faces polares, tendo toda a África e América Latina submetidas diretamente à [[wikipedia:Lambert cylindrical equal-area projection|Projeção cilíndrica equivalente de Lambert]]. | ||
Linha 37: | Linha 37: | ||
* outra fonte do original de 2016 mostrando que rHEALPix é DGGS, doi:10.1088/1755-1315/34/1/012012 , "R G Gibb 2016 IOP Conf. Ser.: Earth Environ. Sci. 34 012012", https://iopscience.iop.org/article/10.1088/1755-1315/34/1/012012/pdf | * outra fonte do original de 2016 mostrando que rHEALPix é DGGS, doi:10.1088/1755-1315/34/1/012012 , "R G Gibb 2016 IOP Conf. Ser.: Earth Environ. Sci. 34 012012", https://iopscience.iop.org/article/10.1088/1755-1315/34/1/012012/pdf | ||
== | == Implementações == | ||
=== Python === | |||
Distribuição oficial do DGGS, https://pypi.org/project/rHEALPixDGGS/ | |||
* Atualmente em https://github.com/manaakiwhenua/rhealpixdggs-py (onde discutimos [https://github.com/manaakiwhenua/rhealpixdggs-py/issues/13#issuecomment-1937676815 alternativas para AFAcodes e Overture Maps]) | |||
* Faz uso de https://pyproj4.github.io/pyproj/stable/ | |||
=== PostGIS=== | |||
Faz uso direto de https://proj.org | |||
* Atualmente não tem DGGS adaptado do Python, mas pode-se importar as funções. | |||
=== Em Javascript === | |||
Ver implementações com a [https://github.com/d3/d3-geo-projection biblioteca D3/d3-geo-projection]: | |||
* https://observablehq.com/@d3/healpix | |||
** Origem Lambert https://observablehq.com/@d3/cylindrical-equal-area-projections | |||
** origem Collignon https://observablehq.com/@d3/collignon | |||
==Projeções Similares== | ==Projeções Similares== |
Edição das 06h19min de 13 de fevereiro de 2024
Projeção "Rotated HEALPix" (rHEALPix), projeção adaptada da HEALPix. O nome vem da frase em inglês "Hierarchical Equal Area isoLatitude Pixelisation of a 2-sphere". As faces do globo são projetadas em uma "caixa cubica" para obtenção das coordenadas planas.
Ao contrário da maioria das projeções DGGS, que projetam o globo nas faces planas de um poliedro, o sistema rHEALPix conseguiu um ajuste satisfatório do cilindro com as faces polares, tendo toda a África e América Latina submetidas diretamente à Projeção cilíndrica equivalente de Lambert.
- Características
Fizemos um primeiro teste com HEALPix usando a variante rHEALPix (células retangulares) na Colômbia, ver git.osm.codes/CO_new/wiki/Propuesta-2. Adotou-se a implementação PROJ, proj.org/rhealpix: a ilustração abaixo mostra o sistema de coordenadas normalizado (depois expandido para métrico) sobre a "caixa cúbica".
A quantização global não foi adotado, usamos simplesmente a projeção métrica final, tal como oferecida pela biblioteca PROJ, para daí quantizar em células adequadas à cobertura do país.
Conforme ilustração abaixo o refinamento de grade originalmente adotado, particionando cada quadrado em 9 quadrados menores, é incompativel com o refinamento OSMcodes, que adota a partição 4. O "efeito colateral" para a partição-4 iniciada por G0 seria a quebra de simetria nas coberturas norte-sul, de modo que a cobertura OSMcodes inciada por G1 talvez fosse mais simples, comprometendo em um dígito o tamanho final dos geocódigos. Apesar de simples em conceito, a revisão da implementação desse tipo de algoritmo exige alta capacitação do programador.
Em comparações gerais o rHEALPix se mostrou nais preciso do que o osmc:Global Projection/S2 Geometry da Google e do que o osmc:Global Projection/ISEA. Seu uso foi indicado por estudo recente, [BowWac2020].
Novos artigos
- https://www.researchgate.net/publication/303093407_The_rHEALPix_Discrete_Global_Grid_System
- ... ver dicas de processamento Hadoop em DGGS/Processing
- "An open-source web service for creating quadrilateral grids based on the rHEALPix Discrete Global Grid System", de 2019. https://doi.org/10.1080/17538947.2019.1645893
Criou API para gerar coberturas de polígonos. Pode-se aproveitar a abordagem para gerar grades nacionais unificadas, todas baseadas em grades de potências de 2, não em frações da área terrestre. - draft "THE RHEALPIX DISCRETE GLOBAL GRID SYSTEM" (GIBB, RAICHEV and SPETH de 2013), importante por discutir "illustrate some of the (r)HEALPix projection options" e mostrar "For longitude-latitude reference, equirectangular projections of the ellipsoidal grids", dando significado ao PROJ https://raichev.net/files/rhealpix_dggs_preprint.pdf
- implementação Python, partindo da PROJ? https://github.com/surroundaustralia/rhealpix-geo/tree/master ver também https://github.com/surroundaustralia/rhealpix-sf/
- principal implementação Python, com Gibbs, https://github.com/manaakiwhenua/rhealpixdggs-py
Aparentemente "Use a projection from the PROJ.4 library", mas vale pedir para confirmar, de modo a reinventar no PostGIS - outra fonte do original de 2016 mostrando que rHEALPix é DGGS, doi:10.1088/1755-1315/34/1/012012 , "R G Gibb 2016 IOP Conf. Ser.: Earth Environ. Sci. 34 012012", https://iopscience.iop.org/article/10.1088/1755-1315/34/1/012012/pdf
Implementações
Python
Distribuição oficial do DGGS, https://pypi.org/project/rHEALPixDGGS/
- Atualmente em https://github.com/manaakiwhenua/rhealpixdggs-py (onde discutimos alternativas para AFAcodes e Overture Maps)
- Faz uso de https://pyproj4.github.io/pyproj/stable/
PostGIS
Faz uso direto de https://proj.org
- Atualmente não tem DGGS adaptado do Python, mas pode-se importar as funções.
Em Javascript
Ver implementações com a biblioteca D3/d3-geo-projection:
- https://observablehq.com/@d3/healpix
- Origem Lambert https://observablehq.com/@d3/cylindrical-equal-area-projections
- origem Collignon https://observablehq.com/@d3/collignon
Projeções Similares
- wikipedia:Quadrilateralized spherical cube (classe geral que abrangeria rHEALPix).
- Dual Orthogonal Equidistant Cylindrical Projection. Mesma projeção equatorial, só mudam as polares.
Ver "Efficient Distortion Mitigation and Partition Reduction in Mapping Global Geodata: Dual Orthogonal Equidistant Cylindrical Projection Approach"; A. Dimitrijević, A. Milosavljević, D. Rančić. In ISPRS Int. J. Geo-Inf. 2023, 12(7), 289; https://doi.org/10.3390/ijgi12070289
- de 2011, https://doi.org/10.1016/j.cam.2011.07.009 mostra que quadrados perfeitos são possíveis, inclusive com opção de centrada em célula ou centrada em interseção (que faz mais sentido para Morton). Ainda assim, como se destaca, há que solicitar a quebra correta. Aparentemente usaram projeção ISEA, "... inverse Lambert azimuthal equal area projection"... "Starting with a spherical triangulation, obtained e.g. by projecting the faces of an icosahedron to the sphere, a subdivision method is proposed to partition each spherical triangle into four equal area subtriangles".