Misc changes; punch point
authorAlyssa Rosenzweig <bobbybee@users.noreply.github.com>
Mon, 18 May 2015 16:06:21 +0000 (12:06 -0400)
committerAlyssa Rosenzweig <bobbybee@users.noreply.github.com>
Mon, 18 May 2015 16:06:21 +0000 (12:06 -0400)
DynImage.js
main.js

index 03ba4c9..d17e22d 100644 (file)
@@ -91,7 +91,7 @@ DynImage.prototype.fillColor = function(r, g, b, a) {
 // starting with a point, that point is raised a certain, specified amount (this is of course an analogy)
 // this causes the alpha value at that point to be raised to this value,
 // and ripples the effect the nearby pixels as well
-DynImage.prototype.pullPoint = function(sx, sy, height, layerIntensity) {
+DynImage.prototype.pointRing = function(sx, sy, height, layerIntensity) {
        var rippleAmount = (255 / this.lesserDimension) * height;
 
        var usedPoints = {};
@@ -125,4 +125,19 @@ DynImage.prototype.pullPoint = function(sx, sy, height, layerIntensity) {
        }               
 }
 
+// opposite of point pulling; works on a single point only
+
+DynImage.prototype.punchPoint = function(x, y, force) {
+       var color = this.getColor(x, y);
+       color[0] -= force;
+       color[1] -= force;
+       color[2] -= force;
+
+       color[0] = color[0] > 0 ? color[0] < 256 ? color[0] : 255 : 0;
+       color[1] = color[1] > 0 ? color[0] < 256 ? color[1] : 255 : 0;
+       color[2] = color[2] > 0 ? color[0] < 256 ? color[2] : 255 : 0;
+       
+       this.setColor(x, y, color[0], color[1], color[2], color[3]);
+}
+
 module.exports = DynImage;
diff --git a/main.js b/main.js
index 9e1824d..bcfb67e 100644 (file)
--- a/main.js
+++ b/main.js
@@ -28,7 +28,11 @@ dynimage.fillColor(
                0       
                );
 
-dynimage.pullPoint(width / 2, height / 2, width, 2);
+// make a beautiful point ring
+//dynimage.pointRing(width / 2, height / 2, width, 2);
+
+// punch a point
+dynimage.punchPoint(50, 50, 100);
 
 var png = new Png(buffer, width, height, 'rgba');
 png.encode(function(image) {
This page took 0.029259 seconds and 4 git commands to generate.