Calculer distance minimal entre une position lat,lng et un tableau de lat lng
dylpaco
-
31 mai 2013 à 22:55
BBFUNK01
Messages postés1310Date d'inscriptionjeudi 16 juillet 2009StatutMembreDernière intervention20 juin 2014
-
2 juin 2013 à 21:02
Bonjour tout le monde c paco:
je voudrais calculer une distance minimal entre une position lat lng
et une table(latlng) en BDD et afficher la la cordonnées la plus proche de ma position
1) recuperer ma position actuelle
$x=lat
$y=lng
2) parcourir ma table position qui contient des cordonnées et la metre dans un tableau latlng[$i][$i]
3)
calculer la distance avec tous les elements du tableau
$d=sqrt((pow($x- latlng[$i][0]),2)+(pow($x- latlng[0][$i]),2)):
4)
afficher la distance minimal min ($d)
afficher la cordonnées la plus proche
Ca fonctionne au poil, il te faut dorénavant intégrer la fonction à ton application. Avec une requête SQL je ne sais pas comment il faudrait faire, du moins si : il faudrait probablement créer une fonction SQL propre à cet usage. Par conséquent il te faudra récupérer toutes les paires de coordonnées de ta table et les comparer aux coordonnées ciblées à l'aide de la fonction (un petit tri préalable s'imposera donc suivant le nombre de coordonnées que contient ta table).
A+
BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;