类 AffineTransformation


  • public final class AffineTransformation
    extends Object
    An affine transformation is a decomposition of a 4×4 real matrix into a rotation quaternion, a scale 3-vector, a second rotation quaternion, and a translation 3-vector. It is also known as "TRSR" transformation, meaning "translation rotation scale rotation".

    This class is immutable; its matrix is lazily decomposed upon demand.

    Mappings:
    Namespace Name
    official i
    intermediary net/minecraft/class_4590
    named net/minecraft/util/math/AffineTransformation
    • 字段详细资料

      • IDENTITY

        private static final AffineTransformation IDENTITY
        Mappings:
        Namespace Name Mixin selector
        official g Li;g:Li;
        intermediary field_20906 Lnet/minecraft/class_4590;field_20906:Lnet/minecraft/class_4590;
        named IDENTITY Lnet/minecraft/util/math/AffineTransformation;IDENTITY:Lnet/minecraft/util/math/AffineTransformation;
      • matrix

        private final Matrix4f matrix
        Mappings:
        Namespace Name Mixin selector
        official a Li;a:Ld;
        intermediary field_20900 Lnet/minecraft/class_4590;field_20900:Lnet/minecraft/class_1159;
        named matrix Lnet/minecraft/util/math/AffineTransformation;matrix:Lnet/minecraft/util/math/Matrix4f;
      • initialized

        private boolean initialized
        Mappings:
        Namespace Name Mixin selector
        official b Li;b:Z
        intermediary field_20901 Lnet/minecraft/class_4590;field_20901:Z
        named initialized Lnet/minecraft/util/math/AffineTransformation;initialized:Z
      • translation

        @Nullable
        private @Nullable Vec3f translation
        Mappings:
        Namespace Name Mixin selector
        official c Li;c:Lk;
        intermediary field_20902 Lnet/minecraft/class_4590;field_20902:Lnet/minecraft/class_1160;
        named translation Lnet/minecraft/util/math/AffineTransformation;translation:Lnet/minecraft/util/math/Vec3f;
      • rotation2

        @Nullable
        private @Nullable Quaternion rotation2
        Mappings:
        Namespace Name Mixin selector
        official d Li;d:Lg;
        intermediary field_20903 Lnet/minecraft/class_4590;field_20903:Lnet/minecraft/class_1158;
        named rotation2 Lnet/minecraft/util/math/AffineTransformation;rotation2:Lnet/minecraft/util/math/Quaternion;
      • scale

        @Nullable
        private @Nullable Vec3f scale
        Mappings:
        Namespace Name Mixin selector
        official e Li;e:Lk;
        intermediary field_20904 Lnet/minecraft/class_4590;field_20904:Lnet/minecraft/class_1160;
        named scale Lnet/minecraft/util/math/AffineTransformation;scale:Lnet/minecraft/util/math/Vec3f;
      • rotation1

        @Nullable
        private @Nullable Quaternion rotation1
        Mappings:
        Namespace Name Mixin selector
        official f Li;f:Lg;
        intermediary field_20905 Lnet/minecraft/class_4590;field_20905:Lnet/minecraft/class_1158;
        named rotation1 Lnet/minecraft/util/math/AffineTransformation;rotation1:Lnet/minecraft/util/math/Quaternion;
    • 构造器详细资料

      • AffineTransformation

        public AffineTransformation​(@Nullable
                                    @Nullable Matrix4f matrix)
        Mappings:
        Namespace Name Mixin selector
        official <init> Li;<init>(Ld;)V
        intermediary <init> Lnet/minecraft/class_4590;<init>(Lnet/minecraft/class_1159;)V
        named <init> Lnet/minecraft/util/math/AffineTransformation;<init>(Lnet/minecraft/util/math/Matrix4f;)V
      • AffineTransformation

        public AffineTransformation​(@Nullable
                                    @Nullable Vec3f translation,
                                    @Nullable
                                    @Nullable Quaternion rotation2,
                                    @Nullable
                                    @Nullable Vec3f scale,
                                    @Nullable
                                    @Nullable Quaternion rotation1)
        Mappings:
        Namespace Name Mixin selector
        official <init> Li;<init>(Lk;Lg;Lk;Lg;)V
        intermediary <init> Lnet/minecraft/class_4590;<init>(Lnet/minecraft/class_1160;Lnet/minecraft/class_1158;Lnet/minecraft/class_1160;Lnet/minecraft/class_1158;)V
        named <init> Lnet/minecraft/util/math/AffineTransformation;<init>(Lnet/minecraft/util/math/Vec3f;Lnet/minecraft/util/math/Quaternion;Lnet/minecraft/util/math/Vec3f;Lnet/minecraft/util/math/Quaternion;)V
    • 方法详细资料

      • identity

        public static AffineTransformation identity()
        Mappings:
        Namespace Name Mixin selector
        official a Li;a()Li;
        intermediary method_22931 Lnet/minecraft/class_4590;method_22931()Lnet/minecraft/class_4590;
        named identity Lnet/minecraft/util/math/AffineTransformation;identity()Lnet/minecraft/util/math/AffineTransformation;
      • multiply

        public AffineTransformation multiply​(AffineTransformation other)
        Mappings:
        Namespace Name Mixin selector
        official a Li;a(Li;)Li;
        intermediary method_22933 Lnet/minecraft/class_4590;method_22933(Lnet/minecraft/class_4590;)Lnet/minecraft/class_4590;
        named multiply Lnet/minecraft/util/math/AffineTransformation;multiply(Lnet/minecraft/util/math/AffineTransformation;)Lnet/minecraft/util/math/AffineTransformation;
      • invert

        @Nullable
        public @Nullable AffineTransformation invert()
        Mappings:
        Namespace Name Mixin selector
        official b Li;b()Li;
        intermediary method_22935 Lnet/minecraft/class_4590;method_22935()Lnet/minecraft/class_4590;
        named invert Lnet/minecraft/util/math/AffineTransformation;invert()Lnet/minecraft/util/math/AffineTransformation;
      • init

        private void init()
        Mappings:
        Namespace Name Mixin selector
        official h Li;h()V
        intermediary method_22938 Lnet/minecraft/class_4590;method_22938()V
        named init Lnet/minecraft/util/math/AffineTransformation;init()V
      • setup

        private static Matrix4f setup​(@Nullable
                                      @Nullable Vec3f translation,
                                      @Nullable
                                      @Nullable Quaternion rotation2,
                                      @Nullable
                                      @Nullable Vec3f scale,
                                      @Nullable
                                      @Nullable Quaternion rotation1)
        Mappings:
        Namespace Name Mixin selector
        official a Li;a(Lk;Lg;Lk;Lg;)Ld;
        intermediary method_22934 Lnet/minecraft/class_4590;method_22934(Lnet/minecraft/class_1160;Lnet/minecraft/class_1158;Lnet/minecraft/class_1160;Lnet/minecraft/class_1158;)Lnet/minecraft/class_1159;
        named setup Lnet/minecraft/util/math/AffineTransformation;setup(Lnet/minecraft/util/math/Vec3f;Lnet/minecraft/util/math/Quaternion;Lnet/minecraft/util/math/Vec3f;Lnet/minecraft/util/math/Quaternion;)Lnet/minecraft/util/math/Matrix4f;
      • getLinearTransformationAndTranslationFromAffine

        public static com.mojang.datafixers.util.Pair<Matrix3f,​Vec3f> getLinearTransformationAndTranslationFromAffine​(Matrix4f affineTransform)
        Mappings:
        Namespace Name Mixin selector
        official a Li;a(Ld;)Lcom/mojang/datafixers/util/Pair;
        intermediary method_22932 Lnet/minecraft/class_4590;method_22932(Lnet/minecraft/class_1159;)Lcom/mojang/datafixers/util/Pair;
        named getLinearTransformationAndTranslationFromAffine Lnet/minecraft/util/math/AffineTransformation;getLinearTransformationAndTranslationFromAffine(Lnet/minecraft/util/math/Matrix4f;)Lcom/mojang/datafixers/util/Pair;
      • getMatrix

        public Matrix4f getMatrix()
        Mappings:
        Namespace Name Mixin selector
        official c Li;c()Ld;
        intermediary method_22936 Lnet/minecraft/class_4590;method_22936()Lnet/minecraft/class_1159;
        named getMatrix Lnet/minecraft/util/math/AffineTransformation;getMatrix()Lnet/minecraft/util/math/Matrix4f;
      • getTranslation

        public Vec3f getTranslation()
        Mappings:
        Namespace Name Mixin selector
        official d Li;d()Lk;
        intermediary method_35865 Lnet/minecraft/class_4590;method_35865()Lnet/minecraft/class_1160;
        named getTranslation Lnet/minecraft/util/math/AffineTransformation;getTranslation()Lnet/minecraft/util/math/Vec3f;
      • getRotation2

        public Quaternion getRotation2()
        Mappings:
        Namespace Name Mixin selector
        official e Li;e()Lg;
        intermediary method_22937 Lnet/minecraft/class_4590;method_22937()Lnet/minecraft/class_1158;
        named getRotation2 Lnet/minecraft/util/math/AffineTransformation;getRotation2()Lnet/minecraft/util/math/Quaternion;
      • getScale

        public Vec3f getScale()
        Mappings:
        Namespace Name Mixin selector
        official f Li;f()Lk;
        intermediary method_35866 Lnet/minecraft/class_4590;method_35866()Lnet/minecraft/class_1160;
        named getScale Lnet/minecraft/util/math/AffineTransformation;getScale()Lnet/minecraft/util/math/Vec3f;
      • getRotation1

        public Quaternion getRotation1()
        Mappings:
        Namespace Name Mixin selector
        official g Li;g()Lg;
        intermediary method_35867 Lnet/minecraft/class_4590;method_35867()Lnet/minecraft/class_1158;
        named getRotation1 Lnet/minecraft/util/math/AffineTransformation;getRotation1()Lnet/minecraft/util/math/Quaternion;
      • equals

        public boolean equals​(Object object)
        覆盖:
        equals 在类中 Object
        Mappings:
        Namespace Name Mixin selector
        official equals Li;equals(Ljava/lang/Object;)Z
        intermediary equals Lnet/minecraft/class_4590;equals(Ljava/lang/Object;)Z
        named equals Lnet/minecraft/util/math/AffineTransformation;equals(Ljava/lang/Object;)Z
      • hashCode

        public int hashCode()
        覆盖:
        hashCode 在类中 Object
        Mappings:
        Namespace Name Mixin selector
        official hashCode Li;hashCode()I
        intermediary hashCode Lnet/minecraft/class_4590;hashCode()I
        named hashCode Lnet/minecraft/util/math/AffineTransformation;hashCode()I
      • method_35864

        public AffineTransformation method_35864​(AffineTransformation affineTransformation,
                                                 float float2)
        Mappings:
        Namespace Name Mixin selector
        official a Li;a(Li;F)Li;
        intermediary method_35864 Lnet/minecraft/class_4590;method_35864(Lnet/minecraft/class_4590;F)Lnet/minecraft/class_4590;
        named method_35864 Lnet/minecraft/util/math/AffineTransformation;method_35864(Lnet/minecraft/util/math/AffineTransformation;F)Lnet/minecraft/util/math/AffineTransformation;