## 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 points.

Inherits from: Libraries.Language.Object

## 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.

#### Return

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

Example

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

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

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

#### Return

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

Example

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

### GetHashCode()

This action gets the hash code for an object.

#### Return

integer: The integer hash code of the object.

Example

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

### 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 applied.

### GetPoints()

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

#### Return

Libraries.Containers.Array: all of the collision points.

### 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 B.