Хорошо, поменяем немного условные обозначения и введем систему координат следующим образом, как показано на рисунке. В качестве переменной взят угол t. По этому улгу можно однозначно определить положение пианино.
Начало процесса поворота: t=0
Конец процесса поворота: t=Pi/2
Уравнение прямой CD, выраженное через угол t
y= -x tg(t) – p sin(t) - q/ cos(t)
Запустив цикл по t от 0 до 90° с шагом, например, в 1°, получим семейство уравнений прямой СD при протискивании пианино в углу. В кажом шаге цикла проверим условие пианинного проползания:
y(-a) > -b - если через перебор.
А можно исследовать y(-a) на экстремумы (t=0 до t=90°). Правда это не такая уж и легкая задача будет. Здесь нужно использовать матпакеты и получить приближенное значение(точного решения задача не имеет) и работать уже с ним.
Вообщем, перебором все-таки гораздо проще выйдет.
(копирайт Дин Гиор)
Примечание: вывод формулы:
Коэффициент наклона прямой: k=y_b/(-x_a)=-(p*sin(t))/(p*cos(t))=-tan(t);
Координаты точки D: (-p*cos(t)-q*sin(t),-q*cos(t);
Уравнение прямой: y=y_D+k(x-x_D)
или: y=-q*cos(t)-tan(t)(x+p*cos(t)+q*sin(t))
или: y= -x tg(t) – p sin(t) - q/ cos(t)
Последний раз редактировалось Trotil; 09.05.2005 в 13:29.
|