четверг, 24 мая 2012 г.

Геометрия на практике - как отразить угол от прямой

Делал небольшую демку, где мяч (т.е. цветной круг) летает по экрану и отталкивается от сторон экрана.

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

Возьмём, например, начальное направление 225 градусов (т.е. мяч летит в левый нижний угол). Зная, что угол падения равен углу отражения, получаем, что после столкновения угол равен 315 градусов. Чтобы вычислить это, делаем вот что:
270 - 225 + 270 = 540 - 225 = 315

Тоже самое верно и наоборот (что неудивительно):
540 - 315 = 225
Для отражения от горизонтальной прямой используется другая формула:
180 - angel + 180 = 360 - angel


Например, те же 225, должны отразиться в 135, проверяем:
360 - 225 = 135

Да, всё верно. Удачи =)