Package org.robwork.sdurw_math
Class VelocityScrew6Dd
- java.lang.Object
-
- org.robwork.sdurw_math.VelocityScrew6Dd
-
public class VelocityScrew6Dd 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 VelocityScrew6Dd()Default Constructor.VelocityScrew6Dd(double vx, double vy, double vz, double wx, double wy, double wz)Constructs a 6 degrees of freedom velocity screw
VelocityScrew6Dd(long cPtr, boolean cMemoryOwn)VelocityScrew6Dd(Transform3Dd transform)Constructs a velocity screw in frame a from a
transform \robabx{a}{b}{\mathbf{T}} .
VelocityScrew6Dd(Vector3Dd linear, EAAd angular)Constructs a velocity screw from a linear and angular velocity
VelocityScrew6Dd(VelocityScrew6Dd vs)Copy Constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description VelocityScrew6Ddadd(VelocityScrew6Dd screw2)Adds two velocity screws together \mathbf{\nu}_{12}=\mathbf{\nu}_1+\mathbf{\nu}_2
VelocityScrew6DdaddAssign(VelocityScrew6Dd screw)Adds the velocity screw given as a parameter to the velocity screw.
EAAdangular()Extracts the angular velocity and represents it using an
equivalent-angle-axis as \dot{\Theta}\mathbf{k}
voiddelete()EigenVector6de()Converter to Eigen vectorbooleanequals(VelocityScrew6Dd rhs)Comparison operator.
The comparison operator makes a element wise comparison.
Returns true only if all elements are equal.
doubleget(long i)static longgetCPtr(VelocityScrew6Dd obj)Vector3Ddlinear()Extracts the linear velocity
VelocityScrew6Ddmultiply(double s)Scales velocity screw and returns scaled versionVelocityScrew6DdmultiplyAssign(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(VelocityScrew6Dd 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 vectorVelocityScrew6Ddsubtract(VelocityScrew6Dd screw2)Subtracts two velocity screws
\mathbf{\nu}_{12}=\mathbf{\nu}_1-\mathbf{\nu}_2
VelocityScrew6DdsubtractAssign(VelocityScrew6Dd screw)Subtracts the velocity screw given as a parameter from the
velocity screw.
java.lang.StringtoString()
-
-
-
Constructor Detail
-
VelocityScrew6Dd
public VelocityScrew6Dd(long cPtr, boolean cMemoryOwn)
-
VelocityScrew6Dd
public VelocityScrew6Dd(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
-
VelocityScrew6Dd
public VelocityScrew6Dd()
Default Constructor. Initialized the velocity to 0
-
VelocityScrew6Dd
public VelocityScrew6Dd(VelocityScrew6Dd vs)
Copy Constructor- Parameters:
vs- [in] the velocityscrew6D to copy
-
VelocityScrew6Dd
public VelocityScrew6Dd(Transform3Dd 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(VelocityScrew6Dd obj)
-
delete
public void delete()
-
linear
public Vector3Dd linear()
Extracts the linear velocity
- Returns:
- the linear velocity
-
angular
public EAAd 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 VelocityScrew6Dd addAssign(VelocityScrew6Dd 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 VelocityScrew6Dd subtractAssign(VelocityScrew6Dd 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 VelocityScrew6Dd 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(VelocityScrew6Dd 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(VelocityScrew6Dd 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 VelocityScrew6Dd multiply(double s)
Scales velocity screw and returns scaled version- Parameters:
s- [in] scaling value- Returns:
- Scales screw
-
add
public VelocityScrew6Dd add(VelocityScrew6Dd 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 VelocityScrew6Dd subtract(VelocityScrew6Dd 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
-
-