Рассчитать долготу / широту - PullRequest
8 голосов
/ 22 декабря 2008

С учетом следующего ввода:

  • известные долготы / широты 1..n местоположений
  • известное расстояние между местоположениями 1..n и другим местоположением "m"

Как я могу рассчитать долготу / широту местоположения "m"?

Ответы [ 3 ]

7 голосов
/ 22 декабря 2008

Это звучит как вопрос о триангуляции широты и долготы. Общие подходы изложены в Yahoo! Ответы в теме здесь . Вероятно, библиотеки делают это на многих языках. Поиск в Google «триангуляция широты и долготы» плюс ваш язык, скорее всего, покажут какой-то существующий код для использования. «Геокодирование» - это еще одна распространенная задача, объединенная в аналогичные библиотеки, так что это может быть еще одним полезным ключевым словом.

Редактировать: Как уже упоминали другие, "трилатерация", кажется, лучший термин. Однако, в зависимости от ваших данных и требований, существуют более простые приближенные решения, которые могут удовлетворить ваши требования.

Yahoo! Ответы пост приведен ниже для удобства:

"Для больших расстояний, сферическая геометрия. Для относительно маленьких, относиться к земле как к плоской, а координаты в виде координат ху. Для расстояния для работы со степенями координаты, вам придется использовать функция косинуса, чтобы преобразовать из один другому. (В то время как степени Широта около 69 миль земля, градусы долготы меняются от того же на экваторе до 0 в полюса.)

У вас есть центральные точки из трех круги и радиус тех круги. Они должны пересекаются в одной точке, так что вы можете относитесь к ним попарно, чтобы найти точки пересечения каждого и броска из тех, которые не соответствуют http://mathworld.wolfram.com/Circle-CircleIntersection.html." ( mike1942f )

4 голосов
/ 22 декабря 2008

Трилатерация - это то, что вы хотите. Это требует только 3 ваших опорных точек, однако остальные могут быть использованы для повышения точности, если вы хотите стать действительно умным.

Самая хитрая часть работает с long / lat, а не с декартовыми координатами, тем более что Земля не является идеальной сферой.

3 голосов
/ 22 декабря 2008

Это проблема трилатерация . В вашем случае у вас есть несколько точек отсчета, поэтому вы можете минимизировать сумму квадратов ошибок между заданными расстояниями и теми, которые соответствуют оптимальному положению m.

...