0
D_Pavel
27.07.15
✎
13:27
|
Рассчитывается дистанция по двум парам координат широта/долгота: latitude/longitude, a.lat/a.lng соответственно, если я правильно понял.
Кто может объяснить, зачем там синусы и косинусы?
Возможно я ошибаюсь, и это не расчет дистанции, но тогда что?
ROUND(
( 6378.13649 * 2 * ASIN(
SQRT( POWER( SIN( ( {$latitude} - ABS( a.lat ) ) * PI() / 180 / 2 ) , 2 ) + COS( {$latitude} * PI() / 180 ) *
COS( ABS( a.lat ) * PI() / 180 ) * POWER( SIN( ( {$longitude} - a.lng ) * PI() / 180 / 2 ) , 2 ) ) )
) * 1000
) AS distance
|
|