Получить внешние координаты окружности с заданным центром широта / долгота в PHP - PullRequest
0 голосов
/ 10 ноября 2018

У меня есть функция ниже, которая адаптирована из функции Swift, которая генерирует новую координату широта / долгота каждые 10 м, создавая окружность из центра широта / долгота. Проблема в том, что функция работает по тайм-ауту, но ошибки нет, поэтому я не знаю, где происходит ошибка.

По сути, я хочу создать 36 точек вокруг центральной точки.

Расстояние - это шаги в метрах.

$distanceInMetres = 1000 / 0.75;
$coordinates = [];

$first = 0;
$last = 360;
$step = 10;

$n = 0.0;

for($i = 0; $i < 360; $i + 10)
{
    $distanceInMetres = $distanceInMetres / (3.14 * 2);
    $directionInDegrees = $n;

    $lat = -37.713870;
    $long = 144.944215;

    $radDirection = deg2rad($directionInDegrees);

    $dx = $distanceInMeter * cos($radDirection);
    $dy = $distanceInMeter * sin($radDirection);

    $radLat = deg2rad($lat);

    $deltaLongitude = $dx/(111320 * cos($radLat));
    $deltaLatitude = $dy/110540;

    $endLat = $lat + $deltaLatitude;
    $endLong = $long + $deltaLongitude;

    $coordinates = array('latitude' => $endLat, 'longitude' => $endLong);

    if($n == 0.0) {
        $firstLat = $endLat;
        $firstLng = $endLong;
    }
    $n += 10.0;
}
...