Eu queria saber se existe algo como um shapefile PRJ para a tabela de pesquisa PostGIS SRID? Algo que pode traduzir as definições mais comuns de PRJ do shapefile no provável SRID.
Ao usar o PostGIS e o pgAdminIII, se você usar o postgisgui para importar seus arquivos de forma, o SRID será deixado como "-1". Parece que a ferramenta deve ser capaz de analisar o Esri PRJ e determinar as corretas (ou pelo menos algumas opções) que são o provável SRID, em vez de apenas deixar o padrão.
Ou o importador tem a capacidade de reprojetar em tempo real se você escolher outro SRID?
Pode parecer preguiçoso da minha parte, mas para mim parece curioso que essa função ainda não tenha sido implementada. Alguém sabe se esse conceito está em andamento, ou por uma boa razão pela qual ele foi deixado de fora?
fonte
O GDAL tem uma interface conveniente e agradável para a biblioteca do PROJ4.
Se você tem confiança no Python, usando as ligações GDAL Python, se importar as classes osr, terá métodos muito convenientes para ler e exportar representações de projeção para vários formatos, como PROJ4, WKT, Esri .PRJ.
Por exemplo, este script converterá o arquivo .PRJ do seu shapefile em WKT e PROJ4 (o último é usado no PostGIS):
Execute isso na linha de comando:
fonte
+proj=longlat +datum=WGS84 +no_defs
não está naspatial_ref_sys
tabela, então você não pode usar a saída para procurar o SRID; e (2) Eu não consigo encontrar qualquer propriedade SRID ou método (há um práticoImportFromEPSG(SRID)
método, mas não o contrário)gdalsrsinfo
eogrinfo
falhar, este é o caminho a seguir!srs.GetAuthorityCode(None)
ainda pode retornar nenhum se nenhum SRID próximo tiver sido identificado.Já faz um tempo desde que eu usei POSTGIS srids, mas se eles são apenas códigos EPSG, você pode usar http://prj2epsg.org/search para procurá-los em arquivos ESRI.prj (quebrados).
fonte
Como uma mistura de soluções, criei um script para me ajudar a carregar shapefiles arbitrários no postgis. Ele também tenta detectar a codificação do DBF.
fonte
srsly. Eu quero um também.
Muitas pessoas parecem procurá-las em http://spatialreference.org
Quando você importa shapefiles usando o PostGIS (e o carregador PostGIS para o PGAdmin), ele procura as informações do projeto em uma tabela chamada spatial_ref_sys.
Pelo que entendi, a tabela spatial_ref_sys padrão fornecida com o PostGIS inclui apenas representações OGC WKT (Texto Conhecido do Open Geospatial Consortium Well Known) de alguns Sistemas de Referência Espacial e NÃO os sistemas de referência espacial ESRI.
Na documentação do PostGIS 1.5.2:>
No entanto, o ogr2ogr contém sistemas de referência espacial ESRI, como aprendi recentemente com a generosidade de outros.
No ogr2ogr e no spatial_ref_sys, parece que o texto contido no arquivo .proj é comparado com uma tabela do OGC WKT, que é um formato de texto ligeiramente diferente do formato ESRI WKT que você geralmente encontra em um arquivo .proj. Além disso, não sei como o PostGIS consulta cada SRS, mas as pequenas diferenças entre o ESRI WKT e o OGC WKT podem resultar em falhas na correspondência.
Parece que seria simples anexar os sistemas de referência espacial ESRI à tabela spatial_ref_sys padrão no PostGIS. Talvez alguém já tenha, com algum patch ou script.
Eu posso estar errado, porque acabei de encontrar isso nos últimos dias e fiquei frustrado com a mesma coisa. Talvez alguém conheça um ótimo recurso?
fonte
Já faz um tempo desde que eu precisava, mas pelo que me lembro, http://spatialreference.org/ , além de permitir que você pesquise, também oferece a opção de fazer upload de um arquivo prj.
Então, como uma das opções de saída, você terá a inserção postgis equivalente para inserir na tabela spatial_ref_sys.
Para a instrução de inserção fornecida, substituo o srid gerado que ele cria pelo EPSG ou ESRI. Se você receber uma violação de chave primária, provavelmente já está na tabela.
fonte