jadex.application.space.envsupport.math
Interface IVector2

All Known Implementing Classes:
SynchronizedVector2Wrapper, Vector2Double, Vector2Int

public interface IVector2

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
 IVector2 add(double scalar)
          Adds a scalar to each component of this vector.
 IVector2 add(IVector1 scalar)
          Adds a scalar to each component of this vector.
 IVector2 add(IVector2 vector)
          Adds another vector to this vector, adding individual components.
 IVector2 assign(IVector2 vector)
          Assigns this vector the values of another vector.
 Object clone()
          Generates a deep clone of the vector.
 IVector2 copy()
          Makes a copy of the vector without using the complex clone interface.
 IVector2 divide(IVector2 vector)
          Performs a division on the vector.
 boolean equals(IVector2 vector)
          Compares the vector to another vector.
 boolean equals(Object obj)
          Compares the vector to an object
 IVector1 getDirection()
          Returns the direction (theta) of the vector.
 double getDirectionAsDouble()
          Returns the direction (theta) of the vector as double.
 float getDirectionAsFloat()
          Returns the direction (theta) of the vector as float.
 IVector1 getDistance(IVector2 vector)
          Returns the distance to another vector.
 IVector1 getLength()
          Returns the length (magnitude) of the vector.
 IVector1 getMean()
          Returns the mean average of the vector components.
 IVector1 getX()
          Returns the x-component of the vector.
 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.
 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.
 IVector2 mod(IVector2 modulus)
          Applies a modulo vector.
 IVector2 multiply(double scalar)
          Performs a scalar multiplication (scaling) on the vector.
 IVector2 multiply(IVector1 scalar)
          Performs a scalar multiplication (scaling) on the vector.
 IVector2 multiply(IVector2 vector)
          Performs a multiplication on the vector.
 IVector2 negate()
          Negates the vector by negating its components.
 IVector2 negateX()
          Negates the x-component.
 IVector2 negateY()
          Negates the y-component.
 IVector2 normalize()
          Converts the vector to a unit vector (normalization)
 IVector2 randomX(IVector1 lower, IVector1 upper)
          Sets the x-component to a random value in the interval [lower,upper]
 IVector2 randomY(IVector1 lower, IVector1 upper)
          Sets the y-component to a random value in the interval [lower,upper]
 IVector2 subtract(double scalar)
          Subtracts a scalar to each component of this vector.
 IVector2 subtract(IVector1 scalar)
          Subtracts a scalar to each component of this vector.
 IVector2 subtract(IVector2 vector)
          Subtracts another vector to this vector, subtracting individual components.
 IVector2 zero()
          Sets all vector components to zero.
 

Method Detail

assign

IVector2 assign(IVector2 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

IVector2 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

IVector2 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

IVector2 add(IVector2 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

IVector2 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

IVector2 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

IVector2 subtract(IVector2 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

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.

Parameters:
modulus - modulus
Returns:
a reference to the called vector (NOT a copy)

multiply

IVector2 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

IVector2 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

IVector2 multiply(IVector2 vector)
Performs a multiplication on the vector.

Parameters:
vector - vector
Returns:
a reference to the called vector (NOT a copy)

divide

IVector2 divide(IVector2 vector)
Performs a division on the vector.

Parameters:
vector - vector
Returns:
a reference to the called vector (NOT a copy)

zero

IVector2 zero()
Sets all vector components to zero.

Returns:
a reference to the called vector (NOT a copy)

negateX

IVector2 negateX()
Negates the x-component.

Returns:
a reference to the called vector (NOT a copy)

negateY

IVector2 negateY()
Negates the y-component.

Returns:
a reference to the called vector (NOT a copy)

negate

IVector2 negate()
Negates the vector by negating its components.

Returns:
a reference to the called vector (NOT a copy)

randomX

IVector2 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

IVector2 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)

normalize

IVector2 normalize()
Converts the vector to a unit vector (normalization)


getLength

IVector1 getLength()
Returns the length (magnitude) of the vector.

Returns:
vector length

getDirection

IVector1 getDirection()
Returns the direction (theta) of the vector.

Returns:
vector direction

getDirectionAsFloat

float getDirectionAsFloat()
Returns the direction (theta) of the vector as float.

Returns:
vector direction as float

getDirectionAsDouble

double getDirectionAsDouble()
Returns the direction (theta) of the vector as double.

Returns:
vector direction as double

getMean

IVector1 getMean()
Returns the mean average of the vector components.

Returns:
vector direction

getDistance

IVector1 getDistance(IVector2 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

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

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

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

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

getXAsBigDecimal

BigDecimal getXAsBigDecimal()
Returns the x-component of the vector as BigDecimal.

Returns:
x-component as BigDecimal

getYAsBigDecimal

BigDecimal getYAsBigDecimal()
Returns the component of the vector as BigDecima;.

Returns:
y-component as BigDecimal

copy

IVector2 copy()
Makes a copy of the vector without using the complex clone interface.

Returns:
copy of the vector

clone

Object clone()
             throws CloneNotSupportedException
Generates a deep clone of the vector.

Returns:
clone of this vector
Throws:
CloneNotSupportedException

equals

boolean equals(Object obj)
Compares the vector to an object

Overrides:
equals in class Object
Parameters:
obj - the object
Returns:
always returns false unless the object is an IVector2, in which case it is equivalent to equals(IVector vector)

equals

boolean equals(IVector2 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


Copyright © 2010. All Rights Reserved.