Математический форум Math Help Planet http://mathhelpplanet.com/ |
|
Получение координат ближайшей точки http://mathhelpplanet.com/viewtopic.php?f=28&t=34911 |
Страница 1 из 1 |
Автор: | MaksTver69 [ 02 июл 2014, 01:05 ] |
Заголовок сообщения: | Получение координат ближайшей точки |
Имеется точка А(Тверь) с координатами 35.88555521 56.86302749 точка B(Москва) с координатами 37.59942239 55.75781339 точка C(Дубна) 37.15996927 56.73644158 Известны все расстояния AB 161км, AC 79м, BC 109км, CD 47км Необходимо вычислить координаты точки D(точка соприкосновения перпендикуляра от точкиC к отрезку AB или же точка падения высоты треугольника ABC) Надеюсь на вашу помощь |
Автор: | Avgust [ 02 июл 2014, 04:57 ] |
Заголовок сообщения: | Re: Получение координат ближайшей точки |
[math]AD=\sqrt{79^2-47^2}\approx 63.50[/math] [math]BD=\sqrt{109^2-47^2}\approx 98.35[/math] Проверка: [math]AB'=63.50+98.35=161.85[/math], то есть немного отличается от исходного [math]AB=161[/math] Сейчас займусь точными вычислениями по координатам. |
Автор: | Avgust [ 02 июл 2014, 06:41 ] |
Заголовок сообщения: | Re: Получение координат ближайшей точки |
Если использовать Ваши координаты и аналитически все рассчитать, то получается качественно иная картина (с точки зрения соотношений сторон треугольников): Если масштабы осей координат одинаковые и сетка декартова, то вычисления верные, ибо на графике видно, что получился перпендикуляр CD и точка C лежит на прямой AB. Так я последовательно вычислял в Maple |
Автор: | Avgust [ 02 июл 2014, 07:46 ] |
Заголовок сообщения: | Re: Получение координат ближайшей точки |
Если координаты градусные (широта, долгота), то необходимо сделать перерасчет координат таким образом, чтобы во-первых, были метры, и во вторых, масштабы по иксу и игреку стали одинаковыми. Затем по готовым формулам рассчитать точку D и обратной заменой найти её градусные координаты. |
Автор: | MaksTver69 [ 02 июл 2014, 09:44 ] |
Заголовок сообщения: | Re: Получение координат ближайшей точки |
Спасибо за такой скорый отклик по моей проблеме. А у вас остались где-то вычисления? Я последовательно решил каждое уравнение и у меня получились другие результаты: M = 0.58347578602911 N = 0.90480206504785 K = -72.388137231071 d = 0.5842864828419 b = 1.2806854371532 AD = 1.2806854371532 AB = 2.0393231518129 Xd = 36.96185581331 Yd = 56.168958184923 |
Автор: | Avgust [ 02 июл 2014, 13:59 ] |
Заголовок сообщения: | Re: Получение координат ближайшей точки |
Вы где-то опечатались при наборе проги. Потому что рисунок такой получается: ------------------------------- Мне удалось перевести градусную систему в декартову систему. Один градус долготы принял 62.25 км; один градус широты принял 111.3 км. В результате расчетов по программе получил такой нормальный план: Тут все размеры в километрах. Получив координаты точки D обратным расчетом получил географические координаты. В них, естественно, перпендикулярности нет: Ответ обвел в рамке. Если у Вас есть Maple, то мне проще всего было бы на Вашу почту скинуть файл расчетов с расширением .mw. Если нет, то могу написать от руки и скинуть сюда скриншот. Но это только вечером получится. |
Автор: | Avgust [ 02 июл 2014, 14:37 ] |
Заголовок сообщения: | Re: Получение координат ближайшей точки |
Хотя можно дать команды. Последовательно нажимайте в Maple каждую строку и все вычислится. x[B] := 62.25*(37.59942239-35.88555521); |
Автор: | MaksTver69 [ 02 июл 2014, 17:28 ] |
Заголовок сообщения: | Re: Получение координат ближайшей точки |
О да! Она заработала Выложу на всякий случай код php, вдруг кому пригодится: function getNearPoint($Xa, $Yaa, $Xbb, $Yb, $Xc, $Yc){ Так же другие вычисления с помощью функции: http://prntscr.com/3ynng5 и http://prntscr.com/3ynodf Использоваться будет для "приклеивания" транспортного средства к маршруту при небольших отклонениях от него. Спасибо вам огромное за помощь, не знаю что бы делал без вас. |
Автор: | Avgust [ 02 июл 2014, 18:55 ] |
Заголовок сообщения: | Re: Получение координат ближайшей точки |
Рад, что помог. Задача очень понравилась. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |