Автор Тема: Помогите , пожалуйста, решить задачу по тригонометрии  (Прочитано 3124 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Andruha

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Здравствуйте.
Помогите , пожалуйста, решить задачу.
Пытался сам , но моих школьных ( давно позабытых) познаний не хватило ...
Итак суть следующая :
 
Существует прямая "АВ" с координатами (x1,y1) (x2,y2) ,
которая может находиться под любым углом к координатной плоскости
( координатная прямая +Y направлена вниз не случайно , так задаются координаты точек при программировании).
Задается точка "С" с координатами (x3,y3) , которая также может лежать в произвольном месте.

Необходимо провести прямую "CD" под прямым(!) углом к прямой "АВ"
и вычислить координаты точки "D" (x4,y4) , лежащей на прямой "АВ".

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

Вычисляю угол Альфа :   ATan ( (y2-y1) / (x2-x1) )   --- если Х = 0 и Y>0 то угол = 90 ; Х = 0 и Y<0 то угол = -90
Далее предполагаю , что если прямую "АВ" мысленно представить как координатную прямую ,
то длина "АD" будет косинусом угла между прямыми "АВ" и "АС", а длина "СD" - синусом .
Чтобы вычислить этот угол , вычисляю угол Бетта аналогично Альфа , и искомый угол (назовем его СИГМА) = Альфа-Бетта.
 
Вычисляю :
 х4 = х1 + COS(СИГМА) * (х3-х1)
 y4 = y1 + SIN(СИГМА) * (y3-y1)

Но когда пытаюсь программно нарисовать линию , что-то не так получается ...
Помогите разобраться в чем ошибка.

Заранее благодарен!


Рисунок прилагается.




Оффлайн tig81

  • Глобальный модератор
  • *****
  • Сообщений: 15181
    • Просмотр профиля
Решение нечитабельно.
Запишите дословно условие.

Оффлайн Andruha

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Решение нечитабельно.
Запишите дословно условие.
Дословного условия тут нет , так как эта "задача" возникла из жизненной необходимости.
А под решением имеете ввиду "мои мысли" ?
Как смог описал . Текст программы выложить ?
« Последнее редактирование: 29 Ноября 2010, 15:34:00 от tig81 »

Оффлайн tig81

  • Глобальный модератор
  • *****
  • Сообщений: 15181
    • Просмотр профиля
Хорошо, тогда более подробно опишите "жизненную необходимость". Что есть и что надо выяснить.

Оффлайн Andruha

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
я и попытался подробно описать.
а в кратце :  нужно вычислить координаты точки "D" (x4,y4) имея заданные координаты A (x1,y1),  B (x2,y2), C (x3,y3)

Оффлайн renuar911

  • Ветеран
  • *****
  • Сообщений: 2489
  • От форм математических бушует вся душа
    • Просмотр профиля
Вот ваши ответы:

\( x_4=\frac{b_{34}-b_{12}}{k_{12}-k_{34}} \)

\( y_4=k_{12} x_4+b_{12} \)

где:

\( k_{12}=\frac{y_2-y_1}{x_2-x_1} \)

\( b_{12}=y_1-k_{12} x_1 \)

\( k_{34}=-\frac{1}{k_{12}} \)

\( b_{34}=y_3-k_{34} x_3 \)
За жизнью надо тщательно следить, все время избегая с ней разлуки.

Оффлайн Andruha

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Потрясающе !!!
ОГРОМНОЕ СПАСИБО !

только что проверил - работает. НО!  При углах Альфа = 90 или 0 выскакивает ошибка деления на ноль...
При расчете К12  или К34.
Еще поможете ?
И еще , если конечно есть время , Вы хоть кратко описать можете как это расчитывается, либо дать ссылку.

Еще раз спасибо.

Оффлайн renuar911

  • Ветеран
  • *****
  • Сообщений: 2489
  • От форм математических бушует вся душа
    • Просмотр профиля
Чтобы деления на ноль не было, в проге нужно ввести ограничения. А делал я просто. Исходная прямая по двум точкам просто пишется. Ее можно всегда выразить как y=kx+b. Вторая прямая имеет коэффициент при x равный -1/k (свойство перпендикулярности). Для этой второй прямой свободный член определяется по третьей Вашей точке.
Точка 4 - это пересечение двух прямых. Из формул все хорошо видно.
Формулы выводил сходу на листочке, но сейчас в Выгодском нашел похожее



Ограничения в проге простые - если знаменатель равен нулю, то имеет место вертикальная линия и Ваша y4 - это ордината другой линии, имеющей уравнение y=c. То есть y4=c.
« Последнее редактирование: 29 Ноября 2010, 17:34:18 от renuar911 »
За жизнью надо тщательно следить, все время избегая с ней разлуки.

Оффлайн Andruha

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Действительно просто.
Спасибо.

Оффлайн Andruha

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Вы очень сильно упростили мне работу тем , что удалось избежать тригонометрических функций.
Хотя в другой задаче мне все таки пришлость ими воспользоваться ( и успешно) .
Может найдется более оригинальное решение и для неё ...

Оффлайн renuar911

  • Ветеран
  • *****
  • Сообщений: 2489
  • От форм математических бушует вся душа
    • Просмотр профиля
Искать всегда приятно. А находить - тем более. Желаю успехов!
За жизнью надо тщательно следить, все время избегая с ней разлуки.

 

ПОМОГИТЕ!!!!! Надо прорешать срочно ДУ!Очень очень очень надо

Автор Angrymelon

Ответов: 15
Просмотров: 15397
Последний ответ 17 Февраля 2012, 09:53:38
от Angrymelon
Не знаю как найти производную, помогите найти производную

Автор мимоза

Ответов: 2
Просмотров: 11184
Последний ответ 09 Декабря 2010, 15:40:15
от glora
помогите упростить выражение (2+√6)(3√2-2√3)

Автор Я ученик

Ответов: 3
Просмотров: 12332
Последний ответ 07 Сентября 2014, 18:20:34
от Dimka1
Решение интегралов. Помогите пжл с решением интегралов

Автор MEF

Ответов: 6
Просмотров: 12079
Последний ответ 10 Апреля 2010, 17:53:05
от stioneq
помогите исследовать ряд на сходимость и абсолютную сходимость

Автор катюшок

Ответов: 1
Просмотров: 6799
Последний ответ 14 Января 2013, 18:56:10
от tig81