Package jadex.extension.envsupport.math
Class Vector2Int
- java.lang.Object
-
- jadex.extension.envsupport.math.Vector2Int
-
-
Constructor Summary
Constructors Constructor Description Vector2Int()Creates a new Vector2Int with the value (0,0).Vector2Int(int scalar)Creates a new Vector2Int using the scalar to assign the value (scalar,scalar).Vector2Int(int x, int y)Creates a new Vector2Int with the given value.Vector2Int(IVector2 vector)Creates a new Vector2 with the same value as the input vector.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description IVector2add(double scalar)Adds a scalar to each component of this vector.IVector2add(IVector1 scalar)Adds a scalar to each component of this vector.IVector2add(IVector2 vector)Adds another vector to this vector, adding individual components.IVector2assign(IVector2 vector)Assigns this vector the values of another vector.java.lang.Objectclone()Generates a deep clone of the vector.IVector2copy()Makes a copy of the vector without using the complex clone interface.IVector2divide(IVector2 vector)Performs a division on the vector.booleanequals(IVector2 vector)Compares the vector to another vector.booleanequals(java.lang.Object obj)Compares the vector to an objectIVector1getDirection()Returns the direction (theta) of the vector.IVector1getDirection(IVector2 vector)Returns the direction (theta) of the vector.doublegetDirectionAsDouble()Returns the direction (theta) of the vector as double.doublegetDirectionAsDouble(IVector2 vector)Returns the direction (theta) of the vector as double.floatgetDirectionAsFloat()Returns the direction (theta) of the vector as float.floatgetDirectionAsFloat(IVector2 vector)Returns the direction (theta) of the vector as float.IVector1getDistance(IVector2 vector)Returns the distance to another vector.doublegetInnerProductAsDouble(IVector2 vector)Returns the length (magnitude) of the vector.IVector1getLength()Returns the length (magnitude) of the vector.IVector1getMean()Returns the mean average of the vector components.IVector1getSquaredLength()Returns the squared length (magnitude) of the vector.static IVector2getVector2(java.lang.Integer a, java.lang.Integer b)Get a vector for two doubles.IVector1getX()Returns the x-component of the vector.java.math.BigDecimalgetXAsBigDecimal()Returns the x-component of the vector as BigDecimal.doublegetXAsDouble()Returns the x-component of the vector as double.floatgetXAsFloat()Returns the x-component of the vector as float.intgetXAsInteger()Returns the x-component of the vector as integer.longgetXAsLong()Returns the x-component of the vector as long.IVector1getY()Returns the y-component of the vector.java.math.BigDecimalgetYAsBigDecimal()Returns the component of the vector as BigDecima;.doublegetYAsDouble()Returns the component of the vector as double.floatgetYAsFloat()Returns the component of the vector as float.intgetYAsInteger()Returns the component of the vector as integer.longgetYAsLong()Returns the component of the vector as float.inthashCode()Compute the hash code.IVector2mod(IVector2 modulus)Applies a modulo vector.IVector2multiply(double scalar)Performs a scalar multiplication (scaling) on the vector.IVector2multiply(IVector1 scalar)Performs a scalar multiplication (scaling) on the vector.IVector2multiply(IVector2 vector)Performs a multiplication on the vector.IVector2negate()Negates the vector by negating its components.IVector2negateX()Negates the x-component.IVector2negateY()Negates the y-component.IVector2normalize()Converts the vector to a unit vector (normalization)IVector2randomX(IVector1 lower, IVector1 upper)Sets the x-component to a random value in the interval [lower,upper]IVector2randomY(IVector1 lower, IVector1 upper)Sets the y-component to a random value in the interval [lower,upper]IVector2redirect(double angle)Redirects the vector to a new direction, maintaining the magnitude.voidsetX(IVector1 x)voidsetY(IVector1 y)IVector2subtract(double scalar)Subtracts a scalar to each component of this vector.IVector2subtract(IVector1 scalar)Subtracts a scalar to each component of this vector.IVector2subtract(IVector2 vector)Subtracts another vector to this vector, subtracting individual components.java.lang.StringtoString()IVector2zero()Sets all vector components to zero.
-
-
-
Constructor Detail
-
Vector2Int
public Vector2Int()
Creates a new Vector2Int with the value (0,0).
-
Vector2Int
public Vector2Int(IVector2 vector)
Creates a new Vector2 with the same value as the input vector.
-
Vector2Int
public Vector2Int(int scalar)
Creates a new Vector2Int using the scalar to assign the value (scalar,scalar).
-
Vector2Int
public Vector2Int(int x, int y)Creates a new Vector2Int with the given value.
-
-
Method Detail
-
add
public IVector2 add(double scalar)
Adds a scalar to each component of this vector.
-
add
public IVector2 add(IVector2 vector)
Adds another vector to this vector, adding individual components.
-
subtract
public IVector2 subtract(double scalar)
Subtracts a scalar to each component of this vector.
-
subtract
public IVector2 subtract(IVector1 scalar)
Subtracts a scalar to each component of this vector.
-
subtract
public IVector2 subtract(IVector2 vector)
Subtracts another vector to this vector, subtracting individual components.
-
mod
public IVector2 mod(IVector2 modulus)
Applies a modulo vector. The modulus will be added first so that values in the interval (-modulus, 0) will wrap over into the positive range.
-
multiply
public IVector2 multiply(double scalar)
Performs a scalar multiplication (scaling) on the vector.
-
multiply
public IVector2 multiply(IVector1 scalar)
Performs a scalar multiplication (scaling) on the vector.
-
zero
public IVector2 zero()
Sets all vector components to zero.
-
negateX
public IVector2 negateX()
Negates the x-component.
-
negateY
public IVector2 negateY()
Negates the y-component.
-
negate
public IVector2 negate()
Negates the vector by negating its components.
-
randomX
public IVector2 randomX(IVector1 lower, IVector1 upper)
Sets the x-component to a random value in the interval [lower,upper]
-
randomY
public IVector2 randomY(IVector1 lower, IVector1 upper)
Sets the y-component to a random value in the interval [lower,upper]
-
normalize
public IVector2 normalize()
Converts the vector to a unit vector (normalization)
-
redirect
public IVector2 redirect(double angle)
Redirects the vector to a new direction, maintaining the magnitude.
-
getLength
public IVector1 getLength()
Returns the length (magnitude) of the vector.
-
getSquaredLength
public IVector1 getSquaredLength()
Returns the squared length (magnitude) of the vector.- Specified by:
getSquaredLengthin interfaceIVector2- Returns:
- squared vector length
-
getDirection
public IVector1 getDirection()
Returns the direction (theta) of the vector.- Specified by:
getDirectionin interfaceIVector2- Returns:
- vector direction
-
getDirectionAsFloat
public float getDirectionAsFloat()
Returns the direction (theta) of the vector as float.- Specified by:
getDirectionAsFloatin interfaceIVector2- Returns:
- vector direction as float
-
getDirectionAsDouble
public double getDirectionAsDouble()
Returns the direction (theta) of the vector as double.- Specified by:
getDirectionAsDoublein interfaceIVector2- Returns:
- vector direction as double
-
getMean
public IVector1 getMean()
Returns the mean average of the vector components.
-
getDistance
public IVector1 getDistance(IVector2 vector)
Returns the distance to another vector.- Specified by:
getDistancein interfaceIVector2- Parameters:
vector- other vector- Returns:
- distance
-
getX
public IVector1 getX()
Returns the x-component of the vector.
-
getY
public IVector1 getY()
Returns the y-component of the vector.
-
setX
public void setX(IVector1 x)
-
setY
public void setY(IVector1 y)
-
getXAsInteger
public int getXAsInteger()
Returns the x-component of the vector as integer.- Specified by:
getXAsIntegerin interfaceIVector2- Returns:
- x-component as integer
-
getYAsInteger
public int getYAsInteger()
Returns the component of the vector as integer.- Specified by:
getYAsIntegerin interfaceIVector2- Returns:
- y-component as float
-
getXAsLong
public long getXAsLong()
Returns the x-component of the vector as long.- Specified by:
getXAsLongin interfaceIVector2- Returns:
- x-component as long
-
getYAsLong
public long getYAsLong()
Returns the component of the vector as float.- Specified by:
getYAsLongin interfaceIVector2- Returns:
- y-component as float
-
getXAsFloat
public float getXAsFloat()
Returns the x-component of the vector as float.- Specified by:
getXAsFloatin interfaceIVector2- Returns:
- x-component as float
-
getYAsFloat
public float getYAsFloat()
Returns the component of the vector as float.- Specified by:
getYAsFloatin interfaceIVector2- Returns:
- y-component as float
-
getXAsDouble
public double getXAsDouble()
Returns the x-component of the vector as double.- Specified by:
getXAsDoublein interfaceIVector2- Returns:
- x-component as double
-
getYAsDouble
public double getYAsDouble()
Returns the component of the vector as double.- Specified by:
getYAsDoublein interfaceIVector2- Returns:
- y-component as double
-
getXAsBigDecimal
public java.math.BigDecimal getXAsBigDecimal()
Returns the x-component of the vector as BigDecimal.- Specified by:
getXAsBigDecimalin interfaceIVector2- Returns:
- x-component as BigDecimal
-
getYAsBigDecimal
public java.math.BigDecimal getYAsBigDecimal()
Returns the component of the vector as BigDecima;.- Specified by:
getYAsBigDecimalin interfaceIVector2- Returns:
- y-component as BigDecimal
-
copy
public IVector2 copy()
Makes a copy of the vector without using the complex clone interface.
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedExceptionGenerates a deep clone of the vector.
-
equals
public boolean equals(java.lang.Object obj)
Compares the vector to an object
-
equals
public boolean equals(IVector2 vector)
Compares the vector to another vector. The vectors are equal if the components are equal.
-
hashCode
public int hashCode()
Compute the hash code.- Overrides:
hashCodein classjava.lang.Object- Returns:
- The hash code.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
getVector2
public static IVector2 getVector2(java.lang.Integer a, java.lang.Integer b)
Get a vector for two doubles.- Parameters:
a- The first value.b- The second value.- Returns:
- The vector (null if at least one of args is null).
-
getInnerProductAsDouble
public double getInnerProductAsDouble(IVector2 vector)
Description copied from interface:IVector2Returns the length (magnitude) of the vector.- Specified by:
getInnerProductAsDoublein interfaceIVector2- Returns:
- vector length
-
getDirection
public IVector1 getDirection(IVector2 vector)
Description copied from interface:IVector2Returns the direction (theta) of the vector.- Specified by:
getDirectionin interfaceIVector2- Returns:
- vector direction
-
getDirectionAsDouble
public double getDirectionAsDouble(IVector2 vector)
Description copied from interface:IVector2Returns the direction (theta) of the vector as double.- Specified by:
getDirectionAsDoublein interfaceIVector2- Returns:
- vector direction as double
-
getDirectionAsFloat
public float getDirectionAsFloat(IVector2 vector)
Description copied from interface:IVector2Returns the direction (theta) of the vector as float.- Specified by:
getDirectionAsFloatin interfaceIVector2- Returns:
- vector direction as float
-
-