Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] [Google Maps] Tem como conseguir uma matriz de coordenadas a partir de um LatLngBounds?

1) Latitude e longitude nesse caso são medidas em graus. Latitude, por exemplo, é um valor no intervalo [-90, 90]. Isso quer dizer que se você pegar um ponto e fazê-lo se deslocar ao longo da latitude ele vai completar uma circunferência em volta da Terra, mas mesmo sendo isso um deslocamento contínuo vai ocorrer um "salto" no valor da latitude de -90 para 90 graus, é isso que chamo de caso-limite. Se esse "salto" não for considerado em uma conta envolvendo latitudes, essa conta pode quebrar. Você tem que prever isso e elaborar um cálculo que não seja quebrado no caso-limite.

2) Para ficar compatível com o retângulo LatLngBounds, que tem um vértice inferior esquerdo (southwest), eu fiz os cálculos considerando um vértice inferior esquerdo no retângulo 500x500. Se os seus pontos são baseados em uma orientação diferente, é só fazer um cálculo que obtenha o Y correspondente na orientação que usei, que é basicamente Yinfesq = 500 - Ysupesq.

2015-09-01 22:33 GMT-03:00 paulork <paulork10@gmail.com>:
Ótimo... muito obrigado pela explanação e ajuda...

tenho mais algumas dúvidas:
1) Você disse: "não estou considerando os casos-limites dessas coordenadas, já você vai precisar considerar"... tem como explicar melhor?
2) Você disse: " sendo (0, 0) o vértice inferior esquerdo do retângulo 500x500"... inferior esquerdo? não seria superior esquerdo como nos editores de imagem??

agradeço a atenção desde já

Em 1 de setembro de 2015 21:08, Rodrigo Piovezan <piovezan@gmail.com> escreveu:
Você sabe trabalhar com proporções? Você tem um retângulo no mapa (definido pelos dois vértices do LatLngBounds) e sabe que ele é proporcional a um retângulo de 500x500 pixels. Basta fazer a proporção.

Fiz aqui às pressas, não sei se está certo:

Vértices do LatLngBounds: nordeste (LatNE, LongNE), sudoeste (LatSW, LongSW), noroeste (LatNE, LongSW) e sudeste (LatSW, LongNE).

O comprimento C do retângulo LatLngBounds é dado por C = LatSW - LatNE e a altura A por A = LongNE - LongSW (não estou considerando os casos-limites dessas coordenadas, já você vai precisar considerar).

Bom, sendo (0, 0) o vértice inferior esquerdo do retângulo 500x500, um ponto (X, Y) dentro dele equivale à coordenada (LatX, LongY) do retângulo LatLngBounds dada por LatX = LatSW + C * (X / 500) e LongY = LongSW + A * (Y / 500).

Espero que dê uma ideia de como fazer.

2015-09-01 20:25 GMT-03:00 Paulo R. Kraemer <paulork10@gmail.com>:
Olá pessoal, tem como eu conseguir uma matriz de coordenadas a partir de dois pontos de um LatLngBounds?

Eu sei, a pergunta não está muito clara... vou tentar explicar melhor...

Eu estou posicionando uma imagem de 500x500px em um mapa com GroundOverlayOptions (que recebe as coordenadas de posicionamento de um LatLngBounds)... mas eu precisava fazer uma análise nessa imagem (que muda constantemente) e determinar alguns pontos... mas para marcar a distância do GPS do celular até esse ponto eu precisaria ter (creio eu) a matriz de coordenadas correspondente a matriz de pixels da imagem... para poder determinar a posição geográfica de um determinado pixel...

tem como fazer isso? qual a melhor forma? Tem alguma outra forma de fazer isso (determinar as posição geográfica de um ponto numa camada inserida num mapa)?

agradeço a atenção

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to a topic in the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/androidbrasil-dev/CuzxspUgmHw/unsubscribe.
To unsubscribe from this group and all its topics, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário