-
Notifications
You must be signed in to change notification settings - Fork 0
Funções mais utilizadas
Abaixo um breve Guia das funções mais frequentemente utilizadas no "engine" OSMcodes:
- osmcode_encode: codifica geouri;
- osmcode_decode: decodifica geocódigos científicos;
- osmcode_decode_reduced: decodifica geocódigos postais;
- jurisdiction_coverage: devolve grade postal.
Nota. Pendente uma breve "tradução" das convenções deste projeto para as convenções ISO DGGS e revisão das funções conforme antigo rascunho.
Codifica geouri, dada uma base.
- SELECT api.osmcode_encode('geo:3.461,-76.577',32,0);
- SELECT api.osmcode_encode('geo:3.461,-76.577;u=10000',32,0);
Usar a interface http://osm.codes/view para visualizar exemplos.
O terceiro parâmetro informa o tamanho do grid desejado:
- 0: sem grid
- 2: base16h, base16h1c, 2 células com geom retangular
- 4: base16h, base16h1c, 4 células com geom retangular
- 8: base16h, base16h1c, 8 células com geom retangular
- 16:base16h, base16h1c, 16 células com geom retangular
- 32: base32, 32 células com geom retangular
- 3: base16h, base16h1c, 2 células com geom centroide
- 5: base16h, base16h1c, 4 células com geom centroide
- 9: base16h, base16h1c, 8 células com geom centroide
- 17:base16h, base16h1c, 16 células com geom centroide
- 33: base32, 32 células com geom centroide
Decodifica códigos científicos (e postais se desejar) absolutos, dados país e base (valor inteiro).
Correspondência inteiro/base:
- 16 -> base16h (cientifica)
- 17 -> base16 (cientifica)
- 18 -> base16h1c (cientifica)
- 32 -> base32 (postal) (default)
- SELECT api.osmcode_decode('0','UY',18); http://osm.codes/uy+0
- SELECT api.osmcode_decode('9025NTJ','CO'); http://osm.codes/CO-RIS-Dosquebradas~25NTJ ou http://osm.codes/CO-RIS-Dosquebradas-25NTJ
Ainda é possível decodificar lista de códigos absolutos:
- SELECT api.osmcode_decode('1,2,d3,2','CO',32); http://osm.codes/CO~1,2,d3,2
Decodifica códigos postais. Aceita prefixos presentes em mvwjurisdiction_synonym
.
- SELECT api.osmcode_decode_reduced('8HB','CO-ANT-Itagui'); http://osm.codes/CO-ANT-Itagui~8HB ou http://osm.codes/CO-ANT-Itagui-8HB
- SELECT api.osmcode_decode_reduced('8HB','CO-5360'); http://osm.codes/CO-5360~8HB ou http://osm.codes/CO-5360-8HB
Situação resolvida pela função que não é resolvido pela interface:
- SELECT api.osmcode_decode_reduced('8HB','CO-Itagui');
NÃO resolve: http://osm.codes/CO-Itagui~8HB ou http://osm.codes/CO-Itagui-8HB
Devolve coberturas de uma jurisdição. Aceita nomes abreviados, com divipola, etc, que estiverem na view materializada mvwjurisdiction_synonym
.
- SELECT api.jurisdiction_coverage('CO-ANT-Itagui'); http://osm.codes/CO-ANT-Itagui
- SELECT api.jurisdiction_coverage('CO-A-Itagui'); http://osm.codes/CO-A-Itagui
- SELECT api.jurisdiction_coverage('CO-ANT-Igi'); http://osm.codes/CO-ANT-Igi
- SELECT api.jurisdiction_coverage('CO-Itagui'); http://osm.codes/CO-Itagui
- SELECT api.jurisdiction_coverage('CO-5360'); http://osm.codes/CO-5360