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
Summary
Actions Summary Table
Actions | Description |
---|---|
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 (smaller)
Parameters
- Libraries.Language.Object: The object to compare to.
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(t)
Parameters
- Libraries.Language.Object: The to be compared.
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 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.
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.
Parameters
- Libraries.Game.Collision.LocalCollisionPoints2D: The LocalCollisionPoints2D between two objects named "A" and "B."
- Libraries.Game.Collision.PhysicsPosition2D: The position and tilt of object A with respect to the global coordinates.
- number radiusA: The radius of object A.
- Libraries.Game.Collision.PhysicsPosition2D: The position and tilt of object B with respect to the global coordinates.
- number radiusB: the radius of object B.