Дискуссионный математический форумМатематический форум
Математический форум Math Help Planet

Обсуждение и решение задач по математике, физике, химии, экономике

Теоретический раздел
Часовой пояс: UTC + 3 часа [ Летнее время ]
новый онлайн-сервис
число, сумма и дата прописью

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Получение координат ближайшей точки
СообщениеДобавлено: 02 июл 2014, 01:05 
Не в сети
Начинающий
Зарегистрирован:
02 июл 2014, 00:43
Сообщений: 3
Cпасибо сказано: 5
Спасибо получено:
0 раз в 0 сообщении
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
Имеется точка А(Тверь) с координатами 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)
Надеюсь на вашу помощьИзображение

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Получение координат ближайшей точки
СообщениеДобавлено: 02 июл 2014, 04:57 
Не в сети
Light & Truth
Аватара пользователя
Зарегистрирован:
03 апр 2012, 19:13
Сообщений: 13534
Откуда: Москва
Cпасибо сказано: 1290
Спасибо получено:
3616 раз в 3175 сообщениях
Очков репутации: 678

Добавить очки репутацииУменьшить очки репутации
[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]

Сейчас займусь точными вычислениями по координатам.

Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Avgust "Спасибо" сказали:
MaksTver69
 Заголовок сообщения: Re: Получение координат ближайшей точки
СообщениеДобавлено: 02 июл 2014, 06:41 
Не в сети
Light & Truth
Аватара пользователя
Зарегистрирован:
03 апр 2012, 19:13
Сообщений: 13534
Откуда: Москва
Cпасибо сказано: 1290
Спасибо получено:
3616 раз в 3175 сообщениях
Очков репутации: 678

Добавить очки репутацииУменьшить очки репутации
Если использовать Ваши координаты и аналитически все рассчитать, то получается качественно иная картина (с точки зрения соотношений сторон треугольников):

Изображение

Если масштабы осей координат одинаковые и сетка декартова, то вычисления верные, ибо на графике видно, что получился перпендикуляр CD и точка C лежит на прямой AB.

Так я последовательно вычислял в Maple

Изображение

Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Avgust "Спасибо" сказали:
MaksTver69
 Заголовок сообщения: Re: Получение координат ближайшей точки
СообщениеДобавлено: 02 июл 2014, 07:46 
Не в сети
Light & Truth
Аватара пользователя
Зарегистрирован:
03 апр 2012, 19:13
Сообщений: 13534
Откуда: Москва
Cпасибо сказано: 1290
Спасибо получено:
3616 раз в 3175 сообщениях
Очков репутации: 678

Добавить очки репутацииУменьшить очки репутации
Если координаты градусные (широта, долгота), то необходимо сделать перерасчет координат таким образом, чтобы во-первых, были метры, и во вторых, масштабы по иксу и игреку стали одинаковыми. Затем по готовым формулам рассчитать точку D и обратной заменой найти её градусные координаты.

Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Avgust "Спасибо" сказали:
MaksTver69
 Заголовок сообщения: Re: Получение координат ближайшей точки
СообщениеДобавлено: 02 июл 2014, 09:44 
Не в сети
Начинающий
Зарегистрирован:
02 июл 2014, 00:43
Сообщений: 3
Cпасибо сказано: 5
Спасибо получено:
0 раз в 0 сообщении
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
Спасибо за такой скорый отклик по моей проблеме.
А у вас остались где-то вычисления?
Я последовательно решил каждое уравнение и у меня получились другие результаты:
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

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Получение координат ближайшей точки
СообщениеДобавлено: 02 июл 2014, 13:59 
Не в сети
Light & Truth
Аватара пользователя
Зарегистрирован:
03 апр 2012, 19:13
Сообщений: 13534
Откуда: Москва
Cпасибо сказано: 1290
Спасибо получено:
3616 раз в 3175 сообщениях
Очков репутации: 678

Добавить очки репутацииУменьшить очки репутации
Вы где-то опечатались при наборе проги. Потому что рисунок такой получается:

Изображение

-------------------------------

Мне удалось перевести градусную систему в декартову систему. Один градус долготы принял 62.25 км; один градус широты принял 111.3 км.

В результате расчетов по программе получил такой нормальный план:

Изображение

Тут все размеры в километрах.

Получив координаты точки D обратным расчетом получил географические координаты. В них, естественно, перпендикулярности нет:

Изображение

Ответ обвел в рамке.
Если у Вас есть Maple, то мне проще всего было бы на Вашу почту скинуть файл расчетов с расширением .mw. Если нет, то могу написать от руки и скинуть сюда скриншот. Но это только вечером получится.

Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Avgust "Спасибо" сказали:
MaksTver69
 Заголовок сообщения: Re: Получение координат ближайшей точки
СообщениеДобавлено: 02 июл 2014, 14:37 
Не в сети
Light & Truth
Аватара пользователя
Зарегистрирован:
03 апр 2012, 19:13
Сообщений: 13534
Откуда: Москва
Cпасибо сказано: 1290
Спасибо получено:
3616 раз в 3175 сообщениях
Очков репутации: 678

Добавить очки репутацииУменьшить очки репутации
Хотя можно дать команды. Последовательно нажимайте в Maple каждую строку и все вычислится.

x[B] := 62.25*(37.59942239-35.88555521);
y[A] := 111.3*(56.86302749-55.75781339);
y[C] := y[A]-111.3*(56.86302749-56.73644158);
x[C] := x[B]-62.25*(37.59942239-37.15996927);
AB := sqrt(106.6882320^2+123.0103293^2);
AC := sqrt(79.33227528^2+(123.0103293-108.9213175)^2);
BC := sqrt((106.6882320-79.33227528)^2+108.9213175^2);
x[A] := 0;
y[B] := 0;
restart;
M := 1/(x[B]-x[A]); N := -1/(y[B]-y[A]); K := y[A]/(y[B]-y[A])-x[A]/(x[B]-x[A]);
d := (M*x[C]+N*y[C]+K)/sqrt(M^2+N^2);
b := sqrt((x[A]-x[C])^2+(y[A]-y[C])^2);
AD := sqrt(b^2-d^2);
AB := sqrt((-x[B]+x[A])^2+(-y[B]+y[A])^2);
x[D] := AD*(x[B]-x[A])/AB+x[A];
y[D] := (AB-AD)*(-y[B]+y[A])/AB+y[B];
x[A] := 0; y[A] := 123.0103293;
x[B] := 106.6882320; y[B] := 0;
x[C] := 79.33227528; y[C] := 108.9213175;
x[D] := evalf[10](x[D]); y[D] := evalf[10](y[D]);
x[1] := 41.03092815/(62.25)+35.88555521;
y[1] := 55.75781339+75.70213152/(111.3);

Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Avgust "Спасибо" сказали:
MaksTver69
 Заголовок сообщения: Re: Получение координат ближайшей точки
СообщениеДобавлено: 02 июл 2014, 17:28 
Не в сети
Начинающий
Зарегистрирован:
02 июл 2014, 00:43
Сообщений: 3
Cпасибо сказано: 5
Спасибо получено:
0 раз в 0 сообщении
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
О да!
Она заработала :)
Изображение
Выложу на всякий случай код php, вдруг кому пригодится:
function getNearPoint($Xa, $Yaa, $Xbb, $Yb, $Xc, $Yc){
$Xb = 62.25 * ($Xa - $Xbb);
$Ya = 111.3 * ($Yb - $Yaa);
$Yc = $Ya - 111.3 * ($Yb - $Yc);
$Xc = $Xb - 62.25 * ($Xa - $Xc);
$AB = sqrt( pow($Xb, 2) + pow($Ya, 2) );
$AC = sqrt( pow($Xc, 2) + pow(($Ya - $Yc), 2) );
$BC = sqrt( pow( ($Xb - $Xc) , 2) + pow($Yc, 2) );
$Xa = 0;
$Yb = 0;
$M = 1 / ($Xb - $Xa);
$N = - 1 / ($Yb - $Ya);
$K = ($Ya / ($Yb - $Ya)) - ($Xa / ($Xb - $Xa));
$d = ($M * $Xc + $N * $Yc + $K) / sqrt(pow($M, 2) + pow($N, 2));
$b = sqrt(pow(($Xa - $Xc), 2) + pow(($Ya - $Yc), 2));
$AD = sqrt(pow($b, 2) - pow($d, 2));
$AB = sqrt(pow(($Xa - $Xb), 2) + pow(($Ya - $Yb), 2));
$Xd = $AD / $AB * ($Xb - $Xa) + $Xa;
$Yd = ($AB - $AD) / $AB * ($Ya - $Yb) + $Yb;
$x = $Xd / (62.25) + $Xbb;
$y = $Yaa + $Yd / (111.3);
return $x.' '.$y;
}

echo getNearPoint(37.59942239, 55.75781339, 35.88555521, 56.86302749, 37.15996927, 56.73644158);

Так же другие вычисления с помощью функции: http://prntscr.com/3ynng5 и http://prntscr.com/3ynodf
Использоваться будет для "приклеивания" транспортного средства к маршруту при небольших отклонениях от него.

Спасибо вам огромное за помощь, не знаю что бы делал без вас.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Получение координат ближайшей точки
СообщениеДобавлено: 02 июл 2014, 18:55 
Не в сети
Light & Truth
Аватара пользователя
Зарегистрирован:
03 апр 2012, 19:13
Сообщений: 13534
Откуда: Москва
Cпасибо сказано: 1290
Спасибо получено:
3616 раз в 3175 сообщениях
Очков репутации: 678

Добавить очки репутацииУменьшить очки репутации
Рад, что помог. Задача очень понравилась.

Вернуться к началу
 Профиль  
Cпасибо сказано 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему      Страница 1 из 1 [ Сообщений: 9 ]

 Похожие темы   Автор   Ответы   Просмотры   Последнее сообщение 
Расчет координат точки

в форуме Аналитическая геометрия и Векторная алгебра

lavAzza

4

304

30 авг 2021, 14:27

Задача по определению координат точки

в форуме Аналитическая геометрия и Векторная алгебра

foxit

5

465

05 июн 2017, 12:37

Нахождение координат точки на векторе

в форуме Аналитическая геометрия и Векторная алгебра

ruslan_50

4

375

31 янв 2017, 22:38

Найти суму координат точки P

в форуме Аналитическая геометрия и Векторная алгебра

tensshhi

2

196

08 янв 2023, 13:59

Связь старых и новых координат точки

в форуме Аналитическая геометрия и Векторная алгебра

e7min

1

230

08 авг 2019, 15:20

Как интерполировать точки в трехмерной системе координат?

в форуме Численные методы

Pasha7778

1

441

29 ноя 2016, 20:07

Найти координаты точки в системе координат

в форуме Аналитическая геометрия и Векторная алгебра

nebachiv

1

232

10 окт 2017, 21:29

Поворот точки вокруг начала координат

в форуме Геометрия

s7s8s9s10

2

781

01 июл 2017, 12:42

Движение точки, заданное уравнениями координат

в форуме Механика

BENEDIKT

4

468

29 мар 2017, 14:51

Найти точки пересечения параболы с осями координат

в форуме Алгебра

DimaDD

1

700

04 июн 2015, 11:18


Часовой пояс: UTC + 3 часа [ Летнее время ]



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Яндекс.Метрика

Copyright © 2010-2023 MathHelpPlanet.com. All rights reserved