public float Angle360() { var vec = this.Normalize(); float value = ((float)Math.Atan2(-vec.Y, vec.X)) % MathUtilities.Pi2; return (value < 0) ? ((MathUtilities.Pi+value)+MathUtilities.Pi) : value; }