Não sou de Ciências da Computação, mas tive uma matéria com isso. Tive que usar o algoritmo de Dijkstra pra fazer algo parecido. Mas era algo acadêmico e tal, não sei se serve.
Nem tenho aqui, mas o usuário tinha que construir o grafo na mão, ai ele informava de qual vértice para qual vértice desejava ir, e o algoritmo fazia o resto. Nada demais.
Onde arrumar o mapa para você mesmo fazer o caminho eu não sei.
Se o problema é acadêmico, tu precisa ver o quanto teu professor quer que tu implemente.
Se tu pode pegar uma solução pronta, imagino que as APIs do Google façam isso.
Se for implementar:
Basta popular um grafo imaginando cada intersecção como um nodo de um grafo, e interpretar todas as ruas como vértices entre esses pontos. Isso terá que fazer na mão.
Tem várias frameworks de grafos prontas por aí. Aí é só implementar um algoritmo de busca, leva 10 minutos pra implementar um que faz isso, se for considerar a menor quantidade de ruas como solução.
Segundo o meu professor eu preciso gerar 1.000 vertices no grafo,
tem uma forma de fazer isso sem que tenha que cadastrar na mão.[/quote]normalmente nesses casos o professor dá um arquivo e diz para os alunos implementarem algo que interprete o arquivo de parâmetros… assim padroniza os resultados.
pode criar um algoritmo que popule um grafo como se fosse uma malha, ou algum outro padrão que achar interessante… ou usar uma API do google para absorver os dados dos mapas, algo assim.
Segundo o meu professor eu preciso gerar 1.000 vertices no grafo,
tem uma forma de fazer isso sem que tenha que cadastrar na mão.[/quote]normalmente nesses casos o professor dá um arquivo e diz para os alunos implementarem algo que interprete o arquivo de parâmetros… assim padroniza os resultados.
pode criar um algoritmo que popule um grafo como se fosse uma malha, ou algum outro padrão que achar interessante… ou usar uma API do google para absorver os dados dos mapas, algo assim.[/quote]
Boa( mas o professor não possou dados para criar o grafo)
Mas lendo a api do Google maps eu vi que posso incrementar a latitude e ir pegando regiões que seriam meus vertices e apartir dessas regiões gerar rotas
vou colocar a mão na massa e ver se isso que eu to pensando funciona.