Package georegression.transform.twist
Class TwistOps_F32
java.lang.Object
georegression.transform.twist.TwistOps_F32
Operations related to twists.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic Se3_F32
exponential
(TwistCoordinate_F32 twist, float theta, @Nullable Se3_F32 motion) Computes the exponential map for a twist:
exp(hat(xi)*theta) = [ SO , (I-SO)*(w cross v) + w*wTvΘ 0 , 1]
SO = exp(hat(w)*theta)static org.ejml.data.FMatrixRMaj
homogenous
(Se3_F32 transform, @Nullable org.ejml.data.FMatrixRMaj H) Converts theSe3_F32
object into homogenous notation.
[ R , T; 0 , 1]static org.ejml.data.FMatrixRMaj
homogenous
(TwistCoordinate_F32 twist, @Nullable org.ejml.data.FMatrixRMaj H) Converts the twist coordinate into homogenous format.
H = [hat(w), v; 0 , 0]static TwistCoordinate_F32
twist
(Se3_F32 motion, @Nullable TwistCoordinate_F32 twist) Converts a rigid body motion into a twist coordinate.
-
Constructor Details
-
TwistOps_F32
public TwistOps_F32()
-
-
Method Details
-
homogenous
public static org.ejml.data.FMatrixRMaj homogenous(Se3_F32 transform, @Nullable @Nullable org.ejml.data.FMatrixRMaj H) Converts theSe3_F32
object into homogenous notation.
[ R , T; 0 , 1]- Parameters:
transform
- transform in regular SE3 format. If null a new matrix will be declaredH
- (Optional) Storage for homogenous 4x4 matrix. If null a new matrix is declared.- Returns:
- Homogenous matrix
-
homogenous
public static org.ejml.data.FMatrixRMaj homogenous(TwistCoordinate_F32 twist, @Nullable @Nullable org.ejml.data.FMatrixRMaj H) Converts the twist coordinate into homogenous format.
H = [hat(w), v; 0 , 0]- Parameters:
twist
- Twist coordinateH
- (Optional) Storage for homogenous 4x4 matrix. If null a new matrix is declared.- Returns:
- Homogenous matrix
-
exponential
public static Se3_F32 exponential(TwistCoordinate_F32 twist, float theta, @Nullable @Nullable Se3_F32 motion) Computes the exponential map for a twist:
See page 42 in R. Murray, et. al. "A Mathematical Introduction to ROBOTIC MANIPULATION" 1994
exp(hat(xi)*theta) = [ SO , (I-SO)*(w cross v) + w*wTvΘ 0 , 1]
SO = exp(hat(w)*theta)- Parameters:
twist
- Twist coordinatetheta
- Magnitude of rotationmotion
- Storage for SE(3). If null a new instance will be returned.- Returns:
- The transformation.
-
twist
public static TwistCoordinate_F32 twist(Se3_F32 motion, @Nullable @Nullable TwistCoordinate_F32 twist) Converts a rigid body motion into a twist coordinate. The value of theta used to generate the motion is assumed to be one.- Parameters:
motion
- (Input) The SE(3) transformationtwist
- (Output) Storage for twist.- Returns:
- magnitude of the motion
-