2014-01-10 4 views
0

Что такое быстрый способ проверить столкновение между 2 прямоугольников, то у вас есть прямоугольник координаты, как:Проверить столкновение между прямоугольники AS3

Красный прямоугольник: A1 (x1, y1), B1 (x2, y2).

Голубой прямоугольник: A2 (x3, y3), B2 (x4, y4).

enter image description here

+0

Этот пост должен помочь http://stackoverflow.com/questions/115426/algorithm-to-detect-intersection-of-two-rectangles – Pan

ответ

2

hitTestObject - ваш герой.

// Create Box1 
var box1:Sprite = new Sprite(); 
box1.graphics.beginFill(0x0000FF); 
box1.graphics.drawRect(0, 0, x2-x1, y2-y1); 
box1.graphics.endFill(); 
box1.x = x1; 
box1.y = y1; 
addChild(box1); 

// Create Box2 
var box2:Sprite = new Sprite(); 
box2.graphics.beginFill(0x0000FF); 
box2.graphics.drawRect(0, 0, x4-x3, y4-y3); 
box2.graphics.endFill(); 
box2.x = x3; 
box2.y = y3; 
addChild(box2); 


//Now test if collide 
var _collide:Boolean = box1.hitTestObject(box2); 
4

ли вы проверить класс Rectangle Link to AS3 Doc?

пересечение (toIntersect: Прямоугольник): Прямоугольник

Если объект прямоугольника, указанный в параметре toIntersect пересекается с этим объектом Rectangle, возвращается область пересечения в виде объекта Rectangle.

пересекает (toIntersect: Rectangle): Boolean

Определяет, пересекается ли объект, указанный в параметре toIntersect с этим Rectangle объекта.

Смежные вопросы