From 87bf47eefdc0805c86501618e9548a76aa6c6a38 Mon Sep 17 00:00:00 2001 From: Syntriax Date: Wed, 24 Jan 2024 12:22:04 +0300 Subject: [PATCH] feat: Math --- Engine.Core/Math.cs | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 Engine.Core/Math.cs diff --git a/Engine.Core/Math.cs b/Engine.Core/Math.cs new file mode 100644 index 0000000..c77c5d6 --- /dev/null +++ b/Engine.Core/Math.cs @@ -0,0 +1,31 @@ +using System; + +namespace Syntriax.Engine.Core; + +public static class Math +{ + public const float RadianToDegree = 57.29577866666166f; + public const float DegreeToRadian = 0.01745329277777778f; + + public const float E = 2.718281828459045f; + public const float PI = 3.1415926535897932f; + public const float Tau = 6.283185307179586f; + + public static float Abs(float x) => MathF.Abs(x); + public static float Acos(float x) => MathF.Acos(x); + public static float Asin(float x) => MathF.Asin(x); + public static float Atan2(float y, float x) => MathF.Atan2(y, x); + public static float Atanh(float x) => MathF.Atanh(x); + public static float Ceiling(float x) => MathF.Ceiling(x); + public static float CopySign(float x, float y) => MathF.CopySign(x, y); + public static float Floor(float x) => MathF.Floor(x); + public static float IEEERemainder(float x, float y) => MathF.IEEERemainder(x, y); + public static float Log(float x, float y) => MathF.Log(x, y); + public static float Max(float x, float y) => MathF.Max(x, y); + public static float MaxMagnitude(float x, float y) => MathF.MaxMagnitude(x, y); + public static float Min(float x, float y) => MathF.Min(x, y); + public static float MinMagnitude(float x, float y) => MathF.MinMagnitude(x, y); + public static float Pow(float x, float y) => MathF.Pow(x, y); + public static float Round(float x, int digits, MidpointRounding mode) => MathF.Round(x, digits, mode); + public static float Truncate(float x) => MathF.Truncate(x); +}