2013-03-04 4 views
3

Salut Avec l'aide de LocationManager j'ai réussi à trouver l'emplacement actuel dans Android. Pour montrer les routes entre deux géo-coordonnées, que devrais-je utiliser pour que je ne trace pas la distance de l'air au lieu de montrer les routes au sol ou est-ce avec l'aide de json que je peux tracer les routes.Google Maps Android API v2 routes json analyse

J'ai essayé polyLine() mais il donne une ligne droite.

Répondre

0

Ici vous pouvez trouver la réponse à votre qustion:

Is there a way to show road directions in Google Map API v2?

et ici:

Get driving directions using Google Maps API v2

essentiellement ce que vous devez faire est de faire un appel à rendre Google API recevoir coordonnées de la direction de la route (plusieurs points de latlng), puis tracez une polyligne entre chacune d'elles.

+0

Toute idée sur l'analyse JSON. Parce que de tableau de json, il sera plus facile de tracer des points –

1

Pour déterminer la ligne entre deux points, vous devez connaître le type de projection cartographique que vous utilisez. Certaines projections cartographiques conservent la forme (et donc les angles), d'autres non. Jetez un oeil à http://www.progonos.com/furuti/MapProj/Dither/CartProp/ShapePres/shapePres.html cela pourrait aider.

Si vous utilisez une projection de Mercator je trouve cette page qui revendique un algorithme en C# qui devrait vous indiquer sur votre chemin: http://conceptdev.blogspot.co.uk/2009/01/great-circles.html

En ce qui concerne les segments de ligne, ployline donnera des lignes Stright entre les points . Vous devrez utiliser Path et utiliser les méthodes de courbe de Bézier Path.cubicTo() et Path.rCubicTo() de la mémoire.

1

Avez-vous toutes les autorisations définies dans le manifeste? De plus, vous devez activer le service de localisation (l'icône GPS dans la barre d'état indique-t-elle?). Il faudra un certain temps à l'appareil pour obtenir l'emplacement, alors vérifiez si onLocationChanged est appelé.

Questions connexes