Packagesekati.collisions
Classpublic class GroupCollisionDetector
InheritanceGroupCollisionDetector Inheritance AbstractCollisionDetector Inheritance flash.events.EventDispatcher

GroupCollisionDetector provides collision detection to all registered display object against all other registered display objects (many to many).


Example
  var detector : GroupCollisionDetector = new GroupCollisionDetector( A, B, C, D );
  
Would detect:

You may apply an alphaThreshold to prevent collisions on perimeter alphas, prevent certain colors from registering collisions with excludeColor() or aquire the angle of the collision by setting the returnAngleType to one of the provided CollisionAngle's.

  detector.alphaThreshold = 0.5;       // areas with an alpha >= 0.5 will create a collision.
  detector.excludeColor( 0xffff0000 );     // The 32-bit color to exclude from collisions.
  detector.returnAngleType = CollisionAngle.RADIAN;  // would return the collision angle as radian in the Collision instance
  

You may choose to use the built-in frame-based monitoring function to check & respond to Collision's:

  private function collisionHandler( e : CollisionEvent ) : void {
    var list = e.collisions; // a TypedArray containing one or more Collision instances.
    for ( var i : int = 0; i < list.length; i++) {
     var collision : Collision = list[i] as Collision;
     trace("Collision detected: " + collision.object1 + " & " + collision.object2 + " (angle: " + collision.angle + ", overlap: " + collision.overlap + ")");
    }
  }
  detector.addEventListener( CollisionEvent.COLLISION, collisionHandler );
  detector.startMonitor();
  

See also

sekati.collisions.Collision
sekati.collisions.CollisionAngle
sekati.collisions.AbstractCollisionDetector
sekati.collisions.CollisionDetector
sekati.collisions.GroupCollisionDetector
sekati.events.CollisionEvent


Public Properties
 PropertyDefined by
 InheritedalphaThreshold : Number
A floating point value from 0 - 1 that determines the minimum alpha value to check for collisions.
AbstractCollisionDetector
 InheritedisMonitoring : Boolean
Whether the frame-base collision monitor is running.
AbstractCollisionDetector
 InheritednumChildren : uint
The number of DisplayObjects being checked for collision.
AbstractCollisionDetector
 InheritedreturnAngleType : String
Determines if the angle returned from a collision is in CollisionAngle.RADIAN or CollisionAngle.DEGREE_ANGLE_TYPE (Default: CollisionAngle.NONE).
AbstractCollisionDetector
Protected Properties
 PropertyDefined by
 InheritedobjectArray : TypedArray
AbstractCollisionDetector
 InheritedobjectCheckArray : TypedArray
AbstractCollisionDetector
 InheritedobjectCollisionArray : TypedArray
AbstractCollisionDetector
Public Methods
 MethodDefined by
  
GroupCollisionDetector Constructor
GroupCollisionDetector
 Inherited
addItem(obj:DisplayObject):void
Add a DisplayObject to the list of objects to check for collisions.
AbstractCollisionDetector
  
Check for collisions between the DisplayObjects, if an object collided with another it is recorded and returned by checkCollisions() as an TypedArray of Collision objects.
GroupCollisionDetector
 Inherited
excludeColor(color32:uint, alphaRange:uint = 255, redRange:uint = 20, greenRange:uint = 20, blueRange:uint = 20):void
Defines a color or color range to exclude from collision detections.
AbstractCollisionDetector
 Inherited
removeExcludeColor(color32:uint):void
Removes the color specified from the list of colors to exclude from collision detections.
AbstractCollisionDetector
 Inherited
removeItem(obj:DisplayObject):void
Remove a DisplayObject from the list of objects to check for collisions.
AbstractCollisionDetector
 Inherited
startMonitor():void
Start frame-based automatic collision monitoring.
AbstractCollisionDetector
 Inherited
stopMonitor():void
Stop frame-based automatic collision monitoring.
AbstractCollisionDetector
Protected Methods
 MethodDefined by
 Inherited
clearArrays():void
Clear the objectCheckArray and objectCollisionArray.
AbstractCollisionDetector
 Inherited
monitor(e:Event):void
Frame-based collision monitoring dispatches CollisionEvent's when one or more collisions are detected.
AbstractCollisionDetector
Constructor detail
GroupCollisionDetector()constructor
public function GroupCollisionDetector(... objs)

GroupCollisionDetector Constructor

Parameters
... objs — whoms collisions will be detected with each other.
Method detail
checkCollisions()method
public override function checkCollisions():TypedArray

Check for collisions between the DisplayObjects, if an object collided with another it is recorded and returned by checkCollisions() as an TypedArray of Collision objects.

Returns
TypedArray