2013-07-30 4 views
1

Je développe une application Android pour la surveillance du trafic. Je recueille des informations sur le trafic et mettre à jour une base de données. Ce dont j'ai besoin, c'est quand l'utilisateur entre son emplacement actuel et l'application de destination fournir une situation de trafic entre deux endroits. Est-il possible de détecter si les emplacements de trafic mis à jour sont entre mes deux points. merci à l'avancePoints entre deux emplacements

+0

Si elles sont en ligne droite? – nullpotent

+0

Vous devez fournir plus de contexte et d'informations afin que nous puissions vous aider. Avez-vous essayé ce problème du tout? –

+0

Non, ils ne sont pas en ligne droite. J'ai essayé d'autres méthodes pour fournir les données de trafic aux utilisateurs. mais j'ai besoin de savoir si Google Maps ont fourni une telle installation. – user2020938

Répondre

1

sûr qu'il ya beaucoup d'options pour le faire - je suggère ce qui suit:

supposer:

start is S 
destination is D 
point to check (traffic point) is P 

vous calculer les distances suivantes (avec la formule harvesine)

Lorsque P est sur une ligne droite entre S et D puis SD = SP + DP - mais comme vous voulez aussi vérifier les points qui ne sont pas sur cet idéal
SD 
SP 
DP 

C est une constante (ou une fonction constante/pourcentage de SD) pour spécifier un seuil qui spécifie quels points comptent entre S et D pour votre application

0

Non, je pense que cela ne fonctionnera pas:

Vous auriez besoin de l'itinéraire du début à la destination sous la forme d'une liste de polygones routiers.
Mais ces données que vous ne recevrez pas de Google, etc. Ils ne vous donnent pas les vecteurs. Sans cela, vous ne pouvez pas faire correspondre vos données de trafic aux polygones de rue.

Ceci peut fonctionner pour OpenStreetmap, car ces vecteurs sont des données ouvertes.

Mais tout cela ensemble est une tâche majeure ...