|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Mar 2006
Адрес: Ростов-на-Дону
Сообщений: 80
|
Немного упростил алгоритм, что выше. Мне так понятнее, хоть и идея не изменилась.
var rAng:Number = 2; var xBound = 50; var yBound = 25; var pDotNull:Point = new Point(mouseX, mouseY); var pRecNull:Point = new Point(200, 200); var dx:Number = pDotNull.x - pRecNull.x; var dy:Number = pDotNull.y - pRecNull.y; var sin:Number = Math.sin( rAng ); var cos:Number = Math.cos( rAng ); if ( Math.abs( cos * dx + sin * dy ) < xBound && Math.abs( cos * dy - sin * dx ) < yBound ) { // inside ! } else { // outside ! } |
|
|||||
Мне лень искать, но прямоугольник - это два прямоугольных треугольника. А еще это две окружности вписанная в него, и та, в которую вписан он.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку. |
Часовой пояс GMT +4, время: 06:06. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|