Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Object Pascal: кроссплатформенные технологии > Решение задачи


Автор: Nagovitsin 6.4.2005, 12:04
Столкнулся с задачей: найти площадб треугольника, образованного тремя прямыми, с коэффициентами: aa1, b1, c1, a2, b2, c2, a3, b3, c3. Какой метод лучше применить?

Автор: Fedor 6.4.2005, 16:22
Цитата(Nagovitsin @ 6.4.2005, 12:04)
с коэффициентами: aa1, b1, c1, a2, b2, c2, a3, b3, c3

Что имеется ввиду под коефициентами: коефициенты в уравнениях прямой? Или может имелись ввиду координаты?

Автор: maxim1000 6.4.2005, 16:33
скорее всего, придется все-таки искать точки пересечения прямых
потом посчитать две какие-нибдуь стороны треугольника (не длины а векторы)
потом взять определитель
ну и модуль еще...

Автор: maxim1000 6.4.2005, 16:54
хотя...можно еще кое-что придумать smile
можно повозиться с углами
если удастся получить высоту (как-нибудь по-быстрому), то можно посчитать площадь через тангенсы углов (а это отношение векторного произведения векторов к скалярному)
если удастся получить длину одной из сторон, можно по теореме синусов получить длину другой, их направления можно узнать из направляющих векторов, после этого можно брать определитель smile

Автор: poor_yorik 7.4.2005, 22:18
Вообщем надо найти точки пересечения прямых, их будет три. А потом найти площадь треугольника по трем точкам.
Точка пересечения двух прямых находится по формулам.
d=A1*B2-B1*A2
dx=-C1*B2+B1*C2
dy=-A1*C2+C1*A2

А координаты точки пересечения равны: x1=dx/d y1=dy/d
Аналогично находишь другие точки пересечения прямых. А площадь треугольника по ним равна
S=Abs(y1*x2-y2*x1+y2*x3-y3*x2+y3*x1-y1*x3)/2.
Вот и вся задачка smile smile

Автор: Transmitter 8.4.2005, 06:37
Спасибо Poor Yorik smile и вообще все, кто откликнулся smile

Автор: oks-baranovska 6.10.2005, 20:19
Помогите мне, пожалуйста, решить такую задачу или дайте формулу к её решению.

Найти точку пересечения прямых

r x (i –j+k) = - 1/2k и r x (2i + 3j +k)= 2i – j – k. (векторное уравнение прямой)

Оксана.

Автор: oks-baranovska 6.10.2005, 20:21
Помогите мне, пожалуйста, решить такую задачу или дайте формулу к её решению.

Найти точку пересечения прямых

r x (i –j+k) = - 1/2k и r x (2i + 3j +k)= 2i – j – k. (векторное уравнение прямой)

Оксана.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)