Convertendo latitude e longitude em norte e leste?

10

Tenho o seguinte código postal do Reino Unido dy8 3xt e sei que a latitude e a longitude são: -

54.452772
-2.156082

Sei também que o Easting, Northing para o código postal é: -

389490
283880

No entanto, estou lutando para encontrar a equação que converte lat / long para norte e leste, eu preferiria ter a equação em jScript e c # (estou sendo ganancioso)!

Alguém pode ajudar?

Mais algumas informações, se você clicar neste link, poderá ver os resultados que estou procurando. O código postal inseri projetos para lat / lng usando WG S84 e a grade ref projeta para OSGB. Então, minha pergunta é como isso é feito?


Finalmente fui levado até aqui, e posso confirmar que funciona muito bem.

Rippo
fonte
3
Você sabe quais sistemas de coordenadas você está usando? "Leste e norte" são os nomes padrão para as coordenadas x e y em qualquer sistema de coordenadas projetado (isto é, plano). Além disso, "latitude e longitude" são os nomes padrão para as coordenadas em qualquer sistema de coordenadas não projetado (ou seja, geográfico). Você pode estar solicitando uma conversão de WGS84 para UTM, ou talvez queira o sistema de grade nacional britânico como mtrw sugere. De qualquer forma, os números são ambíguos, a menos que você também conheça o sistema de coordenadas.
precisa saber é o seguinte
@all colocaram uma edição com uma ligação que mostra os resultados desejados e a projecção utilizado

Respostas:

12

Editar - Atualize com informações específicas do OSGB36.

Bem, a boa notícia é que a projeção alvo é OSGB36, que é uma projeção bem conhecida e padronizada. A má notícia é que a programação GIS ainda é realmente difícil :)

Há um conjunto de parâmetros que precisam ser definidos e operações matemáticas aplicadas a esses parâmetros para projetar com êxito lat / long em grades. Felizmente, existem bancos de dados de parâmetros para o primeiro e bibliotecas para o último. proj.4, que mencionei anteriormente, é uma das bibliotecas padrão. Também existem portas proj.4para outras linguagens, incluindo JavaScript, que esperamos estar suficientemente perto do jScript para seus propósitos. A porta é proj4js .

A outra coisa que você precisa saber é o EPSGnúmero dos seus sistemas de coordenadas. OSGB36 é EPSG: 6277. O EPSG é um órgão criado pela indústria do petróleo (eu acho) que coletou muitas projeções definidas localmente e as documentou. O banco de dados agora é mantido abertamente e as bibliotecas GIS podem usar suas definições.

Informações anteriores

Seus números de leste / norte podem estar no sistema de grade nacional britânico .

Dei uma resposta a outra pergunta relacionada ao GIS que inclui links para proj.4, que é uma das bibliotecas padrão para conversão entre lat / long e east / northing (o cálculo futuro é chamado projectionno mundo GIS). Eu nunca o usei para a conversão que você está procurando, mas o software está bem documentado e vem com definições de conversão para muitas projeções.

Comunidade
fonte
@mtrw colocaram uma edição com uma ligação que mostra os resultados desejados e a projecção utilizado
Obrigado pela sua contribuição, eu aprendi muito com isso ... Veja minha resposta
@Rippo - Fico feliz em ter ajudado! SIG é realmente interessante. Recentemente, deixei o emprego onde me envolvi nessa área e sinto um pouco de falta dele.
Para uma resposta C # confira esta questão stackoverflow.com/questions/1867950/...
MarkJ
6

É para o norte / leste da zona UTM? Eu escrevi um utilitário para isso em javascript:

http://cambertx.com/utm/

uberdanzik
fonte
1
Bom trabalho! Por que nenhum AdSense nessa página? ;)
John
Excellant, vai dar uma olhada nisso.
@dan Eu tentei isso, mas não consigo obter os resultados esperados. Obviamente, há algo que eu não entendo.
Este é o código original que usei para ter a ideia: home.hiwaay.net/~taylorc/toolbox/geography/geoutm.html Eu tive que modificar o código da minha empresa, mas geralmente é a mesma ideia. @ John: Provavelmente porque o meu QG corporativo seria adequado se eles vissem anúncios em seu site.
Rippo, acho que você precisa estabelecer de que tipo de projeção esses números vêm. Os números "leste e norte" são o resultado da conversão das coordenadas geográficas em um determinado tipo de padrão de projeção. Todos eles têm algoritmos diferentes, então eu apenas joguei fora o UTM porque é isso que eu assumi que você estivesse usando. Descobrir o método de projeção e, em seguida, podemos encontrar a fórmula correta para você. O UTM geralmente possui um determinado número de zona associado à parte do globo com a qual você está trabalhando; portanto, se você não tiver esse número de zona, provavelmente não será o mesmo.
4

Aqui está uma referência .

John
fonte
Crikey, essa planilha parece assustadora, eu esperava x = y * 2!
@rippo Um algoritmo simples de aproximação provavelmente poderia ser obtido tomando os valores médios para cada um desses vários raios equatoriais / polares e valores de achatamento, mas uma aproximação seria tudo o que é. A Terra não é uma esfera perfeita nem radialmente simétrica nos níveis de precisão implícitos no número de dígitos significativos que você usa em seu exemplo.
Visualizar a fonte da página de Dan deve ser o que você deseja para a parte JS.
John John
Tentei a sugestão, mas não consigo obter os resultados esperados. Obviamente, não entendo o que estou pedindo, mas sei que os números que forneci estão corretos.
@all colocaram uma edição com uma ligação que mostra os resultados desejados e a projecção utilizado