Не затирающая другие классы и способная начать цикл с имеющегося у элемента класса версия:
function cycleClass(element, list, time) {
var i = -1;
var c = element.classList;
for (var n = 0; n < list.length; n++) {
if (c.contains(list[n])) {
if (i != -1) c.remove(list[i]);
i = n;
}
}
return setInterval(function () {
c.remove(list[i++]);
c.add(list[i %= list.length]);
}, time);
}
Михаил: Справляться в любом случае лучше посредством OpenCV, а откуда вызвать его функции, большого значения не имеет. Для распознавания лиц используется каскад Хаара (habrahabr.ru/post/198338/), это подходит для сложных случаев. С учетом постоянного фона можно и проще сделать, просто вычитать фон из изображения(BackgroundSubtractor), бинаризировать(threshold) и находить самый большой контур(findContours). Размер тушки будет прямо пропорционален его площади(area). Займет это строк 20-30 на ноде.
Михаил: нет, с computer vision дела не имел, просто прочитав вопрос и зная про OpenCV, захотелось поискать, есть ли биндинги под ноду. Вообще, если тушки идут без промежутков, то вряд ли их чётко распознавать получится, а если с промежутком, то, наверное, легче простой фотодиод использовать для подсчета.
vasIvas Для того, чтобы обработчик в роутере срабатывал для маршрута '/path/:id', можно подключить роутер с маршрутом '/path/:id' к приложение по маршруту '/': app.use('/', роутер); или роутер с маршрутом '/:id' к приложению по маршруту '/path': app.use('/path', роутер) - в обоих случаях маршрут один '/path:id'. Даже не знаю, как еще донести мысль, что маршруты просто складываются. Роутеры сделаны просто для удобства, для выноса в отдельные модули, и маршрут, к которому они подключаются, в них не указывается.
Иваныч Марк сделать другое изображение-маску, где стена будет черным цветом, а остальное белым, потом параллельно взять пиксели с помощью getImageData с обоих, и если на маске пиксель черный, то менять цвет соответствующего пикселя на фото
Константин Китманов: Ну мне показалось, что скорее имеется в виду интерактив в процессе выполнения gulp vasIvas: Не думаю, что такая специфическая задача имеет обзепризнаное решение. Быстрое гугление находит gulp-confirm, gulp-repl, gulp-runtime - свежие, но звезд мало.
Плохо использовать кодировку не utf8 :) А такое раскодирование просто имеет ряд недостатков - regexp не самая быстрая часть javascript, нужно достоверно знать, что это именно кодировка cp1251, нет контроля и обработки ошибок.
ruboss: можно попробовать так:
nohup sudo find dir \( -user root -exec chown www-data:www-data {} + \) , \( ! -perm 755 -exec chmod 755 {} + \)
nohup укажет игнорировать потерю соединения
+ по идее должен формировать максимально возможный список файлов в качестве аргументов exec, если не получится, то заменить на \;
jsfiddle.net/pofw0vLw/2