【发布时间】:2017-01-16 14:04:10
【问题描述】:
我正在使用处理,我正在尝试从我的显示器上的像素创建一个圆圈。 我设法拉出屏幕上的像素并从中创建一个不断增长的圆圈。
但是我正在寻找更复杂的东西,我想让它看起来好像显示器上的像素正在从它们当前的位置移动并形成一个转圈或类似的东西。
这是我现在拥有的:
int c = 0;
int radius = 30;
allPixels = removeBlackP();
void draw {
loadPixels();
for (int alpha = 0; alpha < 360; alpha++)
{
float xf = 350 + radius*cos(alpha);
float yf = 350 + radius*sin(alpha);
int x = (int) xf;
int y = (int) yf;
if (radius > 200) {radius =30;break;}
if (c> allPixels.length) {c= 0;}
pixels[y*700 +x] = allPixels[c];
updatePixels();
}
radius++;
c++;
}
removeBlackP 函数返回一个数组,其中包含除黑色像素之外的所有像素。
此代码对我有用。有一个问题是圆圈只有int 的数字,所以圆圈内的一些像素似乎无法填充,我可以忍受。我正在寻找一些更复杂的东西,就像我解释的那样。
谢谢!
【问题讨论】:
标签: animation geometry processing pixels