Development Class C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
namespace InfoStrat.VE.Utilities
{
    public static class MathHelper
    {
        public static Vector RotateVector(Vector v, double angle)
        {
            double len = v.Length;
            if (len == 0)
                return v;
            double refAngle = Get2DAngle(v, new Vector(1, 0));
            double dx = len * Math.Cos((refAngle + angle) * Math.PI / 180.0);
            double dy = -len * Math.Sin((refAngle + angle) * Math.PI / 180.0);
            return new Vector(dx, dy);
        }
        public static double Get2DAngle(Vector a, Vector b)
        {
            double cosine = (a.X * b.X + a.Y * b.Y) / (a.Length * b.Length);
            if (cosine > 1)
                cosine = 1;
            else if (cosine < -1)
                cosine = -1;
            if ((a.X * b.Y - a.Y * b.X) < 0)
                return -Math.Acos(cosine) * 180.0 / Math.PI;
            else
                return Math.Acos(cosine) * 180.0 / Math.PI;
        }
        public static double MapValue(double value, double fromMin, double fromMax, double toMin, double toMax)
        {
            //Normalize
            double ret = (value - fromMin) / (fromMax - fromMin);
            //Resize and translate
            return ret * (toMax - toMin) + toMin;
        }
        public static double Clamp(double value, double min, double max)
        {
            double actualMin = Math.Min(min, max);
            double actualMax = Math.Max(min, max);
            return Math.Min(actualMax, Math.Max(actualMin, value));
        }
    }
}