LuaDocs/Vector
From Data Realms Wiki
Contents |
Has no parent class
Generic Class. A useful 2D float vector.
Properties
ClassName
Read-only property. The class name of this Vector.A string with the friendly-formatted type name of this Vector.
RoundedX
Read-only property. Returns the rounded integer X value of this Vector.A int value that represents the X value of this Vector.
RoundedY
Read-only property. Returns the rounded integer Y value of this Vector.A int value that represents the Y value of this Vector.
Rounded
Read-only property. A rounded copy of this Vector. Does not alter this Vector.A rounded copy of this Vector.
FlooredX
Read-only property. Returns the greatest integer that is not greater than the X value of this Vector.A int value that represents the X value of this Vector.
FlooredY
Read-only property. Returns the greatest integer that is not greater than the Y value of this Vector.A int value that represents the Y value of this Vector.
Floored
Read-only property. A floored copy of this Vector. Does not alter this Vector.A floored copy of this Vector.
CeilingedX
Read-only property. Returns the lowest integer that is not less than the X value of this Vector.A int value that represents the X value of this Vector.
CeilingedY
Read-only property. Returns the lowest integer that is not less than the Y value of this Vector.A int value that represents the Y value of this Vector.
Ceilinged
Read-only property. A ceiling:ed copy of this Vector. Does not alter this Vector.A ceiling:ed copy of this Vector.
Magnitude
Read-only property. The magnitude of this Vector.A float describing the magnitude.
Largest
Read-only property. The absolute largest of the two elements. Will always be positive.A float describing the largest value of the two, but not the magnitude.
Smallest
Read-only property. The absolute smallest of the two elements. Will always be positive.A float describing the smallest value of the two, but not the magnitude.
Normalized
Read-only property. A Vector that has the same direction as this but with a magnitude of 1.0.
Perpendicular
Read-only property. A Vector that is perpendicular to this, rotated PI/2.
AbsRadAngle
Read-only property. Get this Vector's absolute angle in radians. e.g: when x = 1, y = 0, the value returned here will be 0. x = 0, y = 1 yields -pi/2 here.The absolute angle in radians.
AbsDegAngle
Read-only property. Get this Vector's absolute angle in degrees. e.g: when x = 1, y = 0, the value returned here will be 0. x = 0, y = 1 yields -90 here.The absolute angle in degrees.
Functions
SetMagnitude
Sets the magnitude of this Vector and keeps its angle intact.
Arguments:
- A float value that the magnitude will be set to.
Return value:
A reference to this after the change.
GetXFlipped
Gets a Vector identical to this except that its X component is flipped.
Arguments:
- Whether to flip the X axis of the return vector or not.
Return value:
A copy of this vector with flipped X axis.
GetYFlipped
Gets a Vector identical to this except that its Y component is flipped.
Arguments:
- Whether to flip the Y axis of the return vector or not.
Return value:
A copy of this vector with flipped Y axis.
CapMagnitude
Caps the magnitude of this Vector to a max value and keeps its angle intact.
Arguments:
- A float value that the magnitude will be capped by.
Return value:
A reference to this after the change.
FlipX
Flips the X element of this Vector.
Arguments:
- Whether or not to flip the X element or not.
Return value:
None.
FlipY
Flips the Y element of this Vector.
Arguments:
- Whether or not to flip the Y element or not.
Return value:
None.
IsZero
Indicates whether both x and y components of this Vector are 0;
Arguments:
- None.
Return value:
Whether both x and y components of this Vector are 0.
IsOpposedTo
Indicates whether the x and y components of this Vector each have opposite signs to their corresponding components of a passed in Vector.
Arguments:
- The Vector to compare with.
Return value:
Whether both x and y components of this Vector are 0.
Dot
Returns the dot product of this Vector and the passed in Vector.
Arguments:
- The Vector which will be the rhs operand of the dot product operation.
Return value:
The resulting dot product scalar float.
Cross
Returns the 2D cross product of this Vector and the passed in Vector. This is really the area of the parallellogram that the two vectors form.
Arguments:
- The Vector which will be the rhs operand of the cross product operation.
Return value:
The resulting 2d cross product parallellogram area.
Round
Rounds the X and Y values of this Vector upwards. E.g. 0.49 -> 0.0 and 0.5 -> 1.0.
Arguments:
- None.
Return value:
None.
ToHalf
Sets the X and Y of this Vector to the nearest half value. E.g. 1.0 -> 1.5 and 0.9 -> 0.5.
Arguments:
- None.
Return value:
None.
Floor
Sets the X and Y of this Vector.to the greatest integers that are not greater than their original values. E.g. -1.02 becomes -2.0.
Arguments:
- None.
Return value:
None.
Ceiling
Sets the X and Y of this Vector.to the lowest integers that are not less than their original values. E.g. -1.02 becomes -1.0.
Arguments:
- None.
Return value:
None.
Normalize
Scales this vector to have the same direction but a magnitude of 1.0.
Arguments:
- None.
Return value:
Vector reference to this after the operation.
Perpendicularize
Makes this vector perpendicular to its previous state, rotated PI/2. Much faster than RadRotate by PI/2.
Arguments:
- None.
Return value:
Vector reference to this after the operation.
Reset
Sets both the X and Y of this Vector.to zero.
Arguments:
- None.
Return value:
None.
RadRotate
Rotate this Vector relatively by an angle in radians.
Arguments:
- The angle in radians to rotate by. Positive angles rotate counter- clockwise, and negative angles clockwise.
Return value:
This vector, rotated.
DegRotate
Rotate this Vector relatively by an angle in degrees.
Arguments:
- The angle in degrees to rotate by. Positive angles rotate counter- clockwise, and negative angles clockwise.
Return value:
This vector, rotated.
DegRotate
Rotate this Vector around itself by a relative rotation in degrees.
Arguments:
- The angle in degrees to rotate. Positive is counter clockwise, and negative is clockwise rotation.
Return value:
None.
AbsRotateTo
Set this Vector to an absolute rotation based on the absolute rotation of another Vector.
Arguments:
- The reference Vector whose absolute angle from positive X (0 degrees) this Vector will be rotated to.
Return value:
This vector, rotated.
SetXY
Sets both the X and Y values of this Vector.
Arguments:
- Two float values that the X and Y value will be set to, respectively.
Return value:
None.