osm-codes / GGeohash

Generalized Geohash Algorithms of the OSM.codes
Apache License 2.0
0 stars 0 forks source link

Sintaxe para complemento horizontal do endereço #15

Open ppKrauss opened 2 years ago

ppKrauss commented 2 years ago

OSMcode postal é um ponto geográfico que coincide com a "testada de lote" do endereço postal. Endereços postais também possuem complenento, e, pode acontecer desse complemento não ser simplesmente a "casa do fundo" ou "andar Tal apartamento tal", mas a localização dentro do condomínio, tal como "rua tal numero tal".

A rigor temos um "endereço dual", com a parte oficial pública correspondendo à localização da portaria, e a "parte privada", indicando uma localização que pode ser bem distante da portaria. Como ainda é uma localização de GPS, é de certa forma compromisso do OSMcodes expressar também esse tipo de endereço.

O caso típico é o "endereço de casa em condomínio horizontal". Todos reclamam que pro Uber não basta saber a portaria do condominio, precisa depois entrar e chegar na casa, do lado de dentro do condomínio. O mesmo vale para o meio rural, tem a porteira da estradinha e depois um longo percurso na trilha até a casa.


Os dois casos principais e exemplos.

Entrada curta e localização mais longa

O Parque Shopping Sulacap tem uma entrada ampla, caracterizada como seu endereço postal. Mas o ponto de embarque-desembarque, próximo ao toldo do fundo, fica bem longe dali.

Por exemplo o Uber precisa chegar em BR-RJ-RioJaneiro\~G04Y9, com erro de 6 metros. Antes, todavia, precisa chegar no endereço real, que é um amplo acesso (encaixa em ~32m) em BR-RJ-RioJaneiro\~G0JT. Resumindo: temos um ponto de interesse e o endereço oficial porém apenas do acesso, não chega ainda no local desejado.

Solução: o endereço-duplo para o Uber é BR-RJ-RioJaneiro~G0JT...4Y9.
PS: a entrada do grande lote condominial fica no endereço de grade mais curto, representa uma grande portaria, G0JT. A porta da casa mesmo usa um endereço de grade mais longo, G04Y9, que no final ficou curto, com 3 dígitos.

image

Entrada e localização longas

No exemplo abaixo, apesar de todas as localizações serem próximas, a menos de 500 metros uma da outra, a grade sobre elas apresenta uma "encruzilhada de células-mãe".

Então neste caso, se a porteira se encontra digamos em BR-RJ-Rio\~G009 e o endereço final em BR-RJ-Rio\~5CPBSX, a forma mais simples de representar é a dual BR-RJ-Rio~G009~5CPBSX.

image


Solução técnica proposta

Sugere-se a convenção de "dois pontos de localização", usando o "\~" duas vezes. Ex. "BR-SP-SPA\~2XY3XY\~2XY9BLC".

Quando calha de serem na mesma macrocelula, pode usar o ".." seguido de tantos pontos quantos precisar voltar, ex. para reusar "2XY9" pode-se usar "BR-SP-SPA\~2XY3XY...BLC", que fica mais facil de memorizar. No caso anterior o reuso seria menor, seriam 4 pontinhos, "BR-SP-SPA\~2XY3XY....9BLC".

Em ambos os casos funciona mesmo com pontos em diferentes cidades: a cidade que manda é a oficial, de gridCode_EnderecoOficial.

ppKrauss commented 1 year ago

Exemplo em SC: a rodovia estadual SC-150 tem uma entrada vicinal em BR-SC-AguaDoce~51WT4, que permite chegar na porta de 51XTT8. Ou seja, temos BR-SC-AguaDoce~51WT4....XTT8 ou BR-SC-AguaDoce~51WT4~51XTT8.

image

image


Sugestão: no modo "satélite" também usar cores de destaque, por exemplo vermelho #F00 para a célula e pink para seu centro.

image