public static double Defuzzificate(KindOfDefuzzification kindOfDefuzzification, double a, double b, Func <double, double> fun) { switch (kindOfDefuzzification) { case KindOfDefuzzification.CoG: return(DefuzzificateByCoG(a, b, fun)); default: throw new ArgumentOutOfRangeException(nameof(kindOfDefuzzification), kindOfDefuzzification, null); } }
protected BaseFuzzyLogicMemberFunctionHandler(KindOfDefuzzification kindOfDefuzzification, double a, double b) { _kindOfDefuzzification = kindOfDefuzzification; _a = a; _b = b; }