| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [АнГем] Пересечение прямой одной из |
| Автор: En_t_end 18.4.2007, 13:10 |
| Собственно имеется прямоугольник заданный координатами вершин (x1;y1),(x2;y2),(x3;y3),(x4;y4). Имеется некоторая точка A(x;y), лежащая в прямоугольнике. Нужно вычислить координаты точки A1(b;c) - точки пересечения прямой AA1 с соответствующей стороной прямоугольника. Причем известно, что угол alfa(наклона AA1) известен, как заданный из промежутка (0;360) градусов. |
| Автор: Ryoga 18.4.2007, 15:26 |
| Блин, АА1 - это луч, а не прямая. Или именно прямая? Тогда две точки. Составляем уравнение прямой y = ax+b. a = tg (alfa), вроде. b находим из уравнения, поставив точку А. Дальше, например, можем найти все пересечения прямой и сторон. Отбрасываем две точки, которые не попали на отрезки сторон. Учитывая, что АА1 - это луч, надо оставить одну из них. Угол Альфа дан - можно это сделать. Вот, как-то так. З.Ы.: А лежит СТРОГО в прямоугольнике? Иначе могут быть случаи, что на какой-то из сторон лежит. |