## Libraries.Game.Collision.GlobalCollisionPoints2D Documentation

This class calculates the actual collision points between two 2D objects in global coordinates. Because the collision points stored inside the "LocalCollisionPoints2D" are approximations/relative collision points, the result from this class should be considered as the correct value for collision point

Inherits from: Libraries.Language.Object

## Summary

### Actions Summary Table

ActionsDescription
Compare(Libraries.Language.Object object)This action compares two object hash codes and returns an integer.
Equals(Libraries.Language.Object object)This action determines if two objects are equal based on their hash code values.
GetHashCode()This action gets the hash code for an object.
GetNormal()This action obtains the direction of the normal impulse that should be applied object B from object A in global coordinates.
GetPoints()This action returns all of the collision points in global coodinates.
GetSeparations()This action returns how much separation is between object A and object B.
Initialize(Libraries.Game.Collision.LocalCollisionPoints2D collisionPoints, Libraries.Game.Collision.PhysicsPosition2D xfA, number radiusA, Libraries.Game.Collision.PhysicsPosition2D xfB, number radiusB)This action calculates the variables to GlobalCollisionPoints2D.

## Actions Documentation

### Compare(Libraries.Language.Object object)

This action compares two object hash codes and returns an integer. The result is larger if this hash code is larger than the object passed as a parameter, smaller, or equal. In this case, -1 means smaller, 0 means equal, and 1 means larger. This action was changed in Quorum 7 to return an integer, instead of a CompareResult object, because the previous implementation was causing efficiency issues.

Example Code

``````Object o
Object t
integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smalle``````

#### Return

integer: The Compare result, Smaller, Equal, or Larger.

### Equals(Libraries.Language.Object object)

This action determines if two objects are equal based on their hash code values.

Example Code

``````use Libraries.Language.Object
use Libraries.Language.Types.Text
Object o
Text t
boolean result = o:Equals(``````

#### Return

boolean: True if the hash codes are equal and false if they are not equal.

### GetHashCode()

This action gets the hash code for an object.

Example Code

``````Object o
integer hash = o:GetHashCode``````

#### Return

integer: The integer hash code of the object.

### GetNormal()

This action obtains the direction of the normal impulse that should be applied object B from object A in global coordinates.

#### Return

Libraries.Compute.Vector2: the direction of the normal impulse that should be applie

### GetPoints()

This action returns all of the collision points in global coodinates.

#### Return

Libraries.Containers.Array: all of the collision point

### GetSeparations()

This action returns how much separation is between object A and object B.

#### Return

Libraries.Containers.Array: how much separation is between object A and object