Russian Qt Forum
Ноябрь 23, 2024, 16:29 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Рисование треугольника  (Прочитано 4437 раз)
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« : Декабрь 12, 2011, 19:17 »

Задача больше геометрическая, но решение пока в голову не пришло Улыбающийся  Есть две точки на плоскости - это линия которая является высотой равнобедренного треугольника, зная (x1,y1,x2,y2) этой высоты нужно построить сам треугольник. Пока в голову ничего не идет Улыбающийся Может подскажете что ?
Записан
Fat-Zer
Гость
« Ответ #1 : Декабрь 12, 2011, 19:34 »

не хватает одной величины... например длинны основания.
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #2 : Декабрь 12, 2011, 19:34 »

Задача больше геометрическая, но решение пока в голову не пришло Улыбающийся  Есть две точки на плоскости - это линия которая является высотой равнобедренного треугольника, зная (x1,y1,x2,y2) этой высоты нужно построить сам треугольник. Пока в голову ничего не идет Улыбающийся Может подскажете что ?
Обозначим QPointF

p1(x1, y1) - "нижняя" точка (посередине основания треугольника)
p2(x2, y2) - "верхняя" точка треугольника

Тогда
v =  p2 - p1 (вектор из p1 в p2)
d = QVector2D(v.y(), -v.x()) / tan(angle_rad);  (вектор половины основания)
p3 = p1 + d;
p4 = p1 - d;

Итого треугольник (p3, p2. p4)
angle_rad = угол при основании (должен быть известен) в радианах
« Последнее редактирование: Декабрь 12, 2011, 19:39 от Igors » Записан
Hellraiser
Бывалый
*****
Offline Offline

Сообщений: 451


Просмотр профиля
« Ответ #3 : Декабрь 12, 2011, 19:39 »

Это хорошо если есть хотя бы один из углов. Если известна только высота - никак. Основание может быть любым, а треугольник все равно останется равнобедренным. Может по условию треугольник равносторонний?
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« Ответ #4 : Декабрь 12, 2011, 22:35 »

можно и равносторонний сделать, думаю не особо критично.
Записан
Fat-Zer
Гость
« Ответ #5 : Декабрь 13, 2011, 01:30 »

тогда см. формулу Igors'а с углом 60 градусов
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« Ответ #6 : Декабрь 14, 2011, 18:03 »

Igors, спасибо, и всем остальным тоже, заработало все хорошо.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.078 секунд. Запросов: 23.