顯示具有 05161172_鄭昕恬 標籤的文章。 顯示所有文章
顯示具有 05161172_鄭昕恬 標籤的文章。 顯示所有文章

2019年1月11日 星期五

week16_鄭昕恬

我們的期末作品是電子鼓,雖然一開始就遇到許多瓶頸,但在老師的幫忙下我們終於慢慢有了頭緒,漸漸摸索出製作的過程,在程式碼上加以改進,處理的音樂延遲的問題。而原本想用焊接的方式,把電線跟用錫箔碗做成的鼓面結合,卻發現無法成功焊接上,所以就改成禪讓在鼓的邊緣,讓他們可以成功導電。這個期末作品,我們啜了很多測試,也參考了非常多的資料,但最後還是最感謝老師對我們的地不離不棄,認真地幫助所有同學做出很有成就感的期末作品,我覺得這堂課讓我受益良多。

附上YOUTUBE: https://youtu.be/KM31Ckis4po

2018年12月27日 星期四

WEEK16_劉沛潔

我們這組期末作品是要做鼓,但是在我們開始做的時候發現好難,網路上找資料都太專業了,就想說改作鋼琴好了,結果跟老師說我們想改的時候,老師說希望我們可以完成,而且也要幫助我們完成,於是我們今天早上八點就來跟老師一起解決我們的問題,讓我們原本落後的進度幾乎快要完成了。
但是我們還有一個瓶頸,就是焊接焊不成功,焊了很久之後先焊到手才知道,因為我們的錫箔太光滑了,所以才焊不上去,要先用砂紙把它磨平,才可以成功焊上去,但是我們現在也沒有砂紙,只好先在我們的錫箔碗上面戳兩個洞,把線先纏幾圈,改天再焊上去吧QQ

2018年12月21日 星期五

Week09_鄭昕恬

今天很新奇的用了make uno
但上課的過程不是很順利
因為很多同學的連接部分有問題
最後發現可能是線的問題
導致無法支援(因為線只能用來充電)
但我有帶對線
也成功的適用了一下一些基本的功能
最後展示了之前學長姐的作品
很酷的籃球機

希望之後可以順利地體驗到make uno

week12_鄭昕恬

今天到HakerSpace製作光劍
一開始到那個空間覺得非常有創作者的感覺
有許多特殊的小東西
讓人覺得非常ˊ驚奇
想要東碰碰西看看

之後就開始製作光劍
1.準備110個LED燈
2.將每個燈泡ㄠ成ㄇ字型以利待會焊接
3.正極接正極 負極接負極
4.將每個小燈泡接起來成為一長條
(在此過程中發生很多困難
例如接起來後發現接錯正負極了
或是焊接的沒有很好
有的燈泡會亮有的卻不會亮
總之焊接燈泡真的要細心地好好檢查
每接一個就要測試看看結果
不然到最後全部接完了還要一個個找錯誤很麻煩
需要一隻巧手成能完成美美的光劍
其實在過程中蠻崩潰的
要透過兩個人的分工合作)
5.將連接好的LED燈泡塞入燈管內
6.焊上電阻以及可充電的電池
7.裝握把(大功告成)










還有去參觀樓上的小花園
種了很多植物
覺得HakerSpace是個很棒的地方
以後有想法或是想做一些新奇的東西
一定還會去互相交流!







week08_鄭昕恬




https://www.youtube.com/watch?v=KYo2-kWQnAU

操作模式:
進到遊戲畫面後,點'1'開始遊戲,利用滑鼠控制忍者左右移動,
並按滑鼠左右鍵向惡鬼射出刀子,右下有個魔力條,當魔力用光
就輸了遊戲,而當殺鬼的分數到達設定值時,即遊戲勝利。

遊戲賣點:
利用可愛的忍者角色,結合最近的萬聖節,組合成一個有趣的組合
在符合氣氛的背景還有音效下,玩著此遊戲很符合過節的氣氛,雖
然遊戲名"砍殺惡鬼"聽起來帶有恐怖的感覺,但事實上卻是個可愛
趣味的遊戲。

程式碼:
import ddf.minim.*;
Minim minim;
AudioPlayer player;
PImage img;
PImage ninja;
PImage ninja01;
PImage ninja02;
PImage background02;
PImage background01;
PImage bullet;
PImage[] imgN=new PImage[10];
PImage monster;
int[]monsterlife=new int[100];
float[]bulletX =new float[100];
float[]bulletY =new float[100];
boolean []bulletAlive =new boolean[100];
float [] monsterX = new float[100];
float [] monsterY = new float[100];
boolean[] monsterDie= new boolean[100];
boolean win =false;
boolean lose = false;
int life=100;
float[]lineY=new float[1];
int state=0;
void setup() {
  minim= new Minim(this);
  player=minim.loadFile("music.mp3");
  player.play();
  player.loop();
  size(800, 600);
  for (int i=0; i<=9; i++) imgN[i] = loadImage(i+".png");
  background01=loadImage("background.jpg");
  background02=loadImage("background01.png");
  ninja=loadImage("ninja.png");
  ninja01=loadImage("ninja01.png");
  ninja02=loadImage("ninja02.png");
  bullet=loadImage("bullet.png");
  img=loadImage("soldier.png");
  monster=loadImage("monster.png");
  for (int i=0; i<100; i++) {
    monsterX[i]=random(0, 600);
    monsterY[i]=random(-1000, 2);
    monsterlife[i]=1;
    monsterDie[i]=false;
  }
}
void draw() {
  if(state==0){
    drawOP();
    if(key=='1')state=1;
    }
    else if(state==1){
      drawPlayer();
  }
 }
boolean flying=false;
int score=0;
void drawPlayer(){
  background(255);
  image(background01, 0, 0, 800, 600);
  fill(255);rect(630,480,100,20);
  fill(0,0,255);rect(630,480,life*1,20);
  //fill(255);rect(0,450,900,1);
  stroke(255);
  fill(255);
  image(img, mouseX-10, 450, 100, 150);
  for (int i=0; i<100; i++) {
    if (monsterDie[i])continue;
    image(monster, monsterX[i], monsterY[i], 90, 100);
    monsterY[i]+=1;
   // if (monsterY[i]>700) monsterY[i]=-2000+600;
  // if(monsterY[i]<lineY)life--;
  
  }

  for (int b=0; b<100; b++) {
    if (bulletAlive[b]) {
      fill(255, 255, 0);
      image(bullet, bulletX[b], bulletY[b], 60, 60);
      bulletY[b]-=7;
      for (int i=0; i<100; i++) {
        if (monsterX[i]<bulletX[b]&&bulletX[b]<monsterX[i]+40 && abs(bulletY[b]-monsterY[i])<30) {
          monsterlife[i]=0;
          score+=100;
          bulletAlive[b]=false;
          monsterDie[i]=true;
        
        }
        //fill(255);rect(630,480,100,20);
          //fill(255,0,0);rect(630,480,life,20);
          //if(monsterY[i]>500)life--;
      }
    }
  }

  int now=score;
  for (int i=0; i<5; i++) {
    image(imgN[(now%10)], 720-i*30, 520, 40, 40);
    now/=10;
  }
  //int now=blood;

  if (win) {
    background(255, 255, 255);
    image(background02, 0, 0, 800, 600);
    image(ninja, 100, 100, 300, 300);
    textSize(80);
    fill(255, 0, 0);
    text("YOU WIN!", 300, 300);
  }
  if (lose) {
    background(255, 255, 255);
    image(background02, 0, 0, 800, 600);
    image(ninja01, 100, 100, 300, 300);
    textSize(80);
    fill(255, 0, 0);
    text("YOU LOSE!", 300, 300);
  }
}
void drawOP(){
  background(255);
  image(background01, 0, 0, 800, 600);
  image(ninja02, 300, 150, 200, 300);
  text("you can press 1 to play...",170,240);
  textSize(40);
  fill(#8E7366);
}
void mousePressed() {
  life-=3;
  if (score>2000)win=true;
   if(life<0)lose=true;
  for (int now=0; now<100; now++) {
    if (bulletAlive[now] ==false) {
      bulletX[now]=mouseX;
      bulletY[now]=450;
      bulletAlive[now]=true;
      break;
    }
  }
}

遭遇困難:
我想最大的困難就是從無到有吧,從一開始沒什麼想法,到參考老師
的各種影片,把影片中的一些重點與自己的遊戲互相配合,從每個教學
影片都學到不同技巧,不管是有關場景還是遊戲中的偵測等等,寫出一個
遊戲真不是那麼容易,但也不像想像中那麼難,除了要一直創新和除錯
也要與共同的組員相互討論,還好最後還是靠著老師的影片、同學的發問
,在這之中了解了許多要點,才因此寫出屬於自己的遊戲。

2018年12月20日 星期四

weel15_鄭昕恬

我們想做的是有關打鼓的互動程式
其˙實網路上有許多範本可以參考
但是實際要做起來還是沒有那麼容易

我們先到網路上訂購"麵包板"
還有"公對母的連接線"
再配上老師上課所搭配的"MakerUNO "
其他部分還在構思中
主要參考的連結是:https://www.youtube.com/watch?v=qweE762Z03M

有問題還會持續詢問老師





#include <CapacitiveSensor.h>
#define threshold 30 // 感測電容量的臨界值 byte note; CapacitiveSensor cs_4_5 = CapacitiveSensor(4,5); CapacitiveSensor cs_4_6 = CapacitiveSensor(4,6); CapacitiveSensor cs_4_7 = CapacitiveSensor(4,7); CapacitiveSensor cs_4_8 = CapacitiveSensor(4,8); CapacitiveSensor cs_4_9 = CapacitiveSensor(4,9); void midiMsg(byte cmd, byte pitch, byte velocity){ Serial.write(cmd); Serial.write(pitch); Serial.write(velocity); } void setup() { // put your setup code here, to run once: Serial.begin(115200); Serial.write(0xC0); Serial.write(0x0A); } void loop() { // put your main code here, to run repeatedly: long total1 = cs_4_5.capacitiveSensor(30); long total2 = cs_4_6.capacitiveSensor(30); long total3 = cs_4_7.capacitiveSensor(30); long total4 = cs_4_8.capacitiveSensor(30); long total5 = cs_4_9.capacitiveSensor(30); if (total1 > threshold) { midiMsg(10011001, 46, 0x40); } if (total2 > threshold) { midiMsg(0x99, 35, 0x40); } if (total3 > threshold) { midiMsg(0x99, 41, 0x40); } if (total4 > threshold) { midiMsg(0x99, 43, 0x40); } if (total5 > threshold) { midiMsg(0x99, 45, 0x40); } delay(200);


2018年12月6日 星期四

week13_鄭昕恬



利用simple read 來寫一個小程式




老師利用音樂觸控的遊戲,讓我們知道可以運用短路的方式,低成本的製造遊戲


經過老師的各種介紹跟講解
於是我們想好了主題 就是"打鼓"
也是根短路關係
經由物體的導電

2018年11月22日 星期四

week11_鄭昕恬


複習上禮拜的所學,來連接板子




利用這個城市來預習光劍,讓板子上的燈一個接著一個照順序亮起來

2018年11月15日 星期四

week10_鄭昕恬


https://makeruno.com.my/getting-started/
到此下載驅動軟體



先到裝置管理員中的連接阜更新



直接上傳後就會停止音效


https://makeruno.com.my/changing-melody-with-push-button-using-only-maker-uno/?fbclid=IwAR2SojRkM3kpsqEHlog95jpmA6NHWFilJtTGudv4aA91WCewM6g4J1JMGI4
上傳後即可以播放小星星音效

2018年11月1日 星期四

Week8其中作業 鄭昕恬劉沛潔

期中作品



操作模式:
進到遊戲畫面後,點'1'開始遊戲,利用滑鼠控制忍者左右移動,
並按滑鼠左右鍵向惡鬼射出刀子,右下有個魔力條,當魔力用光
就輸了遊戲,而當殺鬼的分數到達設定值時,即遊戲勝利。

遊戲賣點:
利用可愛的忍者角色,結合最近的萬聖節,組合成一個有趣的組合
在符合氣氛的背景還有音效下,玩著此遊戲很符合過節的氣氛,雖
然遊戲名"砍殺惡鬼"聽起來帶有恐怖的感覺,但事實上卻是個可愛
趣味的遊戲。

程式碼:
import ddf.minim.*;
Minim minim;
AudioPlayer player;
PImage img;
PImage ninja;
PImage ninja01;
PImage ninja02;
PImage background02;
PImage background01;
PImage bullet;
PImage[] imgN=new PImage[10];
PImage monster;
int[]monsterlife=new int[100];
float[]bulletX =new float[100];
float[]bulletY =new float[100];
boolean []bulletAlive =new boolean[100];
float [] monsterX = new float[100];
float [] monsterY = new float[100];
boolean[] monsterDie= new boolean[100];
boolean win =false;
boolean lose = false;
int life=100;
float[]lineY=new float[1];
int state=0;
void setup() {
  minim= new Minim(this);
  player=minim.loadFile("music.mp3");
  player.play();
  player.loop();
  size(800, 600);
  for (int i=0; i<=9; i++) imgN[i] = loadImage(i+".png");
  background01=loadImage("background.jpg");
  background02=loadImage("background01.png");
  ninja=loadImage("ninja.png");
  ninja01=loadImage("ninja01.png");
  ninja02=loadImage("ninja02.png");
  bullet=loadImage("bullet.png");
  img=loadImage("soldier.png");
  monster=loadImage("monster.png");
  for (int i=0; i<100; i++) {
    monsterX[i]=random(0, 600);
    monsterY[i]=random(-1000, 2);
    monsterlife[i]=1;
    monsterDie[i]=false;
  }
}
void draw() {
  if(state==0){
    drawOP();
    if(key=='1')state=1;
    }
    else if(state==1){
      drawPlayer();
  }
 }
boolean flying=false;
int score=0;
void drawPlayer(){
  background(255);
  image(background01, 0, 0, 800, 600);
  fill(255);rect(630,480,100,20);
  fill(0,0,255);rect(630,480,life*1,20);
  //fill(255);rect(0,450,900,1);
  stroke(255);
  fill(255);
  image(img, mouseX-10, 450, 100, 150);
  for (int i=0; i<100; i++) {
    if (monsterDie[i])continue;
    image(monster, monsterX[i], monsterY[i], 90, 100);
    monsterY[i]+=1;
   // if (monsterY[i]>700) monsterY[i]=-2000+600;
  // if(monsterY[i]<lineY)life--;
 
  }

  for (int b=0; b<100; b++) {
    if (bulletAlive[b]) {
      fill(255, 255, 0);
      image(bullet, bulletX[b], bulletY[b], 60, 60);
      bulletY[b]-=7;
      for (int i=0; i<100; i++) {
        if (monsterX[i]<bulletX[b]&&bulletX[b]<monsterX[i]+40 && abs(bulletY[b]-monsterY[i])<30) {
          monsterlife[i]=0;
          score+=100;
          bulletAlive[b]=false;
          monsterDie[i]=true;
       
        }
        //fill(255);rect(630,480,100,20);
          //fill(255,0,0);rect(630,480,life,20);
          //if(monsterY[i]>500)life--;
      }
    }
  }

  int now=score;
  for (int i=0; i<5; i++) {
    image(imgN[(now%10)], 720-i*30, 520, 40, 40);
    now/=10;
  }
  //int now=blood;

  if (win) {
    background(255, 255, 255);
    image(background02, 0, 0, 800, 600);
    image(ninja, 100, 100, 300, 300);
    textSize(80);
    fill(255, 0, 0);
    text("YOU WIN!", 300, 300);
  }
  if (lose) {
    background(255, 255, 255);
    image(background02, 0, 0, 800, 600);
    image(ninja01, 100, 100, 300, 300);
    textSize(80);
    fill(255, 0, 0);
    text("YOU LOSE!", 300, 300);
  }
}
void drawOP(){
  background(255);
  image(background01, 0, 0, 800, 600);
  image(ninja02, 300, 150, 200, 300);
  text("you can press 1 to play...",170,240);
  textSize(40);
  fill(#8E7366);
}
void mousePressed() {
  life-=3;
  if (score>2000)win=true;
   if(life<0)lose=true;
  for (int now=0; now<100; now++) {
    if (bulletAlive[now] ==false) {
      bulletX[now]=mouseX;
      bulletY[now]=450;
      bulletAlive[now]=true;
      break;
    }
  }
}

遭遇困難:
我想最大的困難就是從無到有吧,從一開始沒什麼想法,到參考老師
的各種影片,把影片中的一些重點與自己的遊戲互相配合,從每個教學
影片都學到不同技巧,不管是有關場景還是遊戲中的偵測等等,寫出一個
遊戲真不是那麼容易,但也不像想像中那麼難,除了要一直創新和除錯
也要與共同的組員相互討論,還好最後還是靠著老師的影片、同學的發問
,在這之中了解了許多要點,才因此寫出屬於自己的遊戲。

2018年10月18日 星期四

week06_鄭昕恬

float [] fruitX=new float[20];
float [] fruitY=new float[20];
float [] fruitVX=new float[20];
float [] fruitVY=new float[20];
void setup(){
  size(800,600);
  for(int i=0;i<20;i++){
    fruitX[i]=random(800); fruitVX[i]=3;
    fruitY[i]=700; fruitVY[i]=-35;
  }
}
void draw(){
  background(0);
  for(int i=0;i<20;i++){
    ellipse(fruitX[i],fruitY[i],100,100);
    fruitX[i]+=fruitVX[i];
    fruitY[i]+=fruitVY[i];
    fruitVY[i]+=0.98;
  }
}

2018年10月11日 星期四

Week05_鄭昕恬





接雞蛋





顯示分數


float[] eggX=new float[100];
float[] eggY=new float[100];
boolean[] eggDie=new boolean[100];
void setup(){
  size(800,600);
  for(int i=0;i<100;i++){
    eggX[i]=random(100,700);
    eggY[i]=-random(2000);
    eggDie[i]=false;
  }
}
int score=0;
void draw(){
  background(255);
  rect(mouseX-50, mouseY-25,100, 50);
  for(int i=0; i<100; i++){
    if(eggDie[i])continue;
    ellipse(eggX[i], eggY[i], 80, 100);
    eggY[i]+=5;
    if(eggY[i]>700) eggY[i]=-2000+600;
    if(dist(mouseX-50, mouseY-25, eggX[i], eggY[i])<50){
      eggDie[i]=true;
      score+=100;
    }
  }
  fill(255,0,0); textSize(80); text("Score:"+score,100,100);
}

2018年10月4日 星期四

week04_鄭昕恬


(1)









(2)
void setup(){
  size(800,600);
}
void draw(){
  background(255);
  fill(255,0,0); rect(100,100,100,100);
  if(bulletFlying){
    ellipse(bulletX,bulletY,50,50);
    bulletX+=3;
  }
}
float bulletX=100,bulletY=100;
boolean bulletFlying=false;
void keyPressed(){
  bulletFlying=true;
}


要記得清背景



(3)void setup(){
  size(800,600);
}
void draw(){
  background(255);
  fill(255,0,0); rect(100,100,100,100);
  for(int i=0;i<bulletN;i++){
  if(bulletFlying[i]){
    ellipse(bulletX[i],bulletY[i],50,50);
    bulletX[i]+=3;
  }
 }
}
float []bulletX= new float[100];
float []bulletY= new float[100];
int bulletN=0;
boolean []bulletFlying=new boolean[100];
void keyPressed(){
  bulletFlying[ bulletN ] = true;
  bulletX[ bulletN ] =100; bulletY[ bulletN ]=100;
  bulletN++;
}




發射到100顆會當機



(4)
void setup(){
  size(800,600);
  imgBG=loadImage("BG.jpg");
  imgBullet=loadImage("bullet.png");
  imageMode(CENTER);
}
void draw(){
  image(imgBG, width/2,height/2,width,height);
  ellipse(mouseX,mouseY, 100,100);
  for(int i=0; i<bulletN;i++){
    if(bulletFlying[i]){
      ellipse(bulletX[i], bulletY[i], 100, 100);
      bulletY[i]+=bulletVY[i];
      bulletVY+=0.98;
  }
 }
}
float []bulletX= new float[100];
float []bulletY= new float[100];
float []bulletVY= new float[100];
boolean []bulletFlying=new boolean[100];
int bulletN=0;
void mousePressed(){
  bulletFlying[ bulletN ] = true;
  bulletX[ bulletN ] =mouseX; 
  bulletY[ bulletN ]=mouseY;
  bulletVY[bulletN]=-20;
  bulletN++;
}


2018年9月27日 星期四

week03_鄭昕恬

今天一開始,老師先SHOW給我們看了幾張很酷的圖片,增加大家對用程式化圖的興趣
也給我們看了一個70幾歲,卻對程式還很有熱忱的老人,陳舒舒的作品,讓我們思考,是不是也能做出這樣的作品。


(1)先簡單的寫出一格圖形
void setup(){
  size(500,500);
}
void draw(){
  ellipse(250,250, 480,480);
  for(float angle=0; angle<PI*2; angle+=PI/3){
    triangle(250,250,250+240*cos(angle), 250+240*sin(angle),
             250+240*cos(angle+PI/3),250+240*sin(angle+PI/3));
  }
}


(2)在寫出更精緻的圖片
void setup(){
  size(500,500);
}
void draw(){
  ellipse(250,250, 480,480);
  for(float angle=0; angle<PI*2; angle+=PI/3){
    for(int R=0; R<=240; R+=20){
      noFill();
    triangle(250,250,250+R*cos(angle), 250+R*sin(angle),
             250+R*cos(angle+PI/3),250+R*sin(angle+PI/3));
  }
 }
}





(3)試試能不能把旋轉的圖畫出來,改變三個頂點來畫出橢圓的軌跡

(4)參考別人的圖案,來試著畫出圖形
void setup(){
  size(800,400);
}
void myTriangle(int cx, int cy){
  float a= -PI/2;
  for(int R=15;R>0;R-=5){
    triangle( cx+R*cos(a), cy+R*sin(a),
              cx+R*cos(a+2*PI/3), cy+R*sin(a+2*PI/3),
              cx+R*cos(a-2*PI/3), cy+R*sin(a-2*PI/3));
  }
}
           
void draw(){
  background(255);
  for(int cx=20;cx<800;cx+=40){
    for(int cy=20;cy<400;cy+=40){
      //ellipse(cx,cy,30,30);
      myTriangle(cx,cy);
    }
  }
}






(5)試著寫出會動的馬力歐
PImage imgMario;
float marioX=0, marioY=0;
void setup(){
  size(400,600);
  imgMario = loadImage("mario.jpg");
}

void draw(){
  background(255);
  image(imgMario, marioX, marioY, 100, 150);
}
void keyPressed(){
    if(keyCode==UP) {marioY-=5;}
    if(keyCode==DOWN) {marioY+=5;}
    if(keyCode==LEFT) {marioX-=5;}
    if(keyCode==RIGHT) {marioX+=5;}
}



(6)寫出會跳動的馬力歐

PImage imgMario;
float marioX=0, marioY=100, marioVX=5, marioVX=0, marioAX=0, marioAY=0.1;
void setup(){
  size(400,600);
  imgMario = loadImage("mario.jpg");
}

void draw(){
  background(255);
  image(imgMario, marioX, marioY, 100, 150);
  marioX += marioVX;  marioY += marioVY;
  marioVX+= marioAX;  marioVY+= 0.98;
  if(marioY>600-150) marioVY*=-0.9;
  if(marioY>600-150) marioVY*=-0.9;

}
void keyPressed(){
    if(keyCode==UP) {marioY-=5;}
    if(keyCode==DOWN) {marioY+=5;}
    if(keyCode==LEFT) {marioX-=5;}
    if(keyCode==RIGHT) {marioX+=5;}
}









2018年9月20日 星期四

week02_鄭昕恬

今天的一開始,老師先付息了上禮拜所交的,後來也秀給我們看了回家作業,找出比較有趣的例子,來讓我們實作,我覺著以下的圖非常好玩



(1)老師實際讓我們寫了一個程式
void setup(){
  size(400,400);
}
int R=30;
void draw(){
  ellipse(mouseX,mouseY,R,R);
  R-=3;
  if(R<0) R=30;
}
做出左邊那個好玩的圖案




(2)利用程式更改顏色





void setup(){
  size(400,400);
  colorMode(HSB,100);
}
int R=30, H=0;
void draw(){
  fill(H,100,100);
  ellipse(mouseX,mouseY,R,R);
  R-=3;
  if(R<0) R=30;
  H++;
  if(H>=100) H=0;
}



(3)會自動跑出的程式
void setup(){
  size(400,400);
  colorMode(HSB,100);
}
int R=50, H=0;
int CircleX=200,CircleY=200;
void draw(){
  fill(H,100,100);
  ellipse(CircleX,CircleY,R,R);
  R-=2;
  CircleX+=random(30)-15;
  CircleY+=random(30)-15;
  if(R<0){
    R=50;
    CircleX=200; CircleY=200;
  }
  H++;
  if(H>=100) H=0;
}



(4)利用程式來做出好玩的圖檔
PImage img;
void setup(){
  size(1280,720);
  img = loadImage("123.jpg");
}
void draw(){
  image(img, mouseX,mouseY);
}



(5)可以隨意更改圖片的背景顏色

PImage img;
void setup(){
  size(1280,720);
  img = loadImage("223.jpg");
}
void draw(){
  background(255,255,0);
  image(img, mouseX,mouseY, 100,130);
}








2018年9月13日 星期四

week01 鄭昕恬

(1) 首先可以先去processing下載,也可以直接在電腦中的葉正聖老師資料夾中直接使用

(2)在偏好設定中可以調整字行大小

(3)執行一個小小的程式
size(800,600);
line(0,0, 100,100);
rect( 100,100, 300,300);



(4)寫一個演唱會的程式,按下滑鼠可以變換顏色

void setup(){
   size(800,600);
}

void draw(){
  if(mousePressed) background(255,0,0);
  else background(0,255,0);
}



(5)寫出一個小畫家程式

(線會連在一起)



void setup() {
  size(800, 600);
}

void draw() {
  if(mousePressed) line(mouseX,mouseY, pmouseX, pmouseY);
}
(做出真的小畫家)
可以另外自己去延伸


(6)
調整顏色&粗細
void setup() {
  size(800, 600);
}

void draw() {
  if(mousePressed) line(mouseX,mouseY, pmouseX, pmouseY);
}
void keyPressed(){
  if(key=='1') strokeWeight(1);
  if(key=='2') strokeWeight(2);
  if(key=='9') strokeWeight(9);
  if(key=='s') stroke(0,0,255);
  if(key=='d') stroke(255,0,0);
  if(key=='f') stroke(0,255,255);
}







(6)改變顏色&粗細