Package org.robwork.sdurw_math
Class VelocityScrew6D
- java.lang.Object
-
- org.robwork.sdurw_math.VelocityScrew6D
-
public class VelocityScrew6D extends java.lang.ObjectClass 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 VelocityScrew6Dadd(VelocityScrew6D screw2)Adds two velocity screws together \mathbf{\nu}_{12}=\mathbf{\nu}_1+\mathbf{\nu}_2
VelocityScrew6DaddAssign(VelocityScrew6D screw)Adds the velocity screw given as a parameter to the velocity screw.
EAAangular()Extracts the angular velocity and represents it using an
equivalent-angle-axis as \dot{\Theta}\mathbf{k}
voiddelete()EigenVector6de()Converter to Eigen vectorbooleanequals(VelocityScrew6D rhs)Comparison operator.
The comparison operator makes a element wise comparison.
Returns true only if all elements are equal.
doubleget(long i)static longgetCPtr(VelocityScrew6D obj)Vector3Dlinear()Extracts the linear velocity
VelocityScrew6Dmultiply(double s)Scales velocity screw and returns scaled versionVelocityScrew6DmultiplyAssign(double s)Scales velocity screw with s
doublenorm1()Takes the 1-norm of the velocity screw.doublenorm2()Takes the 2-norm of the velocity screw.doublenormInf()Takes the infinite norm of the velocity screw.booleannotEqual(VelocityScrew6D rhs)Comparison operator.
The comparison operator makes a element wise comparison.
Returns true if any of the elements are different.
voidset(long i, double d)longsize()get the size of the underlying vectorVelocityScrew6Dsubtract(VelocityScrew6D screw2)Subtracts two velocity screws
\mathbf{\nu}_{12}=\mathbf{\nu}_1-\mathbf{\nu}_2
VelocityScrew6DsubtractAssign(VelocityScrew6D screw)Subtracts the velocity screw given as a parameter from the
velocity screw.
java.lang.StringtoString()
-
-
-
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:
toStringin 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
-
-