Verifica se dois sistemas de referência espacial são semanticamente equivalentes ao comparar seus parâmetros de projeção, e não suas representações em string.
Sintaxe
boolean ST_SrEqual(cstring sr1, cstring sr2, boolean strict default true);
Parâmetros
|
Parâmetro |
Tipo |
Descrição |
Padrão |
|
|
cstring |
Primeiro sistema de referência espacial. Deve ser uma string OGC WKT ou PROJ.4. |
— |
|
|
cstring |
Segundo sistema de referência espacial. Deve ser uma string OGC WKT ou PROJ.4. |
— |
|
|
boolean |
Quando |
|
Descrição
A função ST_SrEqual analisa a semântica das duas strings de entrada e compara os seguintes parâmetros:
Método de projeção
Elipsoide de referência
Eixos semi-maior e semi-menor do elipsoide de referência
Retorna t se os sistemas de referência espacial forem equivalentes ou f se houver diferenças.
Exemplos
Comparação de dois sistemas de referência espacial em formatos diferentes
Este exemplo compara uma string OGC WKT com uma string PROJ.4 que representa o WGS 84. Como ambas definem o mesmo sistema de referência espacial, a função retorna t.
SELECT ST_srEqual(
'GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]',
'+proj=longlat +datum=WGS84 +no_defs'
);
Resultado:
st_srequal
------------
t
Consulta de SRID por string PROJ.4
Use ST_SrEqual como filtro na tabela spatial_ref_sys para localizar o identificador de referência espacial (SRID) correspondente a uma string PROJ.4 específica.
SELECT srid FROM spatial_ref_sys
WHERE ST_srEqual(srtext::cstring, '+proj=longlat +ellps=GRS80 +no_defs ')
LIMIT 1;
Resultado:
srid
------
3824