Добро пожаловать!

Войдите или зарегистрируйтесь сейчас!

Войти

Вычисление координат

Тема в разделе "ГИС", создана пользователем Leanid, 7 фев 2019.

  1. Leanid

    Регистрация:
    7 фев 2019
    Сообщения:
    6
    Симпатии:
    0
    Если на google map или openstreetmap поставить 2 точки с координатами 20;20 и 40;40 и соединить их прямой линией, то точка с координатами 30;30 не попадает на эту линию.

    Существует ли формула, позволяющая рассчитать координаты точки на произвольном отрезке соединяющем две точки, и отстоящей от первой точки, например на 40% длины отрезка?
     
    #1
  2. toshiba

    Форумчанин

    Регистрация:
    13 июн 2007
    Сообщения:
    428
    Симпатии:
    301
    Адрес:
    РФ
    Такая формула существует (скорее это не формула, а алгоритм). Она входит в "прямую геодезическую задачу" для геоида в системе координат WGS-84.
    Поискать ее можно в курсе "Сферической геодезии".
     
    #2
  3. vsv

    vsv
    Форумчанин

    Регистрация:
    20 мар 2009
    Сообщения:
    1.174
    Симпатии:
    1.568
    Адрес:
    Челябинск
    Полагаю, ТС мы здесь долго не увидим.
     
    #3
  4. trir

    Форумчанин

    Регистрация:
    25 ноя 2014
    Сообщения:
    3.253
    Симпатии:
    931
    Адрес:
    gnomtrir@mail.ru
  5. toshiba

    Форумчанин

    Регистрация:
    13 июн 2007
    Сообщения:
    428
    Симпатии:
    301
    Адрес:
    РФ
    Согласен :)
    Но вдруг у кого-то возникнет такой же важный вопрос и вдруг этот наш новый гипотетический искатель истины воспользуется поиском по форуму.
     
    #5
  6. stout

    Форумчанин

    Регистрация:
    5 янв 2008
    Сообщения:
    4.172
    Симпатии:
    11.939
    Адрес:
    Златоглавая и Белокаменная
    Для геоида??? Не стоит поддаваться массовому безумию и лепить геоид где не попадя.
     
    #6
    Yuri V. и Родичкин нравится это.
  7. Leanid

    Регистрация:
    7 фев 2019
    Сообщения:
    6
    Симпатии:
    0
    Спасибо всем откликнувшимся.
    Попробовал разобраться по ссылке trit. Если честно, тяжеловато.
    Мне кажется, моя задача не совсем похожа на "прямую геодезическую задачу".

    Задача такая: Собачка бежит из пункта Q1 (lat1, lng1) в пункт Q2 (lat2, lng2). Известно, что она пробежала уже 30% пути.
    Найти текущие координаты (lat, lng) собачки.


    Там у них неизвестна конечная точка, но известно направление... Я не понимаю как из конечной точки перейти к направлению.
    Ну будем бороться...
     
    #7
  8. trir

    Форумчанин

    Регистрация:
    25 ноя 2014
    Сообщения:
    3.253
    Симпатии:
    931
    Адрес:
    gnomtrir@mail.ru
    http://gis-lab.info/qa/sphere-geodesic-invert-problem.html

     
    #8
  9. Leanid

    Регистрация:
    7 фев 2019
    Сообщения:
    6
    Симпатии:
    0
    О каком векторе идет речь , если задается только один набор декартовых координат? Где вторая точка? Центр Земли?

    И несколько смущает, что результат функции
    CartToSpher
    не используется никогда...
    там всегда 1 (или очень близко к тому)
     
    #9
  10. stout

    Форумчанин

    Регистрация:
    5 янв 2008
    Сообщения:
    4.172
    Симпатии:
    11.939
    Адрес:
    Златоглавая и Белокаменная
    Э-э-э… О чём это вы?
     
    #10
  11. toshiba

    Форумчанин

    Регистрация:
    13 июн 2007
    Сообщения:
    428
    Симпатии:
    301
    Адрес:
    РФ
    Есть точка А "начало" и точка Б "конец"
    Сначала надо решить обратную геодезическую задачу для отрезка А-Б. Из этого решения мы получим направление ДУ (дирекционный угол А-Б) и расстояние Л (от А к Б).
    Второй этап:
    Решаем прямую геодезическую задачку
    Собачка выбегает из пункта А по направлению ДУ и пробегает "Л*30%" расстояния. Вопрос "в какой точке она окажется"

    ПС А вам надо сам алгоритм разработать или просто значение координат узнать для "ограниченного количества испытаний"?
     
    #11
  12. vsv

    vsv
    Форумчанин

    Регистрация:
    20 мар 2009
    Сообщения:
    1.174
    Симпатии:
    1.568
    Адрес:
    Челябинск
    Живут же люди!!! эхх.. где мои 17

    Да, развеселая собачка.. так все же где она бегает? на плоскости, по эллипсоиду, или, Прости ей, Господи, на геоид занесло?

    зы
    офф, если что трите
     
    #12
  13. В.Шуфотинский

    В.Шуфотинский Модератор
    Команда форума Форумчанин

    Регистрация:
    10 дек 2008
    Сообщения:
    17.390
    Симпатии:
    5.008
    Мы трём то, что превращает профессиональные темы в "базар". Если 1-2 коротеньких оффтопа, так это только разжижает тугую тему.

    Leanid, попробуйте разобраться сначала с геодезическими задачами на плоскости: https://www.google.com/search?q=Пря...=chrome..69i57j69i59&sourceid=chrome&ie=UTF-8
     
    #13
  14. Leanid

    Регистрация:
    7 фев 2019
    Сообщения:
    6
    Симпатии:
    0
    Обратную геодезическую задачу я решил
    получил азимут начального направления и расстояние (сферическое)
    Все термины из http://gis-lab.info/qa/sphere-geodesic-invert-problem.html

    Там же есть понятие вектора, который все время задается декартовыми координатами одной точки, вот я и спрашиваю, где вторая.
    ( Я думал, это что-то каноническое и только я не понимаю, что за вектор )
    И длина этого вектора все время 1 , и никогда не используется в алгоритме решения, что и смутило.

    ЗЫ Пока алгоритм дает то же расстояние между двумя точками , что более простой "метод основанный на сферической тригонометрии"
    (цитата оттуда же) , которым я обычно находил расстояние. Интересно , что за "особые значения" вблизи которых будет ошибка ?
     
    #14
  15. trir

    Форумчанин

    Регистрация:
    25 ноя 2014
    Сообщения:
    3.253
    Симпатии:
    931
    Адрес:
    gnomtrir@mail.ru
    да
     
    #15
  16. Leanid

    Регистрация:
    7 фев 2019
    Сообщения:
    6
    Симпатии:
    0
    Рассчитал координаты и слегка разочарован. Отклонение от нарисованной прямой между А и Б еще больше, чем в случае если исходить из предположения что Земля плоская.

    Можно ли как-то узнать какую модель использует openstreetmap (google map) ? И соответственно подобрать формулу?
     
    #16
  17. trir

    Форумчанин

    Регистрация:
    25 ноя 2014
    Сообщения:
    3.253
    Симпатии:
    931
    Адрес:
    gnomtrir@mail.ru
    так и должно быть

    гугломеркатор
     
    #17
  18. AzarovAV

    Форумчанин

    Регистрация:
    8 июл 2011
    Сообщения:
    1.258
    Симпатии:
    306
    Адрес:
    Кемерово
    Маленько не в тему, но очень наглядное фото, как самолеты летают по кратчайшему расстоянию. Локсодромия.png
     
    #18
    ЮС и stout нравится это.
  19. Leanid

    Регистрация:
    7 фев 2019
    Сообщения:
    6
    Симпатии:
    0
    Похоже я неправильно сформулировал для себя задачу.
    Попробую еще раз.

    Собачка бежит из пункта Q1 (lat1, lng1) в пункт Q2 (lat2, lng2). Надо отобразить положение собачки, когда она пробежала 30% пути.
    Желательно чтобы крестик совпал с линией между Q1 и Q2. (Я понимаю что прямая линия это тоже не верно, но это меньшее из зол)

    Реально ли решить такую задачу?
     
    #19
  20. Родичкин

    Форумчанин

    Регистрация:
    7 июл 2010
    Сообщения:
    2.105
    Симпатии:
    2.158
    Собачку жалко ...
     
    #20

Поделиться этой страницей

  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление