Jump to content

belov

ED Team
  • Content Count

    10
  • Joined

  • Last visited

About belov

  • Rank
    Staff
  1. Короче, вот код, разбирайтесь сами :) Простой фильтр - интерполятор экспонентой double SimpleFilter::doGetCurveValue(double d) const { // d должно быть в диапазоне [0, 1] if(getDeadzoneX() >= d) return 0; if(getSaturationX() <= d) return getSaturationY(); d = (d - getDeadzoneX()) / (getSaturationX() - getDeadzoneX()); const double curvature = getCurvature().front(); if(0.0 != curvature) d = (exp(10.0 * curvature * d) - 1.0) / (exp(10.0 * curvature) - 1.0); return d * (getSaturationY() - getDeadzoneY()) + getDeadzoneY(); } Вот интерполято
×
×
  • Create New...