changeset 233:1d9f9c3d8ab1

Fixes to multicolor/pixelw==2 flood fill.
author Matti Hamalainen <ccr@tnsp.org>
date Thu, 06 Sep 2018 13:25:15 +0300
parents ea6eb6541607
children 7afa7c257d93
files draw_smart.pde
diffstat 1 files changed, 6 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/draw_smart.pde	Thu Sep 06 12:58:41 2018 +0300
+++ b/draw_smart.pde	Thu Sep 06 13:25:15 2018 +0300
@@ -160,7 +160,7 @@
 
 void floodfill_mc(int xx, int yy, int mbut)
 {
-    int x, y, ax, valid, okay, par, npar, zad;
+    int x, y, ax, valid, okay, par, npar;
     par = 0;
 
     if (g_pixelw == 2)
@@ -186,7 +186,7 @@
         for (y = 0; y < Y; y++)
         for (x = 0; x < X; x += g_pixelw)
         {
-            zad = 1024 + x + y * X;
+            int zad = 1024 + x + y * X;
             ax = int(g_fillmap[zad]);
             if (ax >= 100 && ax <= 199)
             {
@@ -194,10 +194,10 @@
                 if (y > 0 && floodfill_mc_plop(npar, x, y - 1))
                     valid = 1;
 
-                if (x > g_pixelw && floodfill_mc_plop(npar, x - g_pixelw, y))
+                if (x >= g_pixelw && floodfill_mc_plop(npar, x - g_pixelw, y))
                     valid = 1;
 
-                if (x < X - 1 - g_pixelw && floodfill_mc_plop(npar, x + g_pixelw, y))
+                if (x <= X - g_pixelw - g_pixelw && floodfill_mc_plop(npar, x + g_pixelw, y))
                     valid = 1;
 
                 if (y < Y - 1 && floodfill_mc_plop(npar, x, y + 1))
@@ -245,7 +245,7 @@
 
 void floodfill_iq(int xx, int yy, int mbut)
 {
-    int x, y, ax, ay, valid, okay, par, npar, zad;
+    int x, y, ax, ay, valid, okay, par, npar;
     par = 0;
 
     if (mbut == LEFT)
@@ -271,7 +271,7 @@
         for (y = 0; y < Y; y++)
         for (x = 0; x < X; x++)
         {
-            zad = 1024 + x + y * X;
+            int zad = 1024 + x + y * X;
             ax = int(g_fillmap[zad]);
             if (ax == 100)
             {