顯示具有 07161116_張勝彥 標籤的文章。 顯示所有文章
顯示具有 07161116_張勝彥 標籤的文章。 顯示所有文章

2020年11月16日 星期一

week08

 

其中作業!!!


int [][]A={{2,0,2,0},{1,2,1,2},

{2,0,2,1},{2,1,2,1}}; PImage a,b; void mousePressed(){ int i=int(mouseY/100); int j=int(mouseX/100); if(A[i][j]==0) A[i][j]=1; else A[i][j]=2; if(A[i][j]==1) A[i][j]=0; else A[i][j]=2; if(A[i][j]==2) A[i][j]=0; else A[i][j]=1; } void setup(){ size(400,400); a=loadImage("a.png"); b=loadImage("b.png"); } void draw(){ background(0); for(int i=0;i<4;i++){ for(int j=0;j<4;j++){ if(A[i][j]==1) image(a, j*100, i*100, 100,100); if(A[i][j]==2) image(b, j*100, i*100, 100,100); } } ellipse(mouseX,mouseY,10,10); }


秀出分數的方法
textSize(50);
fill(#FFE412); text("Score:"+score,100,50);

void mousePressed()
{
    int i=int (mouseY/100),j=int(mouseX/100);
if(A[i][j]==1)
{
    A[i][j]=0;score+=100;println(score);
}
}

week06 07161116

 用滑鼠點圖片會消失

程式碼:
int [][]A={ {2,2,2,2},
            {0,1,1,1},
            {0,1,1,1},
            {2,2,2,2} };
PImage bird, pig;
void mousePressed()
{
  int i = int(mouseY/100);
  int j = int(mouseX/100);
  A[i][j]=0;
}
void setup()
{
    size(400,400);
    bird=loadImage("bird.png");
    pig =loadImage("pig.png");
}
void draw()
{
  background(0);
  for(int i=0; i<4; i++)
  {
    for(int j=0; j<4; j++)
    {
      if(A[i][j]==1) image(bird, j*100, i*100,100,100);
      if(A[i][j]==2) image(pig, j*100, i*100,100,100);
    }
  }
}

陣列


                  寬=3
int[][]A={{1,1,1},      
                 {0,1,0},      高=4
                 {0,1,1},
                 {1,1,1}};
size(300,400);
for(int i=0; i<4; i++)
{
  for(int j=0; j<3; j++)
  {
     if(A[i][j]==0)fill(0);-----------------遇到0就填黑色
     else fill(255,0,0);---------------------沒有就填紅色
     
     rect(j*100, i*100, 100, 100);
  }
}

 

07161116

 水果忍者


PImage img;
float x=100, y=200, vx=3, vy= -30;//(x,y)
int fruitDie=0;
void setup(){
  size(500,500);
  img = loadImage("fruit.png");
}


void draw(){
  background(0);
  image(img,x,y,100,100);
  x += vx;
  y += vy;
  vy += 0.98;
  if(y>500) fruitDie=1;
  if(x<mouseX&&mouseX<x+100&&y<mouseY&&mouseY<y+100)fruitDie=1;
  stroke(255);line(mouseX,mouseY,pmouseX,pmouseY);
  if(fruitDie==1){
  if(frameCount%2==0){
    x=random(250); y=500; vx=random(2,3);vy=-random(28,32);
  }
  else{
      x=random(250,500);y=500; vx=-random(2,3); vy=-random(28,32);
    }
    fruitDie=0;
  }
}

07161116 week04

 


在網路上找圖 再把圖拉到process
設定好圖片大小 就會有圖片了
再找一張去背的圖 在改一些程式碼
就能讓去背圖跟著滑鼠移動了



PImage(讀入圖檔)


視窗碰撞:



float x=250,y=200;
float vx=1.0,vy=4.5;
void setup(){
 size(500,400); 
}
void draw(){
 ellipse(x,y,10,10); 
 x+=vx;
 y+=vy;
 if(x>500|| x<0)vx=-vx;
 if(y>400|| y<0)vy=-vy;
}


彈弓彈射

float x=250,y=200;
float vx=0,vy=0;
void setup(){
 size(500,400); 
}
void draw(){
  background(255);
  if(mousePressed)line(mouseX,mouseY,x,y);
 ellipse(x,y,10,10); 
 ellipse(mouseX,mouseY,10,10);
 x+=vx;
 y+=vy;
 if(x>500|| x<0)vx=-vx;
 if(y>400|| y<0)vy=-vy;
}
void mouseReleased(){
  vx=x-mouseX;vy=y-mouseY; 
}








07161116 張勝彥

 week01





桌面葉正聖老師所需檔案
processing-3.5.3
processing.exe


開始學習程式碼
setup
size(寬,高);
視窗大小
drawline(x1,y1,x2,y2);
rect(x,y,寬,高);
ellipse(x,y,寬,高);
color-
background(#RGB);
stroke(#RGB);
fill(#RGB);
or(R,G,B);

2020年11月2日 星期一

week08 07161116






舉例:

點選畫面區塊,顯示點選顏色

PImage img;

color nowColor;

void setup() {

  size(300, 200);

  img=loadImage("cloud.png");

}


void draw() {

  image(img,0,0);

  fill(nowColor);

  rect(0,0,30,30);

}


void mouseMoved(){

  loadPixels();

  int now = width * mouseY + mouseX;

  nowColor = pixels[now];

}

2020年10月26日 星期一

week07 07161116 張勝彥

 畫圖形


void setup()

{

size(500,500);

}

void draw()

{

beginShape();

for(int angle=0;angle<360;angle+=120)

{

    float angle2= radians(angle+mouseX);

    float x = 100+cos(angle2)*50;

    float y = 100+sin(angle2)*50;

    vertex(x,y);

}


endShape(CLOSE);

}


1hr=60min,1min=60sec,1sec=60ftames

frameCount:第幾個frame

角度有兩種:degree度(360度的世界)

sin()cos()用radions弧度/經度(PI世界)

切水果

Java的陣列 vs C陣列 float fruitX[10];


2020年9月21日 星期一

week02

///小畫家

 void setup()

{

    size(600,500);

fill(#ff0000);rect(0,0,100,100);//第一個紅色

 fill(#ffff00);rect(0,100,100,100);//第二個黃色    

 fill(#00ff00);rect(0,200,100,100);//第三個綠色

strokeWeight(5);

}

void keyPressed()

{//有案件按下去

    save("yes.png");//存檔

}

void draw()

{

    line(100,0,100,500);

if(mousePressed&&mouseX<100)

{

    if(mouseY<100)stroke(#ff0000);

 else if(mouseY<200)stroke(#ffff00);

else if(mouseY<300)stroke(#00ff00);

}

if(mousePressed && mouseX>100)

{

    line(mouseX,mouseY,pmouseX,pmouseY);

}

}