Package org.robwork.sdurw_math
Class VelocityScrew6Dd
- java.lang.Object
-
- org.robwork.sdurw_math.VelocityScrew6Dd
-
public class VelocityScrew6Dd 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 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 VelocityScrew6Dd
add(VelocityScrew6Dd screw2)
Adds two velocity screws together \mathbf{\nu}_{12}=\mathbf{\nu}_1+\mathbf{\nu}_2
VelocityScrew6Dd
addAssign(VelocityScrew6Dd screw)
Adds the velocity screw given as a parameter to the velocity screw.
EAAd
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(VelocityScrew6Dd 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(VelocityScrew6Dd obj)
Vector3Dd
linear()
Extracts the linear velocity
VelocityScrew6Dd
multiply(double s)
Scales velocity screw and returns scaled versionVelocityScrew6Dd
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(VelocityScrew6Dd 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 vectorVelocityScrew6Dd
subtract(VelocityScrew6Dd screw2)
Subtracts two velocity screws
\mathbf{\nu}_{12}=\mathbf{\nu}_1-\mathbf{\nu}_2
VelocityScrew6Dd
subtractAssign(VelocityScrew6Dd screw)
Subtracts the velocity screw given as a parameter from the
velocity screw.
java.lang.String
toString()
-
-
-
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:
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
-
-