Кратчайший морской маршрут (км) с учетом начальных и конечных координат - PullRequest
0 голосов
/ 28 февраля 2020

Мне нужно найти кратчайший морской путь между двумя координатами и рассчитать расстояние маршрута.

Пока мои попытки не увенчались успехом, но я также не знаком с пакетами, которые, кажется, быть нужным. Я пытался следовать этому примеру , но, делая

port_destination <- project(port_destination, crs(world_crs, asText = TRUE))

для отправления и назначения, в основном устанавливает точку ~ 0,0. Если я не делаю этого, точки кажутся в правильном месте, но когда я увеличиваю карту, они смещаются, и линия пересекает землю.

shifted coords

Решит ли это установка карты на Новую Зеландию?

Игнорируя проблему, я подумал, что gLength подойдет для поиска длина линии, однако я получаю эту ошибку

gLength (путь) 18.77056 Предупреждающее сообщение: в RGEOSMiscFun c (spgeom, byid, "rgeos_length"): Spatial объект не проецируется; GEOS ожидает плоские координаты

, которые, насколько я понимаю, могут быть связаны с первой проблемой. Я, очевидно, не получаю правильное расстояние ~ 2000 км, так как gLength (путь) = 18.77056.

Пример координат:

A -50.75165, 166.87249 до B -37.07899825, 176.4054573 (ожидаемый маршрут будет к востоку от Новой Зеландии) Расстояние должно быть примерно 2000 км

A -38,92542,169.806 до B -43,03679165, 176,731248 (ожидаемый маршрут до go через пролив Кука) Расстояние примерно 800 км

Цените любую помощь!

...