Beispiel #1
0
        public static Vector2 Rotate(Vector2 p, Vector2 origin, double degrees)
        {
            var theta = degrees * DegToRad;
            var x     = Math.Cos(theta) * (p.X - origin.X) - Math.Sin(theta) * (p.Y - origin.Y) + origin.X;
            var y     = Math.Sin(theta) * (p.X - origin.X) + Math.Cos(theta) * (p.Y - origin.Y) + origin.Y;

            return(new Vector2((float)x, (float)y));
        }
Beispiel #2
0
 public static Vector2 FlipX(Vector2 p, Vector2 origin)
 {
     return(new Vector2(origin.X - (p.X - origin.X), p.Y));
 }