枚举类 RotationConvention

java.lang.Object
java.lang.Enum<RotationConvention>
org.hipparchus.geometry.euclidean.threed.RotationConvention
所有已实现的接口:
Serializable, Comparable<RotationConvention>, Constable

public enum RotationConvention extends Enum<RotationConvention>
该枚举用于区分旋转的语义。
另请参阅:
  • 枚举常量详细资料

    • VECTOR_OPERATOR

      public static final RotationConvention VECTOR_OPERATOR
      具有向量操作符语义的旋转的常量。

      根据此约定,旋转会移动相对于固定参考框架的向量。

      这意味着,如果我们定义旋转r是绕Z轴旋转90度,则向量Vector3D.PLUS_I的图像将是Vector3D.PLUS_J,向量Vector3D.PLUS_J的图像将是Vector3D.MINUS_I,向量Vector3D.PLUS_K的图像将是Vector3D.PLUS_K,坐标为(1, 2, 3)的向量的图像将是(-2, 1, 3)。这意味着向量逆时针旋转。

      此约定是Hipparchus在3.5版本之前唯一支持的约定。

      FRAME_TRANSFORM的区别仅在于角度符号的语义。始终可以创建或使用旋转,使用任一约定来真正表示最好使用另一约定创建或使用的旋转,方法是相应地更改旋转角度的符号。这就是3.5版本之前的做法。

    • FRAME_TRANSFORM

      public static final RotationConvention FRAME_TRANSFORM
      具有框架转换语义的旋转的常量。

      根据此约定,旋转将向量视为固定,但它们的坐标会随着从初始框架转换为相对于初始框架旋转的目标框架而改变。

      这意味着,如果我们定义旋转r是绕Z轴旋转90度,则向量Vector3D.PLUS_I的图像将是Vector3D.MINUS_J,向量Vector3D.PLUS_J的图像将是Vector3D.PLUS_I,向量Vector3D.PLUS_K的图像将是Vector3D.PLUS_K,坐标为(1, 2, 3)的向量的图像将是(2, -1, 3)。这意味着向量的坐标顺时针旋转,因为它们是相对于逆时针旋转的目标框架表示的。

      VECTOR_OPERATOR的区别仅在于角度符号的语义。始终可以创建或使用旋转,使用任一约定来真正表示最好使用另一约定创建或使用的旋转,方法是相应地更改旋转角度的符号。这就是3.5版本之前的做法。

  • 方法详细资料

    • values

      public static RotationConvention[] values()
      返回包含该枚举类的常量的数组,顺序与声明这些常量的顺序相同。
      返回:
      包含该枚举类的常量的数组,顺序与声明这些常量的顺序相同
    • valueOf

      public static RotationConvention valueOf(String name)
      返回带有指定名称的该类的枚举常量。 字符串必须与用于声明该类的枚举常量的标识符完全匹配。(不允许有多余的空格字符。)
      参数:
      name - 要返回的枚举常量的名称。
      返回:
      返回带有指定名称的枚举常量
      抛出:
      IllegalArgumentException - 如果该枚举类没有带有指定名称的常量
      NullPointerException - 如果参数为空值