Цитата(Legotron @ Dec 24 2007, 01:56)

Если не фильтровать совсем, то получится так: я показываю через 20 мс (к примеру), через 1с значение меняется скачком(тоже возможно) как следствие стрелка переместится скачком, или я неправильно вас понял?
У человеческого глаза имеется инерционность порядка 100мс. Если выводить изображение чаще, чем 18 раз в секунду (в кинематографе, например, кадр меняется 24 раза/сек), то глаз наблюдателя сам "отфильтрует" движение. Нюансы могут возникнуть лишь, если будет присутствовать стробоскопический эффект от внешних источников света с разностной частотой биений ниже указанной.
Для вашего же случая фильтр "скользящее среднее" ИМХО хорошо подходит. Используя скользящее среднее с периодом равным или чуть меньшим, чем поступление входных данных вы как раз получите плавное движение стрелки с текущему значению. Для этого вы должны иммитировать поступление данных в буфер синхронно с обновлением изображения. Допустим, если у вас период обновления 20мс, а данные поступают через 500мс, то можно использовать буфер с периодом 300-400мс. 400мс/20мс=20. Т.е. буфер фильтра на 20 значений. Каждый раз после обновления экрана, если нового отсчета еще нет, то вы иммитируете его, дописывая в буфер фильтра (плавающего среднего) значение последнего отсчета. Если же новый отсчет поступил, то заменяете последний отсчет его текущим значением и дописываете уже его в буфер фильтра.
Если вам не нравится фильтрация типа "простое слользящее среднее", то можете выбрать сами другой тип цифрового фильтра.
http://www.may.nnov.ru/mak/DSP/Contents.shtmlP.S. указанные фильтры являются КИХ-фильтрами. Поэтому для нормальной их работы отсчеты (в вашем случае рефреш экрана) должны быть равномерными.