Package jadex.extension.envsupport.math
Interface IVector3
-
- All Known Implementing Classes:
Vector3Double
,Vector3Int
public interface IVector3
Interface for cartesian 2-vectors NOTE: All operations on the vector are destructive and the instance returned is the same as the one whose method was called. If you require a copy of the vector before performing operations on it, use the copy constructor, the copy method or the clone interface.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IVector3
add(double scalar)
Adds a scalar to each component of this vector.IVector3
add(IVector1 scalar)
Adds a scalar to each component of this vector.IVector3
add(IVector3 vector)
Adds another vector to this vector, adding individual components.IVector3
assign(IVector3 vector)
Assigns this vector the values of another vector.java.lang.Object
clone()
Generates a deep clone of the vector.IVector3
copy()
Makes a copy of the vector without using the complex clone interface.IVector3
divide(IVector3 vector)
Performs a division on the vector.boolean
equals(IVector3 vector)
Compares the vector to another vector.boolean
equals(java.lang.Object obj)
Compares the vector to an objectIVector2
getDirection()
Returns the direction (theta) of the vector.IVector1
getDistance(IVector3 vector)
Returns the distance to another vector.IVector1
getLength()
Returns the length (magnitude) of the vector.IVector1
getX()
Returns the x-component of the vector.java.math.BigDecimal
getXAsBigDecimal()
Returns the x-component of the vector as BigDecimal.double
getXAsDouble()
Returns the x-component of the vector as double.float
getXAsFloat()
Returns the x-component of the vector as float.int
getXAsInteger()
Returns the x-component of the vector as integer.long
getXAsLong()
Returns the x-component of the vector as long.IVector1
getY()
Returns the y-component of the vector.java.math.BigDecimal
getYAsBigDecimal()
Returns the component of the vector as BigDecima;.double
getYAsDouble()
Returns the component of the vector as double.float
getYAsFloat()
Returns the component of the vector as float.int
getYAsInteger()
Returns the component of the vector as integer.long
getYAsLong()
Returns the component of the vector as float.IVector1
getZ()
Returns the z-component of the vector.java.math.BigDecimal
getZAsBigDecimal()
Returns the component of the vector as BigDecima;.double
getZAsDouble()
Returns the component of the vector as double.float
getZAsFloat()
Returns the component of the vector as float.int
getZAsInteger()
Returns the component of the vector as integer.long
getZAsLong()
Returns the component of the vector as float.IVector3
mod(IVector3 modulus)
Applies a modulo vector.IVector3
multiply(double scalar)
Performs a scalar multiplication (scaling) on the vector.IVector3
multiply(IVector1 scalar)
Performs a scalar multiplication (scaling) on the vector.IVector3
multiply(IVector3 vector)
Performs a multiplication on the vector.IVector3
negate()
Negates the vector by negating its components.IVector3
negateX()
Negates the x-component.IVector3
negateY()
Negates the y-component.IVector3
negateZ()
Negates the z-component.IVector3
normalize()
Converts the vector to a unit vector (normalization)IVector3
randomX(IVector1 lower, IVector1 upper)
Sets the x-component to a random value in the interval [lower,upper]IVector3
randomY(IVector1 lower, IVector1 upper)
Sets the y-component to a random value in the interval [lower,upper]IVector3
randomZ(IVector1 lower, IVector1 upper)
Sets the z-component to a random value in the interval [lower,upper]IVector3
subtract(double scalar)
Subtracts a scalar to each component of this vector.IVector3
subtract(IVector1 scalar)
Subtracts a scalar to each component of this vector.IVector3
subtract(IVector3 vector)
Subtracts another vector to this vector, subtracting individual components.IVector3
zero()
Sets all vector components to zero.
-
-
-
Method Detail
-
assign
IVector3 assign(IVector3 vector)
Assigns this vector the values of another vector.- Parameters:
vector
- the other vector- Returns:
- a reference to the called vector (NOT a copy)
-
add
IVector3 add(double scalar)
Adds a scalar to each component of this vector.- Parameters:
scalar
- scalar value as double- Returns:
- a reference to the called vector (NOT a copy)
-
add
IVector3 add(IVector1 scalar)
Adds a scalar to each component of this vector.- Parameters:
scalar
- scalar value- Returns:
- a reference to the called vector (NOT a copy)
-
add
IVector3 add(IVector3 vector)
Adds another vector to this vector, adding individual components.- Parameters:
vector
- the vector to add to this vector- Returns:
- a reference to the called vector (NOT a copy)
-
subtract
IVector3 subtract(double scalar)
Subtracts a scalar to each component of this vector.- Parameters:
scalar
- scalar value as double- Returns:
- a reference to the called vector (NOT a copy)
-
subtract
IVector3 subtract(IVector1 scalar)
Subtracts a scalar to each component of this vector.- Parameters:
scalar
- scalar value- Returns:
- a reference to the called vector (NOT a copy)
-
subtract
IVector3 subtract(IVector3 vector)
Subtracts another vector to this vector, subtracting individual components.- Parameters:
vector
- the vector to subtract from this vector- Returns:
- a reference to the called vector (NOT a copy)
-
mod
IVector3 mod(IVector3 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.- Parameters:
modulus
- modulus- Returns:
- a reference to the called vector (NOT a copy)
-
multiply
IVector3 multiply(double scalar)
Performs a scalar multiplication (scaling) on the vector.- Parameters:
scalar
- the scale factor double- Returns:
- a reference to the called vector (NOT a copy)
-
multiply
IVector3 multiply(IVector1 scalar)
Performs a scalar multiplication (scaling) on the vector.- Parameters:
scalar
- the scale factor- Returns:
- a reference to the called vector (NOT a copy)
-
multiply
IVector3 multiply(IVector3 vector)
Performs a multiplication on the vector.- Parameters:
vector
- vector- Returns:
- a reference to the called vector (NOT a copy)
-
divide
IVector3 divide(IVector3 vector)
Performs a division on the vector.- Parameters:
vector
- vector- Returns:
- a reference to the called vector (NOT a copy)
-
zero
IVector3 zero()
Sets all vector components to zero.- Returns:
- a reference to the called vector (NOT a copy)
-
negateX
IVector3 negateX()
Negates the x-component.- Returns:
- a reference to the called vector (NOT a copy)
-
negateY
IVector3 negateY()
Negates the y-component.- Returns:
- a reference to the called vector (NOT a copy)
-
negateZ
IVector3 negateZ()
Negates the z-component.- Returns:
- a reference to the called vector (NOT a copy)
-
negate
IVector3 negate()
Negates the vector by negating its components.- Returns:
- a reference to the called vector (NOT a copy)
-
randomX
IVector3 randomX(IVector1 lower, IVector1 upper)
Sets the x-component to a random value in the interval [lower,upper]- Returns:
- a reference to the called vector (NOT a copy)
-
randomY
IVector3 randomY(IVector1 lower, IVector1 upper)
Sets the y-component to a random value in the interval [lower,upper]- Returns:
- a reference to the called vector (NOT a copy)
-
randomZ
IVector3 randomZ(IVector1 lower, IVector1 upper)
Sets the z-component to a random value in the interval [lower,upper]- Returns:
- a reference to the called vector (NOT a copy)
-
normalize
IVector3 normalize()
Converts the vector to a unit vector (normalization)
-
getLength
IVector1 getLength()
Returns the length (magnitude) of the vector.- Returns:
- vector length
-
getDirection
IVector2 getDirection()
Returns the direction (theta) of the vector.- Returns:
- vector direction
-
getDistance
IVector1 getDistance(IVector3 vector)
Returns the distance to another vector.- Parameters:
vector
- other vector- Returns:
- distance
-
getX
IVector1 getX()
Returns the x-component of the vector.- Returns:
- x-component
-
getY
IVector1 getY()
Returns the y-component of the vector.- Returns:
- y-component
-
getZ
IVector1 getZ()
Returns the z-component of the vector.- Returns:
- z-component
-
getXAsInteger
int getXAsInteger()
Returns the x-component of the vector as integer.- Returns:
- x-component as integer
-
getYAsInteger
int getYAsInteger()
Returns the component of the vector as integer.- Returns:
- y-component as float
-
getZAsInteger
int getZAsInteger()
Returns the component of the vector as integer.- Returns:
- y-component as float
-
getXAsLong
long getXAsLong()
Returns the x-component of the vector as long.- Returns:
- x-component as long
-
getYAsLong
long getYAsLong()
Returns the component of the vector as float.- Returns:
- y-component as float
-
getZAsLong
long getZAsLong()
Returns the component of the vector as float.- Returns:
- z-component as float
-
getXAsFloat
float getXAsFloat()
Returns the x-component of the vector as float.- Returns:
- x-component as float
-
getYAsFloat
float getYAsFloat()
Returns the component of the vector as float.- Returns:
- y-component as float
-
getZAsFloat
float getZAsFloat()
Returns the component of the vector as float.- Returns:
- z-component as float
-
getXAsDouble
double getXAsDouble()
Returns the x-component of the vector as double.- Returns:
- x-component as double
-
getYAsDouble
double getYAsDouble()
Returns the component of the vector as double.- Returns:
- y-component as double
-
getZAsDouble
double getZAsDouble()
Returns the component of the vector as double.- Returns:
- z-component as double
-
getXAsBigDecimal
java.math.BigDecimal getXAsBigDecimal()
Returns the x-component of the vector as BigDecimal.- Returns:
- x-component as BigDecimal
-
getYAsBigDecimal
java.math.BigDecimal getYAsBigDecimal()
Returns the component of the vector as BigDecima;.- Returns:
- y-component as BigDecimal
-
getZAsBigDecimal
java.math.BigDecimal getZAsBigDecimal()
Returns the component of the vector as BigDecima;.- Returns:
- y-component as BigDecimal
-
copy
IVector3 copy()
Makes a copy of the vector without using the complex clone interface.- Returns:
- copy of the vector
-
clone
java.lang.Object clone() throws java.lang.CloneNotSupportedException
Generates a deep clone of the vector.- Returns:
- clone of this vector
- Throws:
java.lang.CloneNotSupportedException
-
equals
boolean equals(java.lang.Object obj)
Compares the vector to an object- Overrides:
equals
in classjava.lang.Object
- Parameters:
obj
- the object- Returns:
- always returns false unless the object is an IVector3, in which case it is equivalent to equals(IVector vector)
-
equals
boolean equals(IVector3 vector)
Compares the vector to another vector. The vectors are equal if the components are equal.- Parameters:
vector
- the other vector- Returns:
- true if the vectors are equal
-
-