Package org.robwork.sdurw_math
Class Vector3D
- java.lang.Object
-
- org.robwork.sdurw_math.Vector3D
-
public class Vector3D extends java.lang.ObjectA 3D vector \mathbf{v}\in \mathbb{R}^3
\robabx{i}{j}{\mathbf{v}} = \left[ \begin{array}{c} v_x \\ v_y \\ v_z \end{array} \right]
Usage example:
const Vector3D<> v1(1.0, 2.0, 3.0); const Vector3D<> v2(6.0, 7.0, 8.0); const Vector3D<> v3 = cross(v1, v2); const double d = dot(v1, v2); const Vector3D<> v4 = v2 - v1;
-
-
Constructor Summary
Constructors Constructor Description Vector3D()Creates a 3D vector initialized with 0'sVector3D(double x, double y, double z)Creates a 3D vectorVector3D(long cPtr, boolean cMemoryOwn)Vector3D(vector_d vec)construct vector from std::vectorVector3D(Vector3D copy_vec)Copy constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description EAAadd(EAA rhs)Vector3Dadd(Vector3D b)Vector addition.Vector3DaddAssign(Vector3D v)Vector addition.Vector3Dcross(Vector3D vec)Calculate cross productvoiddelete()Vector3DdevideAssign(double s)Scalar division.Vector3Ddivide(double s)Scalar division.doubledot(Vector3D vec)calculate the dot productEigenVector3de()Returns Reference to Eigen VectorVector3DelemAdd(double rhs)Scalar addition.Vector3DelemDivide(Vector3D rhs)element wise division.Vector3DelemMultiply(Vector3D rhs)Elementweise multiplication.Vector3DelemSubtract(double rhs)Scalar subtraction.booleanequals(EAA rhs)booleanequals(Vector3D b)Compare with b for equality.doubleget(long i)static longgetCPtr(Vector3D obj)Vector3Dmultiply(double rhs)Scalar multiplication.VelocityScrew6Dmultiply(VelocityScrew6D rhs)Wrench6Dmultiply(Wrench6D rhs)Vector3DmultiplyAssign(double s)Scalar multiplication.Vector3Dnegate()Unary minus.
negative versiondoublenorm1()Returns the Manhatten norm (1-norm) of the vectordoublenorm2()Returns the Euclidean norm (2-norm) of the vectorVector3Dnormalize()normalize vector to get length 1doublenormInf()Returns the infinte norm ( \inf-norm) of the vectorbooleannotEqual(EAA rhs)booleannotEqual(Vector3D b)Compare with b for inequality.voidset(long i, double d)longsize()The dimension of the vector (i.e.EAAsubtract(EAA rhs)Vector3Dsubtract(Vector3D b)Vector subtraction.Vector3DsubtractAssign(Vector3D v)Vector subtraction.java.lang.StringtoString()static Vector3Dx()Get x vector (1,0,0)static Vector3Dy()Get y vector (0,1,0)static Vector3Dz()Get z vector (0,0,1)static Vector3Dzero()Get zero vector.
-
-
-
Constructor Detail
-
Vector3D
public Vector3D(long cPtr, boolean cMemoryOwn)
-
Vector3D
public Vector3D()
Creates a 3D vector initialized with 0's
-
Vector3D
public Vector3D(double x, double y, double z)Creates a 3D vector- Parameters:
x- [in] xy- [in] yz- [in] z
-
Vector3D
public Vector3D(Vector3D copy_vec)
Copy constructor- Parameters:
copy_vec- [in] vector to copy
-
Vector3D
public Vector3D(vector_d vec)
construct vector from std::vector- Parameters:
vec- [in] the vector to construct from
-
-
Method Detail
-
getCPtr
public static long getCPtr(Vector3D obj)
-
delete
public void delete()
-
size
public long size()
The dimension of the vector (i.e. 3).
This method is provided to help support generic algorithms using
size() and operator[].- Returns:
- the size
-
zero
public static Vector3D zero()
Get zero vector.- Returns:
- vector.
-
x
public static Vector3D x()
Get x vector (1,0,0)- Returns:
- vector.
-
y
public static Vector3D y()
Get y vector (0,1,0)- Returns:
- vector.
-
z
public static Vector3D z()
Get z vector (0,0,1)- Returns:
- vector.
-
elemDivide
public Vector3D elemDivide(Vector3D rhs)
element wise division.- Parameters:
rhs- [in] the vector being devided with- Returns:
- the resulting Vector3D
-
elemMultiply
public Vector3D elemMultiply(Vector3D rhs)
Elementweise multiplication.- Parameters:
rhs- [in] vector- Returns:
- the element wise product
-
negate
public Vector3D negate()
Unary minus.
negative version
-
divide
public Vector3D divide(double s)
Scalar division.- Parameters:
s- [in] the scalar to devide with- Returns:
- result of devision
-
multiply
public Vector3D multiply(double rhs)
Scalar multiplication.- Parameters:
rhs- [in] the scalar to multiply with- Returns:
- the product
-
elemSubtract
public Vector3D elemSubtract(double rhs)
Scalar subtraction.
-
elemAdd
public Vector3D elemAdd(double rhs)
Scalar addition.
-
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
-
cross
public Vector3D cross(Vector3D vec)
Calculate cross product- Parameters:
vec- [in] the vector to cross with- Returns:
- the cross product
-
dot
public double dot(Vector3D vec)
calculate the dot product- Parameters:
vec- [in] the vecor to be dotted- Returns:
- the dot product
-
normalize
public Vector3D normalize()
normalize vector to get length 1- Returns:
- the normalized Vector
-
e
public EigenVector3d e()
Returns Reference to Eigen Vector- Returns:
- reference to underling eigen
-
get
public double get(long i)
-
set
public void set(long i, double d)
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
multiplyAssign
public Vector3D multiplyAssign(double s)
Scalar multiplication.
-
devideAssign
public Vector3D devideAssign(double s)
Scalar division.
-
equals
public boolean equals(Vector3D b)
Compare with b for equality.- Parameters:
b- [in] other vector.- Returns:
- True if a equals b, false otherwise.
-
notEqual
public boolean notEqual(Vector3D b)
Compare with b for inequality.- Parameters:
b- [in] other vector.- Returns:
- True if a and b are different, false otherwise.
-
equals
public boolean equals(EAA rhs)
-
notEqual
public boolean notEqual(EAA rhs)
-
multiply
public VelocityScrew6D multiply(VelocityScrew6D rhs)
-
-