Como converter coordenadas do plano de estado em latitude-longitude?


Respostas:


19

Você precisará reprojetá-los para lidar com essa conversão.

O Proj.4 é uma biblioteca muito padrão, usada por muitos softwares para reprojeções.

Um meio de usar isso seria usar um utilitário como gdaltransform para fazer a transformação por você.


9

Se você conhece os códigos EPSG relevantes ou os parâmetros do proj.4, ambos gdaltransforme o proj.4 cs2cs( página de manual ) são uma boa rota, como Reed mencionou.

No entanto, se você se encontrar sem essas informações, tente spatialreference.org : fornece os parâmetros e um mapa da web para fazer uma lat / long para coordenar a transformação do sistema ( exemplo com o plano de estado da IL ). Como muitas das projeções do plano de estado carecem de um código EPSG, use sr.org para encontrar a sequência proj.4, que gdaltransformcompreende. Aqui está um exemplo de conversão de pares de lat / longitude da Zona Estadual da Califórnia V para WGS84:

gdaltransform -s_srs '+proj=lcc +lat_1=34.03333333333333 \ 
+lat_2=35.46666666666667 +lat_0=33.5 +lon_0=-118 +x_0=2000000 +y_0=500000 \ 
+ellps=GRS80 +units=m +no_defs' -t_srs epsg:4326

Depois disso, a digitação 1815241.25377291 557301.336190851deve retornar -120 33.9999999999996.


Isso está certo, mas há um erro de digitação, o argumento -s_srs é fornecido duas vezes. O comando deve terminar em -t_srs:gdaltransform -s_srs '+proj=lcc +lat_1=34.03333333333333 +lat_2=35.46666666666667 +lat_0=33.5 +lon_0=-118 +x_0=2000000 +y_0=500000 +ellps=GRS80 +units=m +no_defs' -t_srs epsg:4326
alvin

@ alvin, corrigi o erro de digitação, obrigado pelo aviso!
ACS

8

Cliente ou servidor? Idioma específico? Único ou a granel?

Por exemplo - para o cliente - com JavaScript - use OpenLayers + Proj4js.

0) Importe todas as bibliotecas apropriadas

1) crie seu ponto

var lonlat = new OpenLayers.LonLat( ....)

2) converta

lonlat.transform( new OpenLayers.Projection("epsg:XXXX"), new OpenLayers.Projection("epsg:4326"));

agora lonlat.lon e lonlat.lat estão nos valores lon / lat WGS84.


Isso funciona, mas requer desenvolvimento personalizado. Não tenho certeza se o OP queria apenas uma ferramenta utilizável.
Reed Copsey

1
Certo, eu estava apenas dando um exemplo - lado do cliente, javascript, no código. OP não especificou o que estava procurando. Até a resposta aceita é uma biblioteca. Também existem muitos sites que fornecem um formulário simples para inserir manualmente as cordas e permitem transformar.
Vadim

6

Um programa gratuito e extremamente fácil é o CorpsCon, que converte pontos únicos, lotes de pontos em arquivos de texto e possui uma DLL que pode ser usada em ambientes de programação como o python.

09-07-2014: o link atualizado é http://www.agc.army.mil/Missions/Corpscon.aspx Clicar em "Download CorpsCon" leva você a uma página que parece um pouco estranha e temporária, mas funciona.


O link está inoperante. Você gosta de outro?
Scott_B

Estou interessado em usar a Corpscon dll em python. Existe alguma documentação para isso que eu não vi nenhuma no site da corpscon.
Gary Lester


Há algum tempo, comecei a usar o pyproj para todas as transformações dentro do python no final do post listado abaixo. Você pode ver como isso pode ser feito com muita facilidade em apenas algumas linhas. dshimer.blogspot.com/2012/11/…
Dennis


2

Outra opção (mas apenas para o NAD83) é o SPCS83 em http://www.ngs.noaa.gov/PC_PROD/SPCS83 . É executado em uma janela de linha de comando em um PC e converte interativamente ou a partir de uma entrada de arquivo de texto. Ele inclui o código-fonte se você realmente deseja apenas o algoritmo. A origem é Fortran, que pode ser uma tarefa difícil de usar, mas é fácil de decifrar para obter os algoritmos. Consulte também www.metzgerwillard.us/spcge/spcge.html, que é um front end para o SPCS83 no Google Earth.


2

Confira o serviço de tradução gratuita. Carregue seus dados e especifique o sistema de coordenadas de saída desejado. Ao selecionar o mesmo formato de saída que a entrada, você efetivamente executa uma reprojeção.

O serviço pode ser encontrado em http://fmeserver.com/userweb/sharper/Portal/EasyTranslator/index.html

e é baseado no produto FME. Também há um teste gratuito de 14 dias disso. www.safe.com



Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.