我刚刚开始学习 jython,只是有一个我似乎无法正确回答的问题。
从我的文本中,我将创建一个 640 x 480 像素的图片,然后使用循环,逐个像素地将颜色设置为我们已经给出的 r、g、b 的计算。我可以创建一张图片,我可以设置变量,但是我似乎无法进一步创建一个循环来设置每个像素的颜色。我知道这很简单,但是如果有人可以在这里帮助我,那就只是徘徊。
我刚刚开始学习 jython,只是有一个我似乎无法正确回答的问题。
从我的文本中,我将创建一个 640 x 480 像素的图片,然后使用循环,逐个像素地将颜色设置为我们已经给出的 r、g、b 的计算。我可以创建一张图片,我可以设置变量,但是我似乎无法进一步创建一个循环来设置每个像素的颜色。我知道这很简单,但是如果有人可以在这里帮助我,那就只是徘徊。
xrange()
将创建一个生成器,它产生一个范围内的整数。for
将循环一次迭代的每个元素。
for row in xrange(480):
for col in xrange(640):
...
这可以帮助您遍历像素。
picture = makeEmptyPicture(400,200)
pixels = getPixels(picture)
#make an empty picture and get the pixels
for px in getPixels(picture):
x=getX(px)
y=getY(px)
r = (sin(x * radian * id[1]) * cos(y * radian * id[4]) + 1) * ord(StringID[0]) * 2.5
g = (sin(x * radian * id[2]) * cos(y * radian * id[5]) + 1) * ord(StringID[0]) * 2.5
b = (sin(x * radian * id[3]) * cos(y * radian * id[6]) + 1) * ord(StringID[0]) * 2.5
newColor=makeColor(255 - r, 255 - g, 255 - b)
setColor(px, newColor)
show(picture)
repaint(picture)