Package net.minecraft.util.math
Class MatrixUtil
java.lang.Object
net.minecraft.util.math.MatrixUtil
- Mappings:
Namespace Name official fintermediary net/minecraft/class_7837named net/minecraft/util/math/MatrixUtil
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static voidapplyJacobiIteration(Matrix3f AtA, Matrix3f matrix3f, Quaternionf quaternionf, Quaternionf quaternionf2) static QuaternionfapplyJacobiIterations(Matrix3f AtA, int numJacobiIterations) private static GivensPairapproximateGivensQuaternion(float a11, float a12, float a22) Computes the approximate Givens rotation factors(c, s) = (cos(phi), sin(phi))for a 2×2 matrix.private static voidStores A′XA into X, clobbering A.private static GivensPairqrGivensQuaternion(float a1, float a2) Computes the Givens quaternion for a QR factorization.static Matrix4fstatic Triple<Quaternionf,Vector3f, Quaternionf> Performs an approximate singular value decomposition on a 3×3 matrix.
-
Field Details
-
COT_PI_OVER_8
private static final float COT_PI_OVER_8- Mappings:
Namespace Name Mixin selector official aLf;a:Fintermediary field_40746Lnet/minecraft/class_7837;field_40746:Fnamed COT_PI_OVER_8Lnet/minecraft/util/math/MatrixUtil;COT_PI_OVER_8:F
-
SIN_COS_PI_OVER_8
- Mappings:
Namespace Name Mixin selector official bLf;b:Le;intermediary field_43146Lnet/minecraft/class_7837;field_43146:Lnet/minecraft/class_8218;named SIN_COS_PI_OVER_8Lnet/minecraft/util/math/MatrixUtil;SIN_COS_PI_OVER_8:Lnet/minecraft/util/math/GivensPair;
-
-
Constructor Details
-
MatrixUtil
private MatrixUtil()
-
-
Method Details
-
scale
- Mappings:
Namespace Name Mixin selector official aLf;a(Lorg/joml/Matrix4f;F)Lorg/joml/Matrix4f;intermediary method_46414Lnet/minecraft/class_7837;method_46414(Lorg/joml/Matrix4f;F)Lorg/joml/Matrix4f;named scaleLnet/minecraft/util/math/MatrixUtil;scale(Lorg/joml/Matrix4f;F)Lorg/joml/Matrix4f;
-
approximateGivensQuaternion
Computes the approximate Givens rotation factors(c, s) = (cos(phi), sin(phi))for a 2×2 matrix. See Algorithm 4 of https://pages.cs.wisc.edu/~sifakis/papers/SVD_TR1690.pdf.- Parameters:
a11- the top-left element of the matrixa12- the average of the two elements on the minor diagonala22- the bottom-right element of the matrix- Mappings:
Namespace Name Mixin selector official aLf;a(FFF)Le;intermediary method_46411Lnet/minecraft/class_7837;method_46411(FFF)Lnet/minecraft/class_8218;named approximateGivensQuaternionLnet/minecraft/util/math/MatrixUtil;approximateGivensQuaternion(FFF)Lnet/minecraft/util/math/GivensPair;
-
qrGivensQuaternion
Computes the Givens quaternion for a QR factorization. See Algorithm 4 of https://pages.cs.wisc.edu/~sifakis/papers/SVD_TR1690.pdf.- Mappings:
Namespace Name Mixin selector official aLf;a(FF)Le;intermediary method_46410Lnet/minecraft/class_7837;method_46410(FF)Lnet/minecraft/class_8218;named qrGivensQuaternionLnet/minecraft/util/math/MatrixUtil;qrGivensQuaternion(FF)Lnet/minecraft/util/math/GivensPair;
-
conjugate
Stores A′XA into X, clobbering A.- Mappings:
Namespace Name Mixin selector official aLf;a(Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;)Vintermediary method_49742Lnet/minecraft/class_7837;method_49742(Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;)Vnamed conjugateLnet/minecraft/util/math/MatrixUtil;conjugate(Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;)V
-
applyJacobiIteration
private static void applyJacobiIteration(Matrix3f AtA, Matrix3f matrix3f, Quaternionf quaternionf, Quaternionf quaternionf2) - Mappings:
Namespace Name Mixin selector official aLf;a(Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;)Vintermediary method_46415Lnet/minecraft/class_7837;method_46415(Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;)Vnamed applyJacobiIterationLnet/minecraft/util/math/MatrixUtil;applyJacobiIteration(Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;)V
-
applyJacobiIterations
- Mappings:
Namespace Name Mixin selector official aLf;a(Lorg/joml/Matrix3f;I)Lorg/joml/Quaternionf;intermediary method_49741Lnet/minecraft/class_7837;method_49741(Lorg/joml/Matrix3f;I)Lorg/joml/Quaternionf;named applyJacobiIterationsLnet/minecraft/util/math/MatrixUtil;applyJacobiIterations(Lorg/joml/Matrix3f;I)Lorg/joml/Quaternionf;
-
svdDecompose
Performs an approximate singular value decomposition on a 3×3 matrix. See Algorithm 4 of https://pages.cs.wisc.edu/~sifakis/papers/SVD_TR1690.pdf.- Mappings:
Namespace Name Mixin selector official aLf;a(Lorg/joml/Matrix3f;)Lorg/apache/commons/lang3/tuple/Triple;intermediary method_46412Lnet/minecraft/class_7837;method_46412(Lorg/joml/Matrix3f;)Lorg/apache/commons/lang3/tuple/Triple;named svdDecomposeLnet/minecraft/util/math/MatrixUtil;svdDecompose(Lorg/joml/Matrix3f;)Lorg/apache/commons/lang3/tuple/Triple;
-