From 7f0dc2085bd2cd7df2ddd29df764513bd6235c4f Mon Sep 17 00:00:00 2001 From: Eric Rowell Date: Fri, 3 Jan 2014 23:23:53 -0800 Subject: [PATCH] changed Levels filter to Posterize --- Gruntfile.js | 2 +- src/filters/{Levels.js => Posterize.js} | 70 +++++++++---------- test/runner.html | 2 +- .../{Levels-test.js => Posterize-test.js} | 8 +-- 4 files changed, 41 insertions(+), 41 deletions(-) rename src/filters/{Levels.js => Posterize.js} (65%) rename test/unit/filters/{Levels-test.js => Posterize-test.js} (87%) diff --git a/Gruntfile.js b/Gruntfile.js index c4c9adf0..e415abfa 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -19,7 +19,7 @@ module.exports = function(grunt) { 'src/filters/HSV.js', 'src/filters/ConvolvePack.js', 'src/filters/Enhance.js', - 'src/filters/Levels.js', + 'src/filters/Posterize.js', 'src/filters/Noise.js', 'src/filters/Pixelate.js', 'src/filters/Polar.js', diff --git a/src/filters/Levels.js b/src/filters/Posterize.js similarity index 65% rename from src/filters/Levels.js rename to src/filters/Posterize.js index 7ef0d683..9f985d80 100644 --- a/src/filters/Levels.js +++ b/src/filters/Posterize.js @@ -1,36 +1,36 @@ -(function () { - - /** - * Levels Filter. Adjusts the channels so that there are no more - * than n different values for that channel. This is also applied - * to the alpha channel. - * @function - * @author ippo615 - * @memberof Kinetic.Filters - * @param {Object} imageData - */ - - Kinetic.Filters.Levels = function (imageData) { - // level must be between 1 and 255 - var level = Math.round(this.level() * 254) + 1, - data = imageData.data, - len = data.length, - scale = (255 / level), - i; - - for (i = 0; i < len; i += 1) { - data[i] = Math.floor(data[i] / scale) * scale; - } - }; - - Kinetic.Factory.addFilterGetterSetter(Kinetic.Node, 'level', 0.5); - - /** - * get/set levels. Must be a number between 0 and 1 - * @name level - * @method - * @memberof Kinetic.Node.prototype - * @param {Number} level between 0 and 1 - * @returns {Number} - */ +(function () { + + /** + * Posterize Filter. Adjusts the channels so that there are no more + * than n different values for that channel. This is also applied + * to the alpha channel. + * @function + * @author ippo615 + * @memberof Kinetic.Filters + * @param {Object} imageData + */ + + Kinetic.Filters.Posterize = function (imageData) { + // level must be between 1 and 255 + var levels = Math.round(this.levels() * 254) + 1, + data = imageData.data, + len = data.length, + scale = (255 / levels), + i; + + for (i = 0; i < len; i += 1) { + data[i] = Math.floor(data[i] / scale) * scale; + } + }; + + Kinetic.Factory.addFilterGetterSetter(Kinetic.Node, 'levels', 0.5); + + /** + * get/set levels. Must be a number between 0 and 1 + * @name levels + * @method + * @memberof Kinetic.Node.prototype + * @param {Number} level between 0 and 1 + * @returns {Number} + */ })(); \ No newline at end of file diff --git a/test/runner.html b/test/runner.html index 865c3512..5e2d1abe 100644 --- a/test/runner.html +++ b/test/runner.html @@ -94,7 +94,7 @@ - + diff --git a/test/unit/filters/Levels-test.js b/test/unit/filters/Posterize-test.js similarity index 87% rename from test/unit/filters/Levels-test.js rename to test/unit/filters/Posterize-test.js index 70405adf..ae2b62db 100644 --- a/test/unit/filters/Levels-test.js +++ b/test/unit/filters/Posterize-test.js @@ -1,4 +1,4 @@ -suite('Levels', function () { +suite('Posterize', function () { // ====================================================== test('on image tween', function(done) { @@ -19,14 +19,14 @@ suite('Levels', function () { stage.add(layer); darth.cache(); - darth.filters([Kinetic.Filters.Levels]); - darth.level(0.2); + darth.filters([Kinetic.Filters.Posterize]); + darth.levels(0.2); layer.draw(); var tween = new Kinetic.Tween({ node: darth, duration: 1.0, - level: 0, + levels: 0, easing: Kinetic.Easings.Linear });