Mapy Google

Google Maps – Znajdź Współrzędne dla Adresu

Prezentuję moją klasę do znajdowania współrzędnych dla podanego adresu (PHP)

(czytaj dalej…)


Obliczanie odległości między dwoma punktami na mapie

Ostatnio zetknąłem się z problemem obliczenia dystansu między 2 punktami na mapie. Posiadam 2 punkty, dla każdego latitude i longitude (długość i szerokość geograficzna) pobrane z google maps API (jako wartości dziesiętne). Znalazłem kilka skryptów, do php, mysql ale żadna formuła nie działała według mnie jak należy. Znalazłem rozwiązanie do turbo pascala, i przerobiłem je na MySQL

sqrt(pow((lon2 - lon1) * cos(lat1 * pi() / 180),2) + pow(lat2 - lat1,2)) * pi() * 12756.274 / 360

Zwraca długość w kilometrach, za lon1, lon2, lat1, lat2 wstawiamy kolejno wartości

Kolejną sprawą było znalezienie elementów w pobliżu o podanym promieniu (w kilometrach): przykład w php

mysql_query("select * from tabela_z_wspolrzednymi where sqrt(pow((longitude - $lng) * cos($lat * pi() / 180),2) + pow(latitude - $lat,2)) * pi() * 12756.274 / 360 <= $r")

Nie wiem z jaką dokładnością liczy, ale w moim projekcie wszystkie sprawdzane wartości mieściły się w zadanych zakresach :)

Mój przykład – Wyszukiwarka Aptek -> jeszcze jako wersja rozwojowa, więc mogą pojawić się błędy


  • Kontakt

    mail: firma[at]programista[dot]it
    tel: 511 138 596

  • Kalendarium Wpisów

    Maj 2012
    P W Ś C P S N
    « lut    
     123456
    78910111213
    14151617181920
    21222324252627
    28293031  
  • © 1996-2010 Programowanie - Webmastering. Wszystkie prawa zastrzeżone.
    iDream theme by Templates Next | śmieszne teksty Społeczność Wiśniowa Góra Wiśniowa Góra