23 #include <KLocalizedString>    29 static double rect(
double param)
    31     double div = param / (2 * M_PI);
    32     param = param - (floor(div) * (2 * M_PI));
    33     if (param > M_PI) 
return -1;
    38 static double sin2(
double param)
    40     double y = sin(param);
    45 static double sin3(
double param)
    47     double y = sin(param);
    52 static double saw(
double param)
    54     double div = param / (2 * M_PI);
    55     param -= (floor(div) * (2 * M_PI));
    64     double div = param / (2 * M_PI);
    65     param -= (floor(div) * (2 * M_PI));
    66     param = 2 * M_PI - param;
    73 static double tri(
double param)
    76     double div = param / (2 * M_PI);
    77     param -= (floor(div) * (2 * M_PI));
    78     if (param > M_PI) 
return (((param -M_PI) / M_PI)*2)-1;
    79     return (((M_PI -param) / M_PI)*2)-1;
    94     append(0, &sin,    
_(
"sinus"),            
_(I18N_NOOP(
"Sinus")));
    95     append(1, &
rect,   
_(
"rectangular"),      
_(I18N_NOOP(
"Rectangular")));
    96     append(2, &
saw,    
_(
"sawtooth"),         
_(I18N_NOOP(
"Sawtooth")));
    97     append(3, &
sawinv, 
_(
"inverse_sawtooth"), 
_(I18N_NOOP(
"Inverse Sawtooth")));
    98     append(4, &
tri,    
_(
"triangular"),       
_(I18N_NOOP(
"Triangular")));
    99     append(5, &
sin2,   
_(
"square_sinus"),     
_(I18N_NOOP(
"Square Sinus")));
   100     append(6, &
sin3,   
_(
"cubic_sinus"),      
_(I18N_NOOP(
"Cubic Sinus")));
   123     unsigned int index)
 const   130     if (!f) 
return *(&
zero);
 
double() periodic_function_t(double)
unsigned int count() const
DATA data(IDX type) const
static double sawinv(double param)
periodic_function_t & function(unsigned int index) const
static double tri(double param)
unsigned int count() const
virtual void append(unsigned int index, periodic_function_t * data, const QString &name, const QString &description)
virtual void fill() Q_DECL_OVERRIDE
FunctionTypesMap m_functions_map
static double saw(double param)
static double sin2(double param)
static double sin3(double param)
QString name(IDX type) const
static double zero(double)
static double rect(double param)
QString name(unsigned int index)