Calcular coordenada geográfica por distância

Pessoal, to com uma dúvida semelhante, porém diferente… rs…

vou tentar explicar…

tenho um setor (retangulo) formado por pontos de latitudes e longitudes de suas extremidades, por exemplo:

latMin = -20.353535
lngMin = -40.383838
latMax = -20.303030
lngMax = -40.353535

ou seja, meu setor será criado tendo os 4 pontos:
latMin, lngMin; latMax, lngMin; latMax, lngMax; latMin, lngMax

eu quero saber como faço pra saber a coordenada de um proximo ponto dada uma distância (vamos usar 500m), exemplo:

P1 = latMin, lngMin;
P2 = latMin, lngMin + 500m;
P3 = latMin, lngMin + 500m + 500m;
.
.
.
Chegou ao máximo que gostaria de ir de latitude então passo pra latitude…
latMin = latMin + 500m;
Pn = latMin, lngMin;
P(n+1) = latMin, lngMin + 500m;
P(n+2) = latMin, lngMin + 500m + 500m;
.
.
.

e assim por diante…

Espero que possam me ajudar, pois não consigo achar essa fórmula.

Atenciosamente,

Diogo Gama

Plano cartesiano?
Álgebra linear?

Considerando a afirmação no outro post que é um calculo de distância sobre a superfície da terra e que as distâncias são consideravelmente grandes, assim como a simplificação de se o globo fosse perfeitamente esférico esse post pode te ajudar:

http://fatosmatematicos.blogspot.com.br/2009/06/distancia-entre-dois-pontos-sobre.html

ps.: essa é uma dúvida matemática e não sobre java avançado, não sei qual seria a melhor área mas esse post deveria ser redirecionado.

A questão não é essa Davi.

A distância entre dois pontos eu sei calcular, mas quero o contrário e não to conseguindo…

tenho o ponto A de latitude e longitude e quero saber a latitude e longitude do ponto B sendo que ele tem a mesma longitude e possui uma latitude + 500…

Essa é minha dificuldade…

Parece que você acabou de responder B tem latitude de A + 500 e a mesma longitude de A não entendi a dúvida.

[quote=diogogama]A questão não é essa Davi.

A distância entre dois pontos eu sei calcular, mas quero o contrário e não to conseguindo…

tenho o ponto A de latitude e longitude e quero saber a latitude e longitude do ponto B sendo que ele tem a mesma longitude e possui uma latitude + 500…

Essa é minha dificuldade…[/quote]

Isso é facilmente resolvido com a soma de dois vetores.

Porém, latitudes e longitudes são descritos em coordenadas polares. Para escrever os 500m das coordenadas cartesianas em polares, você vai ter que criar o vetor de deslocamento e fazer a conversão. Só então somar os dois vetores (ou seja, somar lat com lat e long. com long).

E tem mais duas considerações:
a) O uso direto de coordenadas polares vai levar em consideração que o corpo celeste em questão é perfeitamente esférico, o que nem sempre é o caso. No caso da Terra, existe um calculo mais preciso usando coordenadas geodésicas;
b) Nenhum dos dois calculos leva em consideração o relevo. Se quiser levar, é mais difícil.

Galera, tentei desenhar o mais explicado possível… imagine o quadrado em anexo sobre um região do globo… eu tenho P1 e suas coordenadas por exemplo são:

Latitude -20.353535
Longitude -40.383838

Eu quero descobrir as coordenadas de P2, P3, P4, etc… todos com uma distância padrão, ou aproximada pelo menos…

Agora acho que conseguem entender para me ajudar.

Vlw.


Só pra dizer Vini, não precisa levar em conta o relevo… quero apenas que seja feito ao “nível do mar” digamos assim…

[quote=diogogama]Galera, tentei desenhar o mais explicado possível… imagine o quadrado em anexo sobre um região do globo… eu tenho P1 e suas coordenadas por exemplo são:

Latitude -20.353535
Longitude -40.383838

Eu quero descobrir as coordenadas de P2, P3, P4, etc… todos com uma distância padrão, ou aproximada pelo menos…

Agora acho que conseguem entender para me ajudar.

Vlw.[/quote]

Sim, é só um problema de soma de vetores, como falei.

Eu só ressaltei que você não deixou claro para que lado você vai computar esses metros. O que fez você ir para direita, e não para cima, na diagonal, ou num angulo como 30 graus?

é pq vou criar meu setor (que seria aquele quadrado) então irei do primeiro ponto de baixo até o de baixo da direita, depois subiria os 500 metros para cima e faria tudo de novo na linha de cima… entende???

Então você quer criar um patch em torno de toda superfície terrestre?

A questão é a seguinte, a terra tem cerca de 40075 Km, assim para medições de até 10 Km a diferença causada pela trajetória em parábola para uma linear é insignificante (dependendo da precisão necessária).

Agora se realmente quer uma medida precisa isso vai te ajudar:

o raio da terra é aproximadamente 6371 km

Galera, eu só queria saber o seguinte, se existia uma formula para que eu calculasse o deslocamento, por exemplo:

P1
Lat: -20.353535
Lng: -40.383838

Quero andar 100 metros pra direita

x = 100 * <calculo - isso que quero saber>

e aí eu somaria a latitude ou longitude.

P2 Seria:
Lat: -20.353535 + x
Lng: -40.383838

quando chegasse ao final eu faria em uma lng acima. Exemplo:

Pn

Lat: -20.353535
Lng: -40.383838 + x

Entenderam???

Obrigado…

E sabe como faria para resolver isso Vini???

Não existe “andar 100 metros para a direita” e sim “percorrer 100 metros em uma geodésica para leste”.
Obviamente, andar 100 metros para leste depende das suas coordenadas; e dependendo de onde você está (exatamente sobre o pólo norte ou sobre o pólo sul) isso está indefinido.

Desculpe “Doutor”, eu quis dizer “percorrer 100 metros em uma geodésica para o leste”… Poxa, ajuda, não atrapalha… Que diferença faz a forma que falei se você entendeu a mensagem???

Vamos tentar nos ater a resolver o problema…

Que polo norte??? que polo sul??? tem nada disso… Acho que está superestimando o problema…

Meu Deus… vou esperar o Vini responder pq acho que ele está me entendendo…

Vlw ae pela ajuda.

Tem alguma idéia Vini???

Ninguém pode me ajudar???

[quote=diogogama]Desculpe “Doutor”, eu quis dizer “percorrer 100 metros em uma geodésica para o leste”… Poxa, ajuda, não atrapalha… Que diferença faz a forma que falei se você entendeu a mensagem???

Vamos tentar nos ater a resolver o problema…

Que polo norte??? que polo sul??? tem nada disso… Acho que está superestimando o problema…

Meu Deus… vou esperar o Vini responder pq acho que ele está me entendendo…

Vlw ae pela ajuda.
[/quote]

Boa noite, primeiramente, tenha mais paciência.

Segundo, eu entendi perfeitamente o que você quer fazer. O link que o DavidUser passou sobre o comprimento de arco ajuda a resolver seu problema. Por que é que o entanglement citou o Polo Norte e o Polo Sul? Por que você obviamente precisará definir um referencial pra saber o que é andara para a direita. Suponhamos que duas pessoas A e B estão uma de frente para a outra. Se um objeto que está entre as duas pessoas começa a se mover para o lado, uma pessoa vai está vendo ele se mover para a direita e a outra vai ver ele se mover para a esquerda. Por isso que citaram o Polo Norte.

Terceiro, vou explicar como é que resolve uma versão mais simples do seu problema. No lugar da Terra, pense no circulo abaixo:

Digamos que você quer se mover do ponto A para o ponto B. No percurso você vai andar X metros. Mas vocẽ pode descrever esse percurso em termos do angulo inicial e do angulo final. Veja o link que o DavidUser lhe passou, sobre o calculo do comprimento do arco.
Latitude e longitude são, a grosso modo, uma versão em três dimensões do conceito de angulo. Baseado nisso, voê pode achar a função que você quer, bastando apenas pensar um pouco.
Sugiro vocẽ fazer alguns desenhos pra enteder o problema que está querendo resolver.

Pessoal, me desculpem, mas é que aqui no meu trampo só é liberado o fórum do GUJ e para tentar outros links é uma burocracia danada…

Será que existe a possibilidade de me mostrarem por aqui sem eu ter que olhar outros links???

Agradeço.

Ps.: Não estou sem paciência, estou apenas querendo resolver o problema não criar outros… rs…

Ninguém???