Class SpecialEuclideanOps_F32

java.lang.Object
georegression.struct.se.SpecialEuclideanOps_F32

@Generated("georegression.struct.se.SpecialEuclideanOps_F64") public class SpecialEuclideanOps_F32 extends Object
Various operations related to SpecialEuclidean transformations.
  • Constructor Details

    • SpecialEuclideanOps_F32

      public SpecialEuclideanOps_F32()
  • Method Details

    • setToNoMotion

      public static void setToNoMotion(Se3_F32 se)
      Sets the provided transform so that it does not transform any points.
      Parameters:
      se - The transform which is to be set to no motion.
    • toAffine

      public static Affine2D_F32 toAffine(Se2_F32 se, @Nullable @Nullable Affine2D_F32 affine)
      Converts Se2_F32 into Affine2D_F32.
      Parameters:
      se - (Input) Se2
      affine - (Output) Equivalent affine. If null a new object will be declared.
      Returns:
      Equivalent affine.
    • toHomogeneous

      public static org.ejml.data.FMatrixRMaj toHomogeneous(Se3_F32 se, @Nullable @Nullable org.ejml.data.FMatrixRMaj ret)
      Converts it into a 4 by 4 homogeneous matrix.
      Parameters:
      se - original 3D transform
      ret - Where the results will be written to. If null a new matrix is declared. Modified.
      Returns:
      equivalent homogeneous transform.
    • toSe3

      public static Se3_F32 toSe3(org.ejml.data.FMatrixRMaj H, @Nullable @Nullable Se3_F32 ret)
      Converts a homogeneous representation into Se3_F32.
      Parameters:
      H - Homogeneous 4 by 4 matrix.
      ret - If not null where the results are written to.
      Returns:
      Se3_F32 transform.
    • toHomogeneous

      public static org.ejml.data.FMatrixRMaj toHomogeneous(Se2_F32 se, @Nullable @Nullable org.ejml.data.FMatrixRMaj ret)
      Converts it into a 3 by 3 homogeneous matrix.
      Parameters:
      se - original 2D transform
      ret - Where the results will be written to. If null a new matrix is declared. Modified.
      Returns:
      equivalent homogeneous transform.
    • toSe2

      public static Se2_F32 toSe2(org.ejml.data.FMatrixRMaj H, @Nullable @Nullable Se2_F32 ret)
      Converts a homogeneous representation into Se2_F32.
      Parameters:
      H - Homogeneous 3 by 3 matrix.
      ret - If not null where the results are written to.
      Returns:
      Se3_F32 transform.
    • eulerXyz

      public static Se3_F32 eulerXyz(float dx, float dy, float dz, float rotX, float rotY, float rotZ, @Nullable @Nullable Se3_F32 se)
      Sets the value of an Se3_F32 using Euler XYZ coordinates for the rotation and a translation vector.
      Parameters:
      dx - Translation along x-axis.
      dy - Translation along y-axis.
      dz - Translation along z-axis.
      rotX - Rotation around X axis.
      rotY - Rotation around Y axis.
      rotZ - Rotation around Z axis.
      se - If not null then the transform is written here.
      Returns:
      The transform.
    • eulerXyz

      public static Se3_F32 eulerXyz(float dx, float dy, float dz, EulerType type, float rotX, float rotY, float rotZ, @Nullable @Nullable Se3_F32 se)
    • axisXyz

      public static Se3_F32 axisXyz(float dx, float dy, float dz, float rotX, float rotY, float rotZ, @Nullable @Nullable Se3_F32 se)
      Create SE3 using axis-angle for rotation and XYZ tanslation
      Parameters:
      dx - Translation along x-axis.
      dy - Translation along y-axis.
      dz - Translation along z-axis.
      rotX - x-axis component
      rotY - y-axis component
      rotZ - z-axis component
      se - If not null then the transform is written here.
      Returns:
      The transform.
    • quatXyz

      public static Se3_F32 quatXyz(float dx, float dy, float dz, float qw, float qx, float qy, float qz, @Nullable @Nullable Se3_F32 se)
    • isIdentical

      public static boolean isIdentical(Se3_F32 a, Se3_F32 b, float tolT, float tolR)
      Can be used to see if two transforms are identical to within tolerance
      Parameters:
      a - transform
      b - tranform
      tolT - Tolerance for translation
      tolR - Tolerance for rotation in radians
      Returns:
      true if identical or false if not
    • bestFit

      public static boolean bestFit(Se3_F32 a)
      Finds the best fit projection of 'a' onto SE(3). This is useful when a was estimated using a linear algorithm.

      See page 280 of "An Invitation to 3-D Vision, From Images to Geometric Models" 1st Ed. 2004. Springer.

      Parameters:
      a - Approximate SE(3). Modified.
      Returns:
      true if successful