Package org.robwork.sdurw_math
Class Vector2D
- java.lang.Object
-
- org.robwork.sdurw_math.Vector2D
-
public class Vector2D extends java.lang.Object
A 2D vector \mathbf{v}\in \mathbb{R}^2
\robabx{i}{j}{\mathbf{v}} = \left[ \begin{array}{c} v_x \\ v_y \end{array} \right]
In addition, Vector2D supports the cross product operator:
v3 = cross(v1, v2)
Usage example:
using namespace rw::math; Vector2D<> v1(1.0, 2.0); Vector2D<> v2(6.0, 7.0); Vector2D<> v3 = cross( v1, v2 ); Vector2D<> v4 = v2 - v1;
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Vector2D
add(Vector2D b)
Vector addition.Vector2D
addAssign(Vector2D v)
Vector addition.double
angle()
returns the counter clock-wise angle between
this vector and the x-axis vector (1,0).void
delete()
Vector2D
devideAssign(double s)
Scalar division.Vector2D
divide(double s)
Scalar division.EigenVector2d
e()
Returns Eigen vector equivalent to *this.boolean
equals(Vector2D b)
Compares a and b for equality.double
get(long i)
static long
getCPtr(Vector2D obj)
Vector2D
multiply(double s)
Scalar multiplication.Vector2D
multiplyAssign(double s)
Scalar multiplication.Vector2D
negate()
Unary minus.double
norm1()
Returns the Manhatten norm (1-norm) of the vectordouble
norm2()
Returns the Euclidean norm (2-norm) of the vectordouble
normInf()
Returns the infinte norm ( \inf-norm) of the vectorboolean
notEqual(Vector2D b)
Compares a and b for inequality.void
set(long i, double d)
long
size()
The dimension of the vector (i.e.Vector2D
subtract(Vector2D b)
Vector subtraction.Vector2D
subtractAssign(Vector2D v)
Vector subtraction.java.lang.String
toString()
-
-
-
Constructor Detail
-
Vector2D
public Vector2D(long cPtr, boolean cMemoryOwn)
-
Vector2D
public Vector2D()
Creates a 2D vector initialized with 0's
-
Vector2D
public Vector2D(double x, double y)
Creates a 2D vector
- Parameters:
x
- [in] x
y
- [in] y
-
Vector2D
public Vector2D(Vector2D copy)
Copy Constructor
-
-
Method Detail
-
getCPtr
public static long getCPtr(Vector2D obj)
-
delete
public void delete()
-
e
public EigenVector2d e()
Returns Eigen vector equivalent to *this.
-
size
public long size()
The dimension of the vector (i.e. 2).
This method is provided to help support generic algorithms using
size() and operator[].
-
get
public double get(long i)
-
set
public void set(long i, double d)
-
divide
public Vector2D divide(double s)
Scalar division.
-
multiply
public Vector2D multiply(double s)
Scalar multiplication.
-
multiplyAssign
public Vector2D multiplyAssign(double s)
Scalar multiplication.
-
devideAssign
public Vector2D devideAssign(double s)
Scalar division.
-
negate
public Vector2D negate()
Unary minus.
-
equals
public boolean equals(Vector2D b)
Compares a and b for equality.- Parameters:
b
- [in]- Returns:
- True if a equals b, false otherwise.
-
notEqual
public boolean notEqual(Vector2D b)
Compares a and b for inequality.- Parameters:
b
- [in]- Returns:
- True if a and b are different, false otherwise.
-
angle
public double angle()
returns the counter clock-wise angle between
this vector and the x-axis vector (1,0). The angle
returned will be in the interval [-Pi,Pi]
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
norm2
public double norm2()
Returns the Euclidean norm (2-norm) of the vector- Returns:
- the norm
-
norm1
public double norm1()
Returns the Manhatten norm (1-norm) of the vector- Returns:
- the norm
-
normInf
public double normInf()
Returns the infinte norm ( \inf-norm) of the vector- Returns:
- the norm
-
-