====== ds.crtFilt(type, size) ======
**type** - тип алгоритма фильтрации значений;\\
**size** - размер фильтра;\\
**Возвращает** - объект с набором методов для работы с фильтром.\\
Данная функция создает объект фильтра, который в дальнейшем позволяет обрабатывать входные данные и выдавать значения, отфильтрованные по выбранному алгоритму.
На данный момент поддерживаются следующие типы алгоритмов:\\
**sraf** - среднеарифметический;\\
**median** - медианный;\\
**min** - огибающий по минимальному значению;\\
**max** - огибающий по максимальному значению.
Созданный объект фильтра содержит следующие методы:\\
**add(val)** - добавление очередного значения к фильтруемым данным, при этом метод возвращает отфильтрованное значение;\\
**reset()** - сброс буфера фильтра в исходное состояние.
Пример использования:
// создаем среднеарифметический фильтр с буфером на три значения
let filt = ds.crtFilt('sraf', 3);
// создаем данные, которые пропускаем через фильтр
for (let i = 0; i < 18; i += 3) {
let res = filt.add(i);
log('Исходное значение:', i, ', отфильтрованное:', res);
}
В результате будет выведено в системный журнал следующее:
{{ :ds_crtfilt.png?nolink |}}
где видно, что каждое следующее значение является суммой трех предыдущих, деленых на три, тк используется среднеарифметический фильтр с размером буфера на три значения.
Более подробные примеры предоставлены в статье **[[filt|Работа с фильтрами]]**.