Страница 1 из 1
Как найти/задать точку на окружности?
Добавлено: 15 авг 2004, 18:26
MaxmaD
У меня возникла такая проблема, нужно сделать вращающийся квадрат по своей оси. Ось - центр квадрата. Сколько я не думал, прихожу к выводу что для этого надо использовать окружность. И если длину окружности поделить на 4 части получатся равные промежутки. Если точку окружности знать и уметь задавать, то можно при нажатии кнопки задавать точку на окружности, например, на градус меньше/больше.
Вот такой вот каламбур.

Заранее благодарен.
Добавлено: 16 авг 2004, 00:47
Naeel Maqsudov
Пусть A - угол в градусах, а R - это радиус той самой окружности, на которой лежат вершины квадрата.
Первый угол квадрата: X:=R*sin(A*Pi/180); X:=R*cos(A*Pi/180);
Второй угол квадрата: X:=R*sin((A+90)*Pi/180); X:=R*cos((A+90)*Pi/180);
Третий угол квадрата: X:=R*sin((A+180)*Pi/180); X:=R*cos((A+180)*Pi/180);
Четвертый угол квадрата: X:=R*sin((A+270)*Pi/180); X:=R*cos((A+270)*Pi/180);
Домашнее задание:
Воспользуйтесь формулами приведения с сократите выражения

Добавлено: 21 авг 2004, 01:31
MaxmaD
Ох, уж эта математика...

Спасибо!
Я тут тоже много чего нарыл, если кому интересно, то окружность рисуется по алгоритму Брезенхама, захотите узнать по подробнее можно поискать в и-нете или мыльнуть мне.
Добавлено: 25 авг 2004, 17:40
Romeo
Наверное
Naeel, имел ввиду:
Первый угол квадрата: X:=R*sin(A*Pi/180); Y:=R*cos(A*Pi/180);
Второй угол квадрата: X:=R*sin((A+90)*Pi/180); Y:=R*cos((A+90)*Pi/180);
Третий угол квадрата: X:=R*sin((A+180)*Pi/180); Y:=R*cos((A+180)*Pi/180);
Четвертый угол квадрата: X:=R*sin((A+270)*Pi/180); Y:=R*cos((A+270)*Pi/180);
Как в детской книжке: сравни и найди четыре отличия

Добавлено: 26 авг 2004, 01:17
Naeel Maqsudov
А, ну да!
"Y", конечно!