Added eval filter.
This commit is contained in:
parent
390ccb2278
commit
7648f5e353
@ -23,6 +23,7 @@
|
||||
<script type="text/javascript" src="scripts/modules/filter.js"></script>
|
||||
<script type="text/javascript" src="scripts/modules/filter.saturation.js"></script>
|
||||
<script type="text/javascript" src="scripts/modules/filter.chromatic.js"></script>
|
||||
<script type="text/javascript" src="scripts/modules/filter.eval.js"></script>
|
||||
|
||||
<script type="text/javascript" src="scripts/keyboard.js"></script>
|
||||
<script type="text/javascript" src="scripts/command.js"></script>
|
||||
|
@ -6,6 +6,7 @@ function Command(content)
|
||||
|
||||
function raster(array) // @ {50w}x100
|
||||
{
|
||||
return array;
|
||||
var str = array.join(" ");
|
||||
|
||||
var m = str.replace(/(\{(.*)\})/g, function(a) {
|
||||
|
27
scripts/modules/filter.eval.js
Normal file
27
scripts/modules/filter.eval.js
Normal file
@ -0,0 +1,27 @@
|
||||
Filter.prototype.filter_eval = function(pixels = this.pixels(),p = null)
|
||||
{
|
||||
console.log("working");
|
||||
|
||||
// : eval {x} % 100 == 0
|
||||
|
||||
var data = pixels.data;
|
||||
|
||||
for (var i = 0; i < data.length; i += 4) {
|
||||
|
||||
var x = (i/4) % pixels.width;
|
||||
var y = Math.floor((i/4)/pixels.width);
|
||||
|
||||
var q = (x % parseInt(p[0]) === 0 && y % parseInt(p[1]) === 0);
|
||||
|
||||
if(q === true){
|
||||
data[i] = 255; // red
|
||||
data[i + 1] = 0; // green
|
||||
data[i + 2] = 0; // blue
|
||||
data[i + 3] = 255; // alpha?
|
||||
}
|
||||
}
|
||||
|
||||
ronin.canvas.clear();
|
||||
ronin.canvas.context().putImageData(pixels, 0, 0, 0, 0, pixels.width, pixels.height);
|
||||
console.log("done.");
|
||||
}
|
@ -19,6 +19,9 @@ function Filter(element)
|
||||
case "chromatic":
|
||||
this.filter_chromatic(this.pixels(),p);
|
||||
break;
|
||||
case "eval":
|
||||
this.filter_eval(this.pixels(),p);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user