week03
week03-1
劃出點線面
week03-2
新增亂數
亂數往哪裡跑
week03-3
新增很多點隨意移動
void setup(){
size(500,500);
for(int i=0;i<20;i++){
x[i]=random(500);
y[i]=random(500);
dx[i]=random(-1,+1);//dx=random(-1,+1);
dy[i]=random(-1,+1);//dy=random(-1,+1);
}
}
float[] x=new float[20];//float x=250, y=250;
float[] y=new float[20];
float[] dx=new float[20];//float dx=1, dy=1;
float[] dy=new float[20];
void draw(){
background(0);
for(int i=0;i<20;i++){
ellipse(x[i],y[i],5,5);
x[i] += dx[i];
y[i] += dy[i];
if(x[i]<0 || x[i]>500)dx[i]=-dx[i];
if(y[i]<0 || y[i]>500)dy[i]=-dy[i];
}
}
week03-4
把點連起來
void setup(){
size(500,500);
for(int i=0;i<20;i++){
x[i]=random(500);
y[i]=random(500);
dx[i]=random(-1,+1);//dx=random(-1,+1);
dy[i]=random(-1,+1);//dy=random(-1,+1);
}
}
float[] x=new float[20];//float x=250, y=250;
float[] y=new float[20];
float[] dx=new float[20];//float dx=1, dy=1;
float[] dy=new float[20];
void draw(){
background(0);
for(int i=0;i<20;i++){
ellipse(x[i],y[i],5,5);
for(int k=0;k<20;k++){
stroke(255,0,0);
if(dist(x[i],y[i],x[k],y[k])<100)
line(x[i],y[i],x[k],y[k]);
}
x[i] += dx[i];
y[i] += dy[i];
if(x[i]<0 || x[i]>500)dx[i]=-dx[i];
if(y[i]<0 || y[i]>500)dy[i]=-dy[i];
}
}
week03-5
變更多點 點和線會根據遠近有深淺變化
void setup(){
size(500,500);
for(int i=0;i<N;i++){
x[i]=random(500);
y[i]=random(500);
dx[i]=random(-1,+1);//dx=random(-1,+1);
dy[i]=random(-1,+1);//dy=random(-1,+1);
}
}
int N=40;
float[] x=new float[N];//float x=250, y=250;
float[] y=new float[N];
float[] dx=new float[N];//float dx=1, dy=1;
float[] dy=new float[N];
void draw(){
background(0);
for(int i=0;i<N;i++){
ellipse(x[i],y[i],5,5);
for(int k=0;k<N;k++){
float d= dist(x[i],y[i],x[k],y[k]);
stroke(2.55*(100-d));
if(d<100)
line(x[i],y[i],x[k],y[k]);
}
x[i] += dx[i];
y[i] += dy[i];
if(x[i]<0 || x[i]>500)dx[i]=-dx[i];
if(y[i]<0 || y[i]>500)dy[i]=-dy[i];
}
}
week03-6
增加一點吸引力
void setup(){
size(500,500);
for(int i=0;i<N;i++){
x[i]=random(500);
y[i]=random(500);
dx[i]=random(-1,+1);//dx=random(-1,+1);
dy[i]=random(-1,+1);//dy=random(-1,+1);
}
}
int N=50;
float[] x=new float[N];//float x=250, y=250;
float[] y=new float[N];
float[] dx=new float[N];//float dx=1, dy=1;
float[] dy=new float[N];
void draw(){
background(0);
for(int i=0;i<N;i++){
ellipse(x[i],y[i],5,5);
for(int k=0;k<N;k++){
float d= dist(x[i],y[i],x[k],y[k]);
stroke(2.55*(100-d));
if(d<100)
line(x[i],y[i],x[k],y[k]);
dx[i]+=(x[k]-x[i])*0.0000001;
dy[i]+=(y[k]-y[i])*0.0000001;
}
x[i] += dx[i];
y[i] += dy[i];
if(x[i]<0 || x[i]>500)dx[i]=-dx[i];
if(y[i]<0 || y[i]>500)dy[i]=-dy[i];
}
}
week03-7
設定顏色
顏色可以閃爍
加入frameCount(顏色閃爍,像彩虹一樣)
week03-9
void setup(){
size(300,300);
colorMode(HSB,360,100,100);
chooseColor();
}
void mousePressed(){
chooseColor();
}
int I,J;
float h,s,b,dh,ds,db;
void chooseColor(){
h=random(360);
s=random(50,100);
b=random(50,100);
I=int(random(5));
J=int(random(5));
dh=random(-10,+10);
ds=random(-10,+10);
db=random(-10,+10);
}
void draw(){
background(203,63,65);
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
if(i==1 && j==J) fill(h+dh,s+ds,b+db);
fill(h,s,b);
ellipse(30+j*60,30+i*60,60,60);
}
}
}










.png)
沒有留言:
張貼留言