2023年9月28日 星期四

Week03 畫圖

 //1.點線面

void setup(){

  size(500,500);//視窗大小

}

float x=250,y=250;//座標

void draw(){

  ellipse(x,y,5,5);

}

void setup(){
  size(500,500);
  dx=random(-1,+1);//亂數決定往哪裡動
  dy=random(-1,+1);//亂數決定往哪裡動
}

//2.改用陣列表示
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);//亂數決定往哪裡動
    dy[i]=random(-1,+1);//亂數決定往哪裡動
  }
  
}
float []x= new float[20];
float []y= new float[20];
float []dx= new float[20];
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];//邊界反彈
  }
}

//1.點線面

//2.改用陣列表示

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);//亂數決定往哪裡動

    dy[i]=random(-1,+1);//亂數決定往哪裡動

  }

  

}

float []x= new float[20];

float []y= new float[20];

float []dx= new float[20];

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])<150){

        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];//邊界反彈

  }

}

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]);//明暗深淺變化
      }

}

if(d<100){//距離夠近的話
        line(x[i],y[i],x[k],y[k]);//明暗深淺變化
        dx[i]-=(x[k]-x[i])*0.0001;
        dy[i]-=(y[k]-y[i])*0.0001;//排斥力


void setup(){
  size(500,500);
  colorMode(HSB,360,100,100);
  //H:0-360;S:0-100%;B:0-100%
}
void draw(){
  background(frameCount%360,100,100);//顏色變動
}

size(400,400);
colorMode(HSB,400);
for(int i=0;i<400;i++){
  for(int j=0;j<400;j++){
    stroke(i,400,400);
    point(i,j);
  }
}
void setup(){
  size(300,300);
  colorMode(HSB,360,100,100);
  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(-20,+20);
  ds= random(-20,+20);
  db= random(-20,+20);
}
void draw(){
  background(#169FF2);
  for(int i=0;i<5;i++){
    for(int j=0;j<5;j++){
      if(i==I&&j==J) fill(h+dh,s+ds,b+db);
      else fill(h,s,b);
      ellipse(30+j*60,30+i*60,60,60);
    }
  }
}





沒有留言:

張貼留言