矢印が動く
int[] x = new int[9]; int[] y = new int[9]; float[]speedX = new float[9]; float[]speedY = new float[9]; color[]c=new color[9]; int a=1; int b=5; void setup() { size(800, 800); colorMode(HSB, 360, 100, 100); x[0] = 0; y[0] = 0; x[1] = 20; y[1] = 20; x[2] = 40; y[2] = 40; x[3] = 60; y[3] = 60; x[4] = 80; y[4] = 80; x[5] = 60; y[5] = 80; x[6] = 40; y[6] = 80; x[7] = 80; y[7] = 60; x[8] = 80; y[8] = 40; speedX[0]=a; speedY[0]=b; speedX[1]=a; speedY[1]=b; speedX[2]=a; speedY[2]=b; speedX[3]=a; speedY[3]=b; speedX[4]=a; speedY[4]=b; speedX[5]=a; speedY[5]=b; speedX[6]=a; speedY[6]=b; speedX[7]=a; speedY[7]=b; speedX[8]=a; speedY[8]=b; c[0]=color(random(360), 100, 100); c[1]=color(random(360), 100, 100); c[2]=color(random(360), 100, 100); c[3]=color(random(360), 100, 100); c[4]=color(random(360), 100, 100); c[5]=color(random(360), 100, 100); c[6]=color(random(360), 100, 100); c[7]=color(random(360), 100, 100); c[8]=color(random(360), 100, 100); } void draw() { int i; background(0, 0, 0); //fill(0, 0, 0, 5); //rect(0, 0, width, height); for (i = 0; i < 9; ++i) { x[i] += speedX[i]; y[i] += speedY[i]; if (x[i] < 0 || x[i] > width) { speedX[i] *= -1; //speedX[i] *= random(0.3, 1.1); //speedX[i]=random(-5, 5); //speedY[i] *= speedY[i]+random(0.9, 1); } if (y[i] < 0 || y[i] > height) { speedY[i] *= -1; //speedX[i] =speedX[i]+random(0.9, 1); //speedY[i]=random(-5, 5); //speedY[i]*=random(0.3, 1.1); } ////if (x[i] > width) { //x[i]=width; //speedX[i]=speedX[i]+1; //} // //if (x[i] <0) { //x[i]=0; //speedY[i]=speedY[i]+1; //} // //if (y[i] > height) { //y[i]=height; //speedX[i]=speedX[i]+1; //} // //if (y[i] < 0) { //y[i]=0; //speedX[i]=speedX[i]+1; //} // fill(c[i]); ellipse(x[i], y[i], 20, 20); } }
Processing入門9
の下から2番目を使った。
アンコメントしたのを見てわかってくれ…。明日もこれ頑張ってみようかな。