Ich versuche, den Flood-Fill-Algorithmus zu verwenden, um eine der beiden Farben dieser Kurve zu füllen, die definiert ist mit Rot als 1 und Blau als Null. Wenn ich jedoch versuche, meinen Code auszuführen, heißt das, dass die Syntax für die Zeile if m[i][j]=1:
falsch ist. Irgendwelche Ratschläge, wie man das debuggt? Vielen Dank. In diesem Code m
ist die Matrix Ich arbeite in und i
und j
sind meine xy VariablenPython 4-Wege-rekursive Flutfüllung einer Kurve
from pylab import *
m=zeroes((100,100))
for i in range(100):
for j in range(100):
m[i,j]=sin(i+j+0.1*i*j+0.1*j*j)+cos(i-j+0.2*i*i)
n=m.copy()
n[n>0]=1
n[n<0]=0
imshow(n)
def floodfill (m,i,j):
if m[i][j]=1:
m[i][j]=0
if i>0:
floodfill(matrix,i-1,j)
if i < len(m[y]) - 1:
floodfill(m, i+1, j)
if j>0:
floodfill(m, i, j-1)
floodfill(m, i, j-1)