aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/SideChains/Colourful/Implementation/Utils/Angle.cs
blob: a50fbe7c55b54463a5a9d216f27c2bce41984ab6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using System;

namespace Colourful.Implementation
{
    /// <summary>
    /// Angle unit conversion helpers
    /// </summary>
    internal static class Angle
    {
        private const double TwoPI = 2 * Math.PI;

        public static double RadianToDegree(double rad)
        {
            var deg = 360 * (rad / TwoPI);
            return deg;
        }

        public static double DegreeToRadian(double deg)
        {
            var rad = TwoPI * (deg / 360d);
            return rad;
        }

        public static double NormalizeDegree(double deg)
        {
            var d = deg % 360d;
            return d >= 0 ? d : d + 360d;
        }
    }
}