Package kr.toxicity.model.api.util
Class MathUtil
java.lang.Object
kr.toxicity.model.api.util.MathUtil
Math
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final floatDegrees to packed bytestatic final floatDegrees to radiansstatic final floatFloat comparison epsilon valuestatic final it.unimi.dsi.fastutil.floats.FloatComparatorFloat comparatorstatic final floatFrame epsilon valuestatic final intMinecraft tick millsstatic final floatMultiplier value for convert model size to block sizestatic final floatQuaternion comparison epsilon valuestatic final floatRadians to degreesstatic final floatValid rotation degreestatic final floatSquared vector comparison epsilon value -
Method Summary
Modifier and TypeMethodDescriptionstatic booleancheckValidDegree(float rotation) Checks this float is valid Minecraft degreestatic booleancheckValidDegree(@NotNull Float3 rotation) Checks these floats are valid Minecraft degreestatic doublefma(double a, double b, double c) Executes fused multiply add (a * b + c)static floatfma(float a, float b, float c) Executes fused multiply add (a * b + c)static @NotNull org.joml.Vector3ffma(@NotNull org.joml.Vector3f a, float b, @NotNull org.joml.Vector3f c) Executes fused multiply add (a * b + c)static @NotNull org.joml.Vector3ffma(@NotNull org.joml.Vector3f a, @NotNull org.joml.Vector3f b, @NotNull org.joml.Vector3f c) Executes fused multiply add (a * b + c)static @NotNull Float3identifier(@NotNull Float3 rotation) Creates rotation identifierstatic booleanisNotZero(@NotNull org.joml.Vector3f vector3f) Checks this vector is not zerostatic booleanisSimilar(float a, float b) Checks two floats are similar.static booleanisSimilar(float a, float b, float epsilon) Checks two floats are similar.static booleanisSimilar(@NotNull org.joml.Quaternionf a, @NotNull org.joml.Quaternionf b) Checks two quaternion are similar.static booleanisSimilar(@NotNull org.joml.Quaternionf a, @NotNull org.joml.Quaternionf b, float epsilon) Checks two quaternion are similar.static booleanisSimilar(@NotNull org.joml.Vector3fc a, @NotNull org.joml.Vector3fc b) Checks two vectors are similar.static booleanisSimilar(@NotNull org.joml.Vector3fc a, @NotNull org.joml.Vector3fc b, float epsilon) Checks two vectors are similar.static booleanisZero(@NotNull org.joml.Vector3f vector) Checks this vector is zerostatic intsimilarHashCode(float value) Creates epsilon-based hashcode of given floatstatic @NotNull org.joml.QuaternionftoQuaternion(@NotNull org.joml.Vector3f vector) Converts vector rotation to quaternionstatic @NotNull org.joml.QuaternionftoQuaternion(@NotNull org.joml.Vector3f vector, @NotNull org.joml.Quaternionf dest) Converts vector rotation to quaternionstatic @NotNull org.joml.Vector3ftoXYZEuler(@NotNull org.joml.Vector3f vec) Converts zyx euler to xyz euler
-
Field Details
-
MINECRAFT_TICK_MILLS
public static final int MINECRAFT_TICK_MILLSMinecraft tick mills- See Also:
-
ROTATION_DEGREE
public static final float ROTATION_DEGREEValid rotation degree- See Also:
-
DEGREES_TO_RADIANS
public static final float DEGREES_TO_RADIANSDegrees to radians- See Also:
-
RADIANS_TO_DEGREES
public static final float RADIANS_TO_DEGREESRadians to degrees- See Also:
-
DEGREES_TO_PACKED_BYTE
public static final float DEGREES_TO_PACKED_BYTEDegrees to packed byte- See Also:
-
MODEL_TO_BLOCK_MULTIPLIER
public static final float MODEL_TO_BLOCK_MULTIPLIERMultiplier value for convert model size to block size- See Also:
-
FRAME_EPSILON
public static final float FRAME_EPSILONFrame epsilon value- See Also:
-
FLOAT_COMPARISON_EPSILON
public static final float FLOAT_COMPARISON_EPSILONFloat comparison epsilon value- See Also:
-
VECTOR_COMPARISON_EPSILON_SQ
public static final float VECTOR_COMPARISON_EPSILON_SQSquared vector comparison epsilon value- See Also:
-
QUATERNION_COMPARISON_EPSILON
public static final float QUATERNION_COMPARISON_EPSILONQuaternion comparison epsilon value- See Also:
-
FRAME_COMPARATOR
public static final it.unimi.dsi.fastutil.floats.FloatComparator FRAME_COMPARATORFloat comparator
-
-
Method Details
-
isSimilar
public static boolean isSimilar(float a, float b) Checks two floats are similar.- Parameters:
a- ab- b- Returns:
- similar or not
-
isSimilar
public static boolean isSimilar(float a, float b, float epsilon) Checks two floats are similar.- Parameters:
a- ab- bepsilon- epsilon- Returns:
- similar or not
-
isSimilar
public static boolean isSimilar(@NotNull @NotNull org.joml.Vector3fc a, @NotNull @NotNull org.joml.Vector3fc b) Checks two vectors are similar.- Parameters:
a- ab- b- Returns:
- similar or not
-
isSimilar
public static boolean isSimilar(@NotNull @NotNull org.joml.Vector3fc a, @NotNull @NotNull org.joml.Vector3fc b, float epsilon) Checks two vectors are similar.- Parameters:
a- ab- bepsilon- epsilon- Returns:
- similar or not
-
isSimilar
public static boolean isSimilar(@NotNull @NotNull org.joml.Quaternionf a, @NotNull @NotNull org.joml.Quaternionf b) Checks two quaternion are similar.- Parameters:
a- ab- b- Returns:
- similar or not
-
isSimilar
public static boolean isSimilar(@NotNull @NotNull org.joml.Quaternionf a, @NotNull @NotNull org.joml.Quaternionf b, float epsilon) Checks two quaternion are similar.- Parameters:
a- ab- bepsilon- epsilon- Returns:
- similar or not
-
similarHashCode
public static int similarHashCode(float value) Creates epsilon-based hashcode of given float- Parameters:
value- value- Returns:
- hashcode
-
checkValidDegree
Checks these floats are valid Minecraft degree- Parameters:
rotation- rotation- Returns:
- is valid
-
checkValidDegree
public static boolean checkValidDegree(float rotation) Checks this float is valid Minecraft degree- Parameters:
rotation- rotation- Returns:
- is valid
-
identifier
Creates rotation identifier- Parameters:
rotation- rotation- Returns:
- identifier
-
toQuaternion
@NotNull public static @NotNull org.joml.Quaternionf toQuaternion(@NotNull @NotNull org.joml.Vector3f vector) Converts vector rotation to quaternion- Parameters:
vector- vector- Returns:
- rotation
-
toQuaternion
@NotNull public static @NotNull org.joml.Quaternionf toQuaternion(@NotNull @NotNull org.joml.Vector3f vector, @NotNull @NotNull org.joml.Quaternionf dest) Converts vector rotation to quaternion- Parameters:
vector- vectordest- destination quaternion- Returns:
- rotation
-
toXYZEuler
@NotNull public static @NotNull org.joml.Vector3f toXYZEuler(@NotNull @NotNull org.joml.Vector3f vec) Converts zyx euler to xyz euler- Parameters:
vec- zyx euler- Returns:
- xyz euler
-
fma
@NotNull public static @NotNull org.joml.Vector3f fma(@NotNull @NotNull org.joml.Vector3f a, @NotNull @NotNull org.joml.Vector3f b, @NotNull @NotNull org.joml.Vector3f c) Executes fused multiply add (a * b + c)- Parameters:
a- a vectorb- b vectorc- c vector- Returns:
- added a
-
fma
@NotNull public static @NotNull org.joml.Vector3f fma(@NotNull @NotNull org.joml.Vector3f a, float b, @NotNull @NotNull org.joml.Vector3f c) Executes fused multiply add (a * b + c)- Parameters:
a- a vectorb- b scalac- c vector- Returns:
- added a
-
fma
public static float fma(float a, float b, float c) Executes fused multiply add (a * b + c)- Parameters:
a- ab- bc- c- Returns:
- a * b + c
-
fma
public static double fma(double a, double b, double c) Executes fused multiply add (a * b + c)- Parameters:
a- ab- bc- c- Returns:
- a * b + c
-
isNotZero
public static boolean isNotZero(@NotNull @NotNull org.joml.Vector3f vector3f) Checks this vector is not zero- Parameters:
vector3f- vector- Returns:
- is not zero
-
isZero
public static boolean isZero(@NotNull @NotNull org.joml.Vector3f vector) Checks this vector is zero- Parameters:
vector- vector- Returns:
- is zero
-