Exibir rota (latitude - longitude) num mapa, help

9 respostas
J

Galera,

estou com a seguinte problema, tenho determinadas rotas (latitude e longitude) onde um veículo passou, posteriormente preciso exibir numa mapa o caminho EXATO.

O google directions permite eu traçar uma rota, porém deixa inserir apenas 23 pontos de referência, e apartir daí monta o mapa, o problema que as vezes não é exatamente o caminho que o carro percorreu.

Alguém possui experiência em algo parecido que pudesse indicar alguma tecnologia ou um caminho das pedras?

Agradeço.

9 Respostas

V

Oi

Estive fazendo alguns testes na api mais recente e pelo que vi funciona assim:
Para cada trecho andado ele te retorna a posicao de inicio e fim do trecho (Steps), em cada step vc tem um objeto polyline, nele tem uma lista de posicoes codificadas, elas sim tem cada trechinho feito. Sendo assim o objeto da rota ‘overview_polyline’ tem todos os pontos necessarios para o desenho e codificados assim é possivel enviar a requisicao sem problemas.

O nome exato que se usa para as chamadas nao sei, estou usando os nomes que o JSON.stringfy me retornou, caso nao saiba, ele transforma o objeto inteiro em uma string, foi assim que descobri oque precisava.
Além disso usei o firebug do firefox que torna possivel debugar o javascript e assim ver os valores que estao sendo retornados.
Para passar os valores pra java usei o Json e para reverter em uma classe, usei a lib gson.jar, tendo a string completa do resultado eu tive que fazer a classe.

No site da api tem bastante coisa tbm:
http://code.google.com/intl/pt-BR/apis/maps/documentation/javascript/basics.html

Tive que parar os estudos mas cheguei a fazer ele funcionar tanto em javascript, qt em java mas em java ele so gerava uma imagem.

Espero ter ajudado

V

vi-gb:

Oi

Estive fazendo alguns testes na api mais recente e pelo que vi funciona assim:
Para cada trecho andado ele te retorna a posicao de inicio e fim do trecho (Steps), em cada step vc tem um objeto polyline, nele tem uma lista de posicoes codificadas, elas sim tem cada trechinho feito. Sendo assim o objeto da rota ‘overview_polyline’ tem todos os pontos necessarios para o desenho e codificados assim é possivel enviar a requisicao sem problemas.

O nome exato que se usa para as chamadas nao sei, estou usando os nomes que o JSON.stringfy me retornou, caso nao saiba, ele transforma o objeto inteiro em uma string, foi assim que descobri oque precisava.
Além disso usei o firebug do firefox que torna possivel debugar o javascript e assim ver os valores que estao sendo retornados.
Para passar os valores pra java usei o Json e para reverter em uma classe, usei a lib gson.jar, tendo a string completa do resultado eu tive que fazer a classe.

No site da api tem bastante coisa tbm:
http://code.google.com/intl/pt-BR/apis/maps/documentation/javascript/basics.html

Tive que parar os estudos mas cheguei a fazer ele funcionar tanto em javascript, qt em java mas em java ele so gerava uma imagem.

Espero ter ajudado

Estou trabalhando com o que o vi-gb falou + o primefaces

www.primefaces.org

Esta funfando legal.

D

Olá vcsmetallica,

Vc disse que está usando os recursos de rotas com Primefaces?
Está usando alguma classe do pacote org.primefaces.model.map (Polyline, por exemplo) no bean?

Tenho que desenhar rotas, e sei que dá pra fazer só com javscript da API do Google, mas gostaria de saber se há algum jeito de fazer com os componentes do Primefaces.

Grato desde já.

V

david_ware:
Olá vcsmetallica,

Vc disse que está usando os recursos de rotas com Primefaces?
Está usando alguma classe do pacote org.primefaces.model.map (Polyline, por exemplo) no bean?

Tenho que desenhar rotas, e sei que dá pra fazer só com javscript da API do Google, mas gostaria de saber se há algum jeito de fazer com os componentes do Primefaces.

Grato desde já.

Da uma olhada aqui http://www.primefaces.org/showcase/ui/gmapPolyline.jsf

Abraço.

D

Opa, victor89

O problema de se usar esse recurso de Polyline no gmap é que ele simplesmente traça uma polilinha sobre o mapa é que ela não necessariamente irá passar por ruas, apenas irá seguir as coordenadas passadas, o que quero fazer é traçar uma rota, recurso dispoível no Google Maps e que pode ser feito com a API do Google
https://developers.google.com/maps/documentation/javascript/directions?hl=pt-br#DisplayingResults

o resultado seria parecido com o seguinte:
https://google-developers.appspot.com/maps/documentation/javascript/examples/directions-simple?hl=pt-br

O que quero saber é se existe algum recurso do PrimeFaces para isso, mas acho que não…

V

Ah bom, entendi agora.
E você está certo, o Primefaces não fornece um recurso desse tipo.

Estou usando o Primefaces e a API do Google Maps para algo semelhante que poderia usar esta sa idéia também.

Mas no meu caso as rotas são fixas, então eu mesmo desenhei as Polyline’s que percorrem as ruas e gravei os pontos em um BD.
Depois consulto esses pontos e crio uma Polyline com eles no mapa.

Mas acho que para você teria que ser algo dinâmico correto?

Abraços

D

Exatamente, victor89

No meu caso é interessante sim que seja dinâmico, pois não são rotas fixas…

Mas estou evitando usar muito javascript, e pelo visto você também…
Agora comecei a estudar como se cria componentes (que herdam de UIComponent), para criar um que faça isso…
Apenas estou tendo um pouco de dificuldade de encontrar material para criação de componentes JSF 2, a maioria é de JSF até 1.2…

Abraço

V

Bem interessante essa idéia hein.

Eu estou fazendo essa implementação para o meu Trabalho de Conclusão então nem tenho tempo de pensar em fazer algo tão grande assim ^^.

Boa sorte com isso e se conseguir algum resultado poste como ficou ai pra sabermos se ficou legal :smiley:

Abraço.

D

Valeu aí…

Quando conseguir alguma coisa concreta posto sim.
No meu caso, é para um projeto de pesquisa e que será a base para o meu TCC também… :smiley:

Abraço

Criado 5 de setembro de 2011
Ultima resposta 18 de set. de 2012
Respostas 9
Participantes 5