Usando o PostGIS, tenho um ponto lat / lon e quero adicionar um deslocamento leste / oeste e norte / sul em metros para obter um novo ponto. Isso é possível?
Usando o PostGIS, tenho um ponto lat / lon e quero adicionar um deslocamento leste / oeste e norte / sul em metros para obter um novo ponto. Isso é possível?
Respostas:
Você pode usar ST_Translate:
A função ST_Translate pega qualquer geometria (cadeia de linhas, multilinhas etc.) retorna uma nova geometria que é a geometria original movida por um vetor definido por X, Y, Z. Observe que as unidades de medida estão sempre nas unidades do sistema de referência espacial do argumento da geometria. Existem duas formas de ST_Translate. ST_Translate (geometria, X, Y, Z) e ST_Translate (geometria, X, Y).
Fonte: http://www.bostongis.com/postgis_translate.snippet
Você precisará transformar lat / lon em metros primeiro. Você pode usar ST_Transform para conseguir isso:
ST_Transform - Retorna uma nova geometria com suas coordenadas transformadas no SRID referenciado pelo parâmetro inteiro.