Благодаря формулам Cosines или Haversine, я получаю список POI, упорядоченных там, где я нахожусь.
Как я могу перейти на следующий уровень и выбрать POI, которые соответствуют направлению, на которое я смотрю (скажем, 15 ° +/- 5 °, 0 = север, 90 = восток)?
Там уже не так много кода. Мы могли бы использовать пример как это
$gps_pos = array (
'lat'=>48.845364,
'lng'=>2.406628,
'distance'=>20);
$pois = GetPOIsFromGPS($gps_pos);
Там $ pois выглядит
Array
(
[0] => Array
(
[id] => 336047
[gps_lat] => 48.84528500
[gps_lng] => 2.40663900
[gps_alt] => 0.0000
[distance_in_kms] => 0.0088094293255129
)
[1] => Array
(
[id] => 955092
[gps_lat] => 48.84520700
[gps_lng] => 2.40657700
[gps_alt] => 0.0000
[distance_in_kms] => 0.017828309444397
)
[2] => Array
(
[id] => 1022839
[gps_lat] => 48.84515700
[gps_lng] => 2.40644600
[gps_alt] => 0.0000
[distance_in_kms] => 0.026556875382492
)
)
Хитрость заключается в том, чтобы сделать функцию de GetPOIsInPOV.
$pov = array ('hdegres' => 15, 'range'=>5);
$pois_in_pov = GetPOIsInPOV($pois, $pov);
Спасибо
Задача ещё не решена.
Других решений пока нет …