bradcornford / Googlmapper

An easy way to integrate Google Maps with Laravel
MIT License
464 stars 142 forks source link

Distance Between two adresses #154

Open mourareaupro opened 7 years ago

mourareaupro commented 7 years ago

Hello , is it possible with this package to calculate the ditance between two adresses ? thanks a lot in advance

bradcornford commented 7 years ago

Hi there,

No this currently isn't possible with this package. It wouldn't be too difficult to get two locations and have a method to calculate the distance between them though. I will look into this as a future feature.

jhoskins98 commented 7 years ago

Something I wrote for a distance calculation using Spherical Law of Cosines

public function distance($lat1, $lon1, $lat2, $lon2, $unit = 'M', $places = '2') { $theta = $lon1 - $lon2; $dist = sin(deg2rad($lat1)) sin(deg2rad($lat2)) + cos(deg2rad($lat1)) cos(deg2rad($lat2)) cos(deg2rad($theta)); $dist = acos($dist); $dist = rad2deg($dist); $miles = $dist 60 * 1.1515; $unit = strtoupper($unit);

    if ($unit == "K") {
        return ($miles * 1.609344);
    } else if ($unit == "N") {
        return ($miles * 0.8684);
    } else {
        $miles = round($miles, $places);
        return $miles;
    }
}