Decompõe uma grade geográfica ou um array de grades geográficas em um array de grades filhas mais granulares, com base em um nível de precisão especificado.
Sintaxe
geomgrid[] ST_Degeneralize(geomgrid gridcode, integer precision);
geomgrid[] ST_Degeneralize(geomgrid[] gridarray, integer precision);
Valor de retorno
geomgrid[] — um array de grades geográficas no nível de precisão de destino.
Parâmetros
|
Parâmetro |
Descrição |
|
|
Um único objeto de grade geográfica a decompor. |
|
|
Um array de objetos de grade geográfica a decompor. |
|
|
O nível de precisão de destino para as grades filhas de saída. |
Descrição
A função ST_Degeneralize percorre a hierarquia de grades geográficas de cima para baixo: recebe uma grade menos granular e retorna todas as grades filhas mais granulares que a compõem. O resultado é um array geomgrid[] contendo as grades filhas no nível de precisão especificado.
Para inverter o processo — agregar grades mais granulares em uma grade pai menos granular — use ST_Generalize.
Exemplos
Decompor uma única grade em grades filhas
O exemplo a seguir decompõe a grade G01 em suas grades filhas no nível de precisão 3.
select st_astext(st_degeneralize(st_gridfromtext('G01'), 3));
Saída:
{G010,G011,G012,G013}
Decompor um array de grades em grades filhas
Este exemplo decompõe um array contendo as grades GZ01 e GZ1 nas respectivas grades filhas combinadas no nível de precisão 2.
select st_astext(st_degeneralize(array[st_gridfromtext('GZ01'), st_gridfromtext('GZ1')], 2));
Saída:
{GZ01,GZ10,GZ12,GZ14,GZ16,GZ11,GZ13,GZ15,GZ17}
Próximos passos
ST_Generalize — agrega grades mais granulares em uma grade pai menos granular