Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.02.2012, 17:44   #1
roxy7
Пользователь
 
Регистрация: 20.10.2011
Сообщений: 53
По умолчанию Найти координаты высоты треугольника

Добрые люди, здравствуйте! Пишите, пожалуйста, кто знает, формулу, чтобы найти координаты высоты треугольника. Мне нужны координаты, чтобы построить треугольник с высотами... Желательно дать код или пример.
roxy7 вне форума Ответить с цитированием
Старый 10.02.2012, 20:32   #2
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Координаты высоты ??? это как?
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 11.02.2012, 08:09   #3
Rin
Негодник
Форумчанин
 
Аватар для Rin
 
Регистрация: 10.11.2009
Сообщений: 880
По умолчанию

Ему, если правильно понял, нужно узнать координаты точки высоты, лежащей на основании. Код и пример я дать не смогу, т.к. нет сейчас времени прогать, но наводку могу дать.
Чтобы узнать высоту, нам надо от вершины до основания провести перпендикуляр.
Перпендикуляр проводится в согласии с этой теоремой: пусть даны отрезок АВ и точка С. Из точки С проводим дугу, пересекающуюся с отрезком AB в точках M и N. Ищем середину отрезка MN и соединяем ее с точкой С. (попробуй на листочке с помощью циркуля и линейки изобразить).
Чтобы узнать радиус дуги от С до А или В - смотря какая точка ближе к С (А или В - это точка М в данном случае, и останется найти координаты точки N), воспользуйся формулой sqrt(sqr(x2-x1)+sqr(y2-y1)), которая вычисляет расстояние между точками. Чтобы узнать какая точка ближе, так же воспользуйся этой формулой.
Останется найти координаты точки N . В поисковике пошарь на такие запросы "пересечение дуги и отрезка", "дуга и отрезок".
Как только узнаешь координаты точки N, то пора узнать координаты 2-ой точки высоты, которая находится на середине отрезка N(x1,y1)M(x2,y2) . x= x1+x2/2 и y= y1+y2/2 .
Если помог, проси поставить минус. Будь оригинален!

Последний раз редактировалось Rin; 11.02.2012 в 10:41. Причина: Уточение.
Rin вне форума Ответить с цитированием
Старый 11.02.2012, 14:37   #4
roxy7
Пользователь
 
Регистрация: 20.10.2011
Сообщений: 53
Печаль

Цитата:
Сообщение от Rin Посмотреть сообщение
Ему, если правильно понял, нужно узнать координаты точки высоты, лежащей на основании. Код и пример я дать не смогу, т.к. нет сейчас времени прогать, но наводку могу дать.
Чтобы узнать высоту, нам надо от вершины до основания провести перпендикуляр.
Перпендикуляр проводится в согласии с этой теоремой: пусть даны отрезок АВ и точка С. Из точки С проводим дугу, пересекающуюся с отрезком AB в точках M и N. Ищем середину отрезка MN и соединяем ее с точкой С. (попробуй на листочке с помощью циркуля и линейки изобразить).
Чтобы узнать радиус дуги от С до А или В - смотря какая точка ближе к С (А или В - это точка М в данном случае, и останется найти координаты точки N), воспользуйся формулой sqrt(sqr(x2-x1)+sqr(y2-y1)), которая вычисляет расстояние между точками. Чтобы узнать какая точка ближе, так же воспользуйся этой формулой.
Останется найти координаты точки N . В поисковике пошарь на такие запросы "пересечение дуги и отрезка", "дуга и отрезок".
Как только узнаешь координаты точки N, то пора узнать координаты 2-ой точки высоты, которая находится на середине отрезка N(x1,y1)M(x2,y2) . x= x1+x2/2 и y= y1+y2/2 .
x= x1+x2/2 и y= y1+y2/2 это для нахождения координат второй точки М, так? А как найти координаты первой точки N?

В голове всё путалось, долго не могу находить

А всё, погодите! Начинаю понимать, что координаты первой точки равны вершине. Дальше найти координаты 2-ой точки высоты, которая находится на середине отрезка N(x1,y1)M(x2,y2) . x= x1+x2/2 и y= y1+y2/2... Но, если правильно понимаю, координаты 2-ой точки высоты не находятся на середине отрезка, а то это координаты медианы, а не высоты...

Последний раз редактировалось Stilet; 11.02.2012 в 20:56.
roxy7 вне форума Ответить с цитированием
Старый 11.02.2012, 16:00   #5
Rin
Негодник
Форумчанин
 
Аватар для Rin
 
Регистрация: 10.11.2009
Сообщений: 880
По умолчанию

вот как-то так
Изображения
Тип файла: png Безымянный.png (9.9 Кб, 464 просмотров)
Если помог, проси поставить минус. Будь оригинален!
Rin вне форума Ответить с цитированием
Старый 11.02.2012, 20:38   #6
Silver_S
Форумчанин
 
Регистрация: 14.03.2011
Сообщений: 104
По умолчанию

Могу предложить такой вариант: допустим координаты треугольника A(x1, y1), B(x2, y2), C(x3, y3), коорд. основания высоты из точки С - точка D(xh, yh). Точки А, B, D лежат на одной прямой. Составим систему для получения уравн. прямой AB
Код:
y1 = k*x1 + b
y2 = k*x2 + b
Находим k и b.
Составим еще одну систему.
Код:
yh = k * xh + b -- тут уже известны k и b
AC^2 = AD^2 + CD^2 -- теорема Пифагора к треуг. ADC
где АС, AD, СD заменяем формулой расстояния между точками (выйдет довольно громоздко), решая систему находим xh и yh.
Возможно теорему Пифагора можно заменить чем-то попроще (в памяти крутится что-то связанное с матрицами, тангенсами и углом м/у прямыми).

Успеха в выведении формулы для получения готового ответа.

Последний раз редактировалось Silver_S; 11.02.2012 в 22:20.
Silver_S вне форума Ответить с цитированием
Старый 12.02.2012, 20:45   #7
roxy7
Пользователь
 
Регистрация: 20.10.2011
Сообщений: 53
По умолчанию

Спасибо вам большое!
roxy7 вне форума Ответить с цитированием
Старый 19.02.2012, 21:43   #8
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

Как вариант
Изображения
Тип файла: png Altitude.png (2.5 Кб, 396 просмотров)
Somebody вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
даны три числа. Если они могут быть длинами сторон треугольника, определите его вид и найдите высоты (Паскаль) charming Помощь студентам 8 26.09.2011 20:48
вычислить периметр треугольника если даны координаты 3-х вершин(алгоритм функции) (Паскаль) анжелка Помощь студентам 2 03.04.2011 13:33
Найти внутренние углы треугольника (Pascal) street_spirit Помощь студентам 4 02.03.2010 17:25
Координаты высоты в треугольнике UnChanter Помощь студентам 1 19.10.2009 07:48