Processing 如何使用2D阵列在像素上循环?

Processing 如何使用2D阵列在像素上循环?,processing,Processing,例如: loadPixels(); 对于(int i=0;i

例如:

loadPixels();
对于(int i=0;i<240;i++)
{
对于(int j=0;i<240;j++)
{
color p=pixels[i][j];//错误:表达式的类型必须是数组
类型,但它解析为int
浮点数=0.2989*红色(p);
浮动绿色=0.5870*绿色(p);
浮动cBlue=0.1140*蓝色(p);
像素[i][j]=颜色(cRed、cGreen、cBlue);
}
}
更新像素();
根据,像素是一维数组。所以你可能需要做一些类似的事情

int row = i;
int col = j;
int offset = row * width + col;
color p = pixels[offset];

不确定如何获得窗口的宽度,但这正是您需要做的(假设行在数组中按顺序存储)。

什么是“像素”类型。如果是color[],那么我认为代码应该可以工作。根据您的描述,我认为它是int[][]类型。这一行可能会突然出现:
for(int j=0;I<240;j++)
(注意中间的I)这是完全正确的,它们是按顺序存储的。另外,宽度是一个系统变量,它总是存储窗口的宽度。尼斯:)