Package org.robwork.sdurw_math
Class VelocityScrew6D
- java.lang.Object
-
- org.robwork.sdurw_math.VelocityScrew6D
-
public class VelocityScrew6D extends java.lang.Object
Class for representing 6 degrees of freedom velocity screws.
\mathbf{\nu} = \left[ \begin{array}{c} v_x\\ v_y\\ v_z\\ \omega_x\\ \omega_y\\ \omega_z \end{array} \right]
A VelocityScrew is the description of a frames linear and rotational velocity
with respect to some reference frame.
-
-
Constructor Summary
Constructors Constructor Description VelocityScrew6D()
Default Constructor.VelocityScrew6D(double vx, double vy, double vz, double wx, double wy, double wz)
Constructs a 6 degrees of freedom velocity screw
VelocityScrew6D(long cPtr, boolean cMemoryOwn)
VelocityScrew6D(Transform3D transform)
Constructs a velocity screw in frame a from a
transform \robabx{a}{b}{\mathbf{T}} .
VelocityScrew6D(Vector3D linear, EAA angular)
Constructs a velocity screw from a linear and angular velocity
VelocityScrew6D(VelocityScrew6D vs)
Copy Constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description VelocityScrew6D
add(VelocityScrew6D screw2)
Adds two velocity screws together \mathbf{\nu}_{12}=\mathbf{\nu}_1+\mathbf{\nu}_2
VelocityScrew6D
addAssign(VelocityScrew6D screw)
Adds the velocity screw given as a parameter to the velocity screw.
EAA
angular()
Extracts the angular velocity and represents it using an
equivalent-angle-axis as \dot{\Theta}\mathbf{k}
void
delete()
EigenVector6d
e()
Converter to Eigen vectorboolean
equals(VelocityScrew6D rhs)
Comparison operator.
The comparison operator makes a element wise comparison.
Returns true only if all elements are equal.
double
get(long i)
static long
getCPtr(VelocityScrew6D obj)
Vector3D
linear()
Extracts the linear velocity
VelocityScrew6D
multiply(double s)
Scales velocity screw and returns scaled versionVelocityScrew6D
multiplyAssign(double s)
Scales velocity screw with s
double
norm1()
Takes the 1-norm of the velocity screw.double
norm2()
Takes the 2-norm of the velocity screw.double
normInf()
Takes the infinite norm of the velocity screw.boolean
notEqual(VelocityScrew6D rhs)
Comparison operator.
The comparison operator makes a element wise comparison.
Returns true if any of the elements are different.
void
set(long i, double d)
long
size()
get the size of the underlying vectorVelocityScrew6D
subtract(VelocityScrew6D screw2)
Subtracts two velocity screws
\mathbf{\nu}_{12}=\mathbf{\nu}_1-\mathbf{\nu}_2
VelocityScrew6D
subtractAssign(VelocityScrew6D screw)
Subtracts the velocity screw given as a parameter from the
velocity screw.
java.lang.String
toString()
-
-
-
Constructor Detail
-
VelocityScrew6D
public VelocityScrew6D(long cPtr, boolean cMemoryOwn)
-
VelocityScrew6D
public VelocityScrew6D(double vx, double vy, double vz, double wx, double wy, double wz)
Constructs a 6 degrees of freedom velocity screw
- Parameters:
vx
- [in] v_xvy
- [in] v_yvz
- [in] v_zwx
- [in] \omega_xwy
- [in] \omega_ywz
- [in] \omega_z
-
VelocityScrew6D
public VelocityScrew6D()
Default Constructor. Initialized the velocity to 0
-
VelocityScrew6D
public VelocityScrew6D(VelocityScrew6D vs)
Copy Constructor- Parameters:
vs
- [in] the velocityscrew6D to copy
-
VelocityScrew6D
public VelocityScrew6D(Transform3D transform)
Constructs a velocity screw in frame a from a
transform \robabx{a}{b}{\mathbf{T}} .
- Parameters:
transform
- [in] the corresponding transform.
-
-
Method Detail
-
getCPtr
public static long getCPtr(VelocityScrew6D obj)
-
delete
public void delete()
-
linear
public Vector3D linear()
Extracts the linear velocity
- Returns:
- the linear velocity
-
angular
public EAA angular()
Extracts the angular velocity and represents it using an
equivalent-angle-axis as \dot{\Theta}\mathbf{k}
- Returns:
- the angular velocity
-
size
public long size()
get the size of the underlying vector
-
get
public double get(long i)
-
set
public void set(long i, double d)
-
addAssign
public VelocityScrew6D addAssign(VelocityScrew6D screw)
Adds the velocity screw given as a parameter to the velocity screw.
- Parameters:
screw
- [in] Velocity screw to add
- Returns:
- reference to the VelocityScrew6D to support additional
assignments.
-
subtractAssign
public VelocityScrew6D subtractAssign(VelocityScrew6D screw)
Subtracts the velocity screw given as a parameter from the
velocity screw.
- Parameters:
screw
- [in] Velocity screw to subtract
- Returns:
- reference to the VelocityScrew6D to support additional
assignments.
-
multiplyAssign
public VelocityScrew6D multiplyAssign(double s)
Scales velocity screw with s
- Parameters:
s
- [in] scaling value
- Returns:
- reference to the VelocityScrew6D to support additional
assigments
-
equals
public boolean equals(VelocityScrew6D rhs)
Comparison operator.
The comparison operator makes a element wise comparison.
Returns true only if all elements are equal.
- Parameters:
rhs
- [in] VelocityScrew6D to compare with- Returns:
- True if equal.
-
notEqual
public boolean notEqual(VelocityScrew6D rhs)
Comparison operator.
The comparison operator makes a element wise comparison.
Returns true if any of the elements are different.
- Parameters:
rhs
- [in] VelocityScrew6D to compare with- Returns:
- True if not equal.
-
multiply
public VelocityScrew6D multiply(double s)
Scales velocity screw and returns scaled version- Parameters:
s
- [in] scaling value- Returns:
- Scales screw
-
add
public VelocityScrew6D add(VelocityScrew6D screw2)
Adds two velocity screws together \mathbf{\nu}_{12}=\mathbf{\nu}_1+\mathbf{\nu}_2
- Parameters:
screw2
- [in] \mathbf{\nu}_2
- Returns:
- the velocity screw \mathbf{\nu}_{12}
-
subtract
public VelocityScrew6D subtract(VelocityScrew6D screw2)
Subtracts two velocity screws
\mathbf{\nu}_{12}=\mathbf{\nu}_1-\mathbf{\nu}_2
- Parameters:
screw2
- [in] \mathbf{\nu}_2- Returns:
- the velocity screw \mathbf{\nu}_{12}
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
norm1
public double norm1()
Takes the 1-norm of the velocity screw. All elements both
angular and linear are given the same weight.
- Returns:
- the 1-norm
-
norm2
public double norm2()
Takes the 2-norm of the velocity screw. All elements both
angular and linear are given the same weight
- Returns:
- the 2-norm
-
normInf
public double normInf()
Takes the infinite norm of the velocity screw. All elements
both angular and linear are given the same weight.
- Returns:
- the infinite norm
-
e
public EigenVector6d e()
Converter to Eigen vector
-
-