Libraries.Game.Collision.Shapes.CollisionShape3D Documentation
This class is used by Box, Cylinder, and Sphere classes to record some of the properties that Box, Cylinder, and Sphere have in common.
Inherits from: Libraries.Language.Object
Summary
Variable Summary Table
Variables | Description |
---|---|
integer CYLINDER | |
integer BOX | |
integer SPHERE | |
integer TRIANGLE | |
integer MAX_PREFERRED_PENETRATION_DIRECTIONS |
Actions Summary Table
Actions | Description |
---|---|
CalculateLocalInertia(number mass, Libraries.Compute.Vector3 intertia) | This action returns how the 3D object has been scaled to the shape that it has right now. |
CalculateTemporalBoundingBox(Libraries.Game.Collision.PhysicsPosition3D currentTransform, Libraries.Compute.Vector3 linearVelocity, Libraries.Compute.Vector3 angularVelocity, number timeStep, Libraries.Game.BoundingBox temporalBoundingBox) | This action calculates the rectangular cube that will contain both the object in its position currently and also contain the object in a position after "timeStep" seconds from now. |
Compare(Libraries.Language.Object object) | This action compares two object hash codes and returns an integer. |
ComputeBoundingBox(Libraries.Game.BoundingBox boundingBox, Libraries.Game.Collision.PhysicsPosition3D transform) | |
Copy() | This action sets what type of 3D object this 3D object is. |
Equals(Libraries.Language.Object object) | This action determines if two objects are equal based on their hash code values. |
GetAngularMotionDisc() | This calculates the maximum distance between any point to the center of the 3D object. |
GetBoundingSphere(Libraries.Compute.Vector3 center) | This action finds the center (relative to the object's local origin) and the radius of a sphere that would bound the object that is at its current position. |
GetChildCount() | This action returns what type of 3D object the 3D object is. |
GetHashCode() | This action gets the hash code for an object. |
GetLocalScaling(Libraries.Compute.Vector3 out) | This action returns how the 3D object has been scaled to the shape that it has right now. |
GetMargin() | This action returns the offset of the box that will bound the object to prevent objects going through each other graphically. |
GetNumberPreferredPenetrationDirections() | This action sets how big the 3D object is, scaling from the current size of the 3D object. |
GetPreferredPenetrationDirection(integer index, Libraries.Compute.Vector3 penetrationVector) | This action sets how big the 3D object is, scaling from the default size of the 3D object. |
GetType() | This action returns what type of 3D object the 3D object is. |
LocalGetSupportingVertex(Libraries.Compute.Vector3 vector) | This action returns the offset of the box that will bound the object to prevent objects going through each other graphically. |
LocalGetSupportingVertexWithoutMargin(Libraries.Compute.Vector3 vector) | This action sets the offset of the box that will bound the object to prevent objects going through each other graphically. |
Scale(Libraries.Compute.Vector3 scale) | This action sets how big the 3D object is, scaling from the current size of the 3D object. |
SetLocalScaling(Libraries.Compute.Vector3 scaling) | This action sets how big the 3D object is, scaling from the default size of the 3D object. |
SetMargin(number margin) | This action sets the offset of the box that will bound the object to prevent objects going through each other graphically. |
SetType(integer type) | This action sets what type of 3D object this 3D object is. |
Actions Documentation
CalculateLocalInertia(number mass, Libraries.Compute.Vector3 intertia)
This action returns how the 3D object has been scaled to the shape that it has right now.
Parameters
CalculateTemporalBoundingBox(Libraries.Game.Collision.PhysicsPosition3D currentTransform, Libraries.Compute.Vector3 linearVelocity, Libraries.Compute.Vector3 angularVelocity, number timeStep, Libraries.Game.BoundingBox temporalBoundingBox)
This action calculates the rectangular cube that will contain both the object in its position currently and also contain the object in a position after "timeStep" seconds from now.
Parameters
- Libraries.Game.Collision.PhysicsPosition3D
- Libraries.Compute.Vector3
- Libraries.Compute.Vector3
- Libraries.Game.BoundingBox
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.
ComputeBoundingBox(Libraries.Game.BoundingBox boundingBox, Libraries.Game.Collision.PhysicsPosition3D transform)
Parameters
Copy()
This action sets what type of 3D object this 3D object is.
Return
Libraries.Game.Collision.Shapes.CollisionShape3D:
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.
GetAngularMotionDisc()
This calculates the maximum distance between any point to the center of the 3D object.
Return
number:
GetBoundingSphere(Libraries.Compute.Vector3 center)
This action finds the center (relative to the object's local origin) and the radius of a sphere that would bound the object that is at its current position.
Parameters
Return
number:
GetChildCount()
This action returns what type of 3D object the 3D object is.
Return
integer:
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.
GetLocalScaling(Libraries.Compute.Vector3 out)
This action returns how the 3D object has been scaled to the shape that it has right now.
Parameters
Return
GetMargin()
This action returns the offset of the box that will bound the object to prevent objects going through each other graphically.
Return
number:
GetNumberPreferredPenetrationDirections()
This action sets how big the 3D object is, scaling from the current size of the 3D object.
Return
integer:
GetPreferredPenetrationDirection(integer index, Libraries.Compute.Vector3 penetrationVector)
This action sets how big the 3D object is, scaling from the default size of the 3D object.
Parameters
GetType()
This action returns what type of 3D object the 3D object is.
Return
integer:
LocalGetSupportingVertex(Libraries.Compute.Vector3 vector)
This action returns the offset of the box that will bound the object to prevent objects going through each other graphically.
Parameters
Return
LocalGetSupportingVertexWithoutMargin(Libraries.Compute.Vector3 vector)
This action sets the offset of the box that will bound the object to prevent objects going through each other graphically.
Parameters
Return
Scale(Libraries.Compute.Vector3 scale)
This action sets how big the 3D object is, scaling from the current size of the 3D object.
Parameters
SetLocalScaling(Libraries.Compute.Vector3 scaling)
This action sets how big the 3D object is, scaling from the default size of the 3D object.
Parameters
SetMargin(number margin)
This action sets the offset of the box that will bound the object to prevent objects going through each other graphically.
Parameters
SetType(integer type)
This action sets what type of 3D object this 3D object is.