顯示具有 07160555_唐敏真 標籤的文章。 顯示所有文章
顯示具有 07160555_唐敏真 標籤的文章。 顯示所有文章

2020年12月28日 星期一

喵~Processing手機APP~

Processing 安裝 Android

  • Android 模式
    • 需要SDK
  • Android SDK 安裝
    • 去官網下載 Command line tools: https://developer.android.com/studio
    • 將 cmdline-tools 拉到 C槽
    • 在 cmdline-tools 裡新增一個 lastest 資料夾
    • 將檔案拉進 lastest
    • 開啟小黑 cmd 輸入指令

2020年12月21日 星期一

喵~PVector~

 Proecssing~PVector~

  • 比較:
    • 以前:(僅宣告)
      • float uX=10,uY=20,uZ=0;
      • float u2X=30,u2Y=40,u2Z=0;
    • 現在:(可利用PVector裡寫好的函式庫)
      • PVector u=new PVector(10,20,0);
      • PVector u2=new PVector(30,40,0);
    • 注意:檔名不可取到函數名(如:PVector、int、PImage......)
  • 憤怒鳥(angry brid)
    • Processing程式
      • PVector bird;
      • PVector Y,v=null;
      • void setup(){
      •   size(600,400);
      •   bird=new PVector(150,300);//只在setup() new一次
      •   Y=new PVector(150,300);
      • }
      • void draw(){
      •   background(255);
      •   textSize(40);
      •   fill(255,0,200);
      •   text("Y",Y.x-10,Y.y+30);
      •   fill(255);
      •   ellipse(bird.x,bird.y,20,20);
      •   line(bird.x,bird.y,Y.x,Y.y);
      •   if(v!=null){
      •     bird.add(v);
      •     v.y+=0.98;
      •   }
      • }
      • void mouseDragged(){//滑鼠拖曳
      •   bird.x=mouseX;
      •   bird.y=mouseY;
      •   v=null;
      • }
      • void mouseReleased(){
      •   PVector diff=PVector.sub(Y,bird);//減法
      •   v=diff.div(4);//除法
      • }
  • 搖桿(x,y,sw)結合Processing
    • 搖桿
      • GND - GND
      • +5V - 5V
      • URX - A0
      • URY - A1
      • SW - 2
    • Arduino
      • void setup() {
      •   pinMode(2,INPUT_PULLUP);
      •   Serial.begin(9600);
      • }
      • void loop() {//1000Hz(1000fps)
      •   int x=analogRead(A0);//0~1023
      •   int y=analogRead(A1);//0~1023
      •   int sw=digitalRead(2);//HIGH放開
      •   Serial.write(x/4);//第1個byte
      •   Serial.write(y/4);//第2個byte
      •   Serial.write(sw);//第3個byte
      •   delay(20);//1000ms/20ms => 50fps,變慢
      • }
    • Processing程式
      • import processing.serial.*;
      • Serial myPort;
      • void setup(){
      •   size(256, 256);
      •   myPort = new Serial(this,"COM4",9600);
      • }
      • int ballX=0,ballY=0;
      • void draw(){
      •   if(myPort.available()>=3){//延遲少一點 if 改 while
      •     int x=myPort.read();//0~255變成-128~+127
      •     int y=myPort.read();
      •     int sw=myPort.read();
      •     ballX=x;
      •     ballY=y;
      •   }
      •   ellipse(ballX,ballY,10,10);
      • }
  • ↑憤怒鳥結合搖桿↑(Arduino同上↑)
    • import processing.serial.*;
    • Serial myPort;
    • PVector bird;
    • PVector Y,v=null;
    • void setup(){
    •   size(600,400);
    •   myPort = new Serial(this,"COM4",9600);
    •   bird=new PVector(150,300);
    •   Y=new PVector(150,300);
    • }
    • void draw(){
    •   background(255);
    •   if(myPort.available()>=3){
    •     int x=myPort.read();
    •     int y=myPort.read();
    •     int sw=myPort.read();
    •     bird.x=100+x-128;
    •     bird.y=900+x-128;
    •   }
    •   textSize(40);
    •   fill(255,0,200);
    •   text("Y",Y.x-10,Y.y+30);
    •   fill(255);
    •   ellipse(bird.x,bird.y,20,20);
    •   if(v!=null){
    •     bird.add(v);
    •     v.y+=0.98;
    •   }
    • }

                                  2020年12月14日 星期一

                                  喵~搖桿/旋鈕

                                   maker uno + 搖桿/旋鈕

                                  • 組裝:
                                    • GND - GND
                                    • 5V - +5V
                                    • A0 - URX
                                  • 好玩的程式:
                                    • void setup() {
                                    •   for(int i=2;i<=13;i++){
                                    •     pinMode(i,OUTPUT);
                                    •   }
                                    • }

                                    • void loop() {
                                    •   int now = analogRead(A0);//0~1023
                                    •   int level= now/(1024/13);
                                    •   for(int i=2;i<=13;i++){
                                    •     if(i<level)digitalWrite(i,HIGH);
                                    •     else digitalWrite(i,LOW);
                                    •   }
                                    • }
                                  • 加上英文字母:
                                    • void setup() {
                                    •   for(int i=2;i<=13;i++){
                                    •     pinMode(i,OUTPUT);
                                    •   }
                                    •   Serial.begin(9600);
                                    • }

                                    • void loop() {
                                    •   int now = analogRead(A0);//0~1023
                                    •   int level= now/(1024/13);
                                    •   for(int i=2;i<=13;i++){
                                    •     if(i<level)digitalWrite(i,HIGH);
                                    •     else digitalWrite(i,LOW);
                                    •   }
                                    •   Serial.write(('A'+level));
                                    •   delay(100);
                                    • }
                                  • 結合Processing~
                                    • import processing.serial.*;
                                    • Serial myPort;
                                    • void setup() 
                                    • {
                                    •   size(700, 50);
                                    •   myPort = new Serial(this,"COM4",9600);
                                    • }
                                    • int level=0;
                                    • void draw() {
                                    •   background(255);
                                    •   fill(200,100,255);
                                    •   rect(0,0,level*50,50);
                                    •   if(myPort.available()>0){
                                    •     int now=myPort.read();//A~N
                                    •     level=now-'A';
                                    •   }
                                    • }
                                  • 變得更靈敏~
                                    • Arduino:
                                      • void setup() {
                                      •   for(int i=2;i<=13;i++){
                                      •     pinMode(i,OUTPUT);
                                      •   }
                                      •   Serial.begin(9600);
                                      • }

                                      • void loop() {
                                      •   int now = analogRead(A0);//0~1023
                                      •   int level= now/4;//0~255
                                      •   for(int i=2;i<=13;i++){
                                      •     if(i<level/14)digitalWrite(i,HIGH);
                                      •     else digitalWrite(i,LOW);
                                      •   }
                                      •   Serial.write(level);
                                      •   delay(20);//1000/20=50一秒傳50張圖
                                      • }
                                    • Processing:
                                      • import processing.serial.*;
                                      • Serial myPort;
                                      • void setup() 
                                      • {
                                      •   size(765, 50);
                                      •   myPort = new Serial(this,"COM4",9600);
                                      • }
                                      • int level=0;
                                      • void draw() {//60fbs一秒收60張圖
                                      •   background(255);
                                      •   fill(765,100,255);
                                      •   rect(0,0,level*3,50);
                                      •   if(myPort.available()>0){
                                      •     int now=myPort.read();//0~255
                                      •     level=now;
                                      •   }
                                      • }

                                  2020年12月7日 星期一

                                  喵~搖桿~多人遊戲~

                                   maker uno+搖桿

                                  • 組裝:
                                    • SW  -  pin2
                                    • GND  -  GND
                                    • +5V  -  5V
                                  Arduino v.s Processing
                                  • Arduino
                                    • void setup() {
                                    •   // put your setup code here, to run once:
                                    •   Serial.begin(9600);
                                    •   pinMode(2,INPUT_PULLUP);
                                    •   pinMode(8,OUTPUT);
                                    • }
                                    • int state=0;
                                    • void loop() {
                                    •   // put your main code here, to run repeatedly:
                                    •   if(digitalRead(2)==LOW && state==0){
                                    •     state=1;
                                    •     Serial.write("1");
                                    •   }
                                    •   if(digitalRead(2)==HIGH && state==1){
                                    •     state=0;
                                    •     Serial.write("0");
                                    •   }
                                    •   delay(100);
                                    • }
                                  • Processing
                                    • import processing.serial.*;
                                    • Serial myPort;
                                    • void setup() 
                                    • {
                                    •   size(200, 200);
                                    •   myPort = new Serial(this,"COM4",9600);
                                    • }
                                    • int btn=0;
                                    • void draw() {
                                    •   if(myPort.available()>0){
                                    •     int now=myPort.read();
                                    •     if(now=='1') btn=1;
                                    •     else btn=0;
                                    •   }
                                    •   if(btn==1) background(200,100,255);
                                    •   else background(255);
                                    • }
                                  連線到老師的電腦~(多人連線)
                                  • 載入外掛
                                  • Processing(客戶端)
                                    • import hypermedia.net.*;//外掛
                                    • UDP udp;
                                    • void setup(){
                                    •   size(500,500);
                                    •   udp = new UDP(this,6000);
                                    •   udp.send("hello world","120.125.70.53",6100);
                                    • }
                                    • void draw(){}
                                    • void mousePressed(){
                                    •   udp.send("mousePressed","120.125.70.53",6100);
                                    • }

                                  2020年11月30日 星期一

                                  喵~傳輸~小鋼琴~

                                  Arduino連接Processing(傳輸)

                                  • 滑鼠點擊發出聲音
                                    • Arduino
                                      • #define C 523
                                      • #define D 587
                                      • #define E 659
                                      • void setup() {
                                      •   Serial.begin(9600);
                                      •   pinMode(2, INPUT_PULLUP);
                                      •   pinMode(8, OUTPUT);
                                      •   tone(8,C);
                                      •   delay(100);
                                      •   tone(8,D);
                                      •   delay(100);
                                      •   noTone(8);
                                      • }
                                      • void loop() {
                                      •   while(Serial.available()>0){
                                      •     Serial.read();
                                      •     tone(8,E,100);
                                      •   }
                                      • }
                                    • Processing(範例裡的)
                                      • import processing.serial.*;//外掛
                                      • Serial myPort;
                                      • void setup() 
                                      • {
                                      •   size(200, 200);
                                      •   myPort = new Serial(this,"COM4",9600);
                                      • }
                                      • void draw() {}
                                      • void mousePressed(){
                                      •   myPort.write("1");
                                      • }
                                  • 加上鍵盤,按下數字鍵發出聲音
                                    • Arduino
                                      • #define C 523
                                      • #define D 587
                                      • #define E 659
                                      • void setup() {
                                      •   Serial.begin(9600);
                                      •   pinMode(2, INPUT_PULLUP);
                                      •   pinMode(8, OUTPUT);
                                      •   tone(8,C);
                                      •   delay(100);
                                      •   tone(8,D);
                                      •   delay(100);
                                      •   noTone(8);
                                      • }
                                      • void loop() {
                                      •   while(Serial.available()>0){
                                      •     int now=Serial.read();
                                      •     if(now=='1') tone(8,C,100);
                                      •     if(now=='2') tone(8,D,100);
                                      •     if(now=='3') tone(8,E,100);
                                      •   }
                                      • }
                                    • Processing
                                      • import processing.serial.*;
                                      • Serial myPort;
                                      • void setup() 
                                      • {
                                      •   size(200, 200);
                                      •   myPort = new Serial(this,"COM4",9600);
                                      • }
                                      • void draw() {}
                                      • void keyPressed(){
                                      •   if(key=='1') myPort.write("1");
                                      •   if(key=='2') myPort.write("2");
                                      •   if(key=='3') myPort.write("3");
                                      • }
                                      • void mousePressed(){
                                      •   myPort.write("1");
                                      • }
                                  • 小鋼琴
                                    • Arduino
                                      • #define C 523
                                      • #define D 587
                                      • #define E 659
                                      • #define F 698
                                      • #define G 784
                                      • #define A 880
                                      • #define B 988
                                      • void setup() {
                                      •   Serial.begin(9600);
                                      •   pinMode(2, INPUT_PULLUP);
                                      •   pinMode(8, OUTPUT);
                                      •   tone(8,C);
                                      •   delay(100);
                                      •   tone(8,D);
                                      •   delay(100);
                                      •   noTone(8);
                                      • }

                                      • void loop() {
                                      •   while(Serial.available()>0){
                                      •     int now=Serial.read();
                                      •     if(now=='1') tone(8,C);
                                      •     if(now=='2') tone(8,D);
                                      •     if(now=='3') tone(8,E);
                                      •     if(now=='4') tone(8,F);
                                      •     if(now=='5') tone(8,G);
                                      •     if(now=='6') tone(8,A);
                                      •     if(now=='7') tone(8,B);
                                      •     if(now=='0') noTone(8);//放開要靜音
                                      •   }
                                      • }
                                    • Processing
                                      • import processing.serial.*;
                                      • Serial myPort;
                                      • void setup() 
                                      • {
                                      •   size(200, 200);
                                      •   myPort = new Serial(this,"COM4",9600);
                                      • }
                                      • void draw() {}
                                      • void keyPressed(){
                                      •   if(key=='1') myPort.write("1");
                                      •   if(key=='2') myPort.write("2");
                                      •   if(key=='3') myPort.write("3");
                                      •   if(key=='4') myPort.write("4");
                                      •   if(key=='5') myPort.write("5");
                                      •   if(key=='6') myPort.write("6");
                                      •   if(key=='7') myPort.write("7");
                                      • }
                                      • void keyReleased(){//鍵盤放開要回傳0(靜音)
                                      •   myPort.write("0");
                                      • }
                                      • void mousePressed(){
                                      •   myPort.write("1");
                                      • }

                                                                                                                                                                                                            2020年11月23日 星期一

                                                                                                                                                                                                            喵~Aurduino+makeruno初體驗

                                                                                                                                                                                                            音符(蜂鳴器發出聲音)

                                                                                                                                                                                                            • 音樂音符頻率對照表
                                                                                                                                                                                                            • 小星星
                                                                                                                                                                                                              • #define C 523///定義音符頻率
                                                                                                                                                                                                              • #define D 587
                                                                                                                                                                                                              • #define E 659
                                                                                                                                                                                                              • #define F 698
                                                                                                                                                                                                              • #define G 784
                                                                                                                                                                                                              • #define A 880
                                                                                                                                                                                                              • int music[]={C,C,G,G,A,A,G,0,F,F,E,E,D,D,C,0,G,G,F,F,E,E,D,0,G,G,F,F,E,E,D,0,C,C,G,G,A,A,G,0,F,F,E,E,D,D,C};///0是不播音
                                                                                                                                                                                                              • void setup() {
                                                                                                                                                                                                              •   // put your setup code here, to run once:
                                                                                                                                                                                                              •   delay(1000);
                                                                                                                                                                                                              •   pinMode(8,OUTPUT);
                                                                                                                                                                                                              •   for(int i=0;i<sizeof(music)/sizeof(int);i++){
                                                                                                                                                                                                              •     tone(8,music[i],100);///播放(Pin8是蜂鳴器)
                                                                                                                                                                                                              •     delay(250);///音之間的間隔
                                                                                                                                                                                                              •   }
                                                                                                                                                                                                              • }
                                                                                                                                                                                                              • void loop() {}
                                                                                                                                                                                                            • 參考網站(官方範例)
                                                                                                                                                                                                              • https://github.com/CytronTechnologies/MakerUno_Examples

                                                                                                                                                                                                            2020年11月22日 星期日

                                                                                                                                                                                                            喵~P3D(非課內)

                                                                                                                                                                                                             P3D(有x,y,z)

                                                                                                                                                                                                            • 設定[setup()]:
                                                                                                                                                                                                              • size(450,800,P3D);
                                                                                                                                                                                                            • PVector
                                                                                                                                                                                                              • PVector []board=new PVector[10];//使board陣列有x,y,z座標值
                                                                                                                                                                                                              • 使用方法:
                                                                                                                                                                                                                • board[i].x=10;
                                                                                                                                                                                                                • board[i].y=10;
                                                                                                                                                                                                                • board[i].z=10;
                                                                                                                                                                                                            • 移動
                                                                                                                                                                                                              • translate(0,175,-800);

                                                                                                                                                                                                              • 旋轉
                                                                                                                                                                                                                • rotateX(角度);//X軸旋轉
                                                                                                                                                                                                                • rotateY(角度);//Y軸旋轉
                                                                                                                                                                                                                • rotateZ(角度);//Z軸旋轉
                                                                                                                                                                                                              • 立體圖形
                                                                                                                                                                                                                • 要用保護矩陣保護起來
                                                                                                                                                                                                                  • pushMatrix();
                                                                                                                                                                                                                  • popMatrix();
                                                                                                                                                                                                                • 圓形
                                                                                                                                                                                                                  • sphere(大小);
                                                                                                                                                                                                              補充:
                                                                                                                                                                                                                • noStroke();//讓圖形外框消失

                                                                                                                                                                                                                2020年11月2日 星期一

                                                                                                                                                                                                                喵~pixels~

                                                                                                                                                                                                                 取圖片的顏色

                                                                                                                                                                                                                • 隨意找一張圖片,取得圖片的顏色
                                                                                                                                                                                                                  • PImage img;
                                                                                                                                                                                                                  • color nowcolor;
                                                                                                                                                                                                                  • void setup(){
                                                                                                                                                                                                                  •   size(300,300);
                                                                                                                                                                                                                  •   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;///奇怪的pixels公式
                                                                                                                                                                                                                  •   nowcolor=pixels[now];///取得滑鼠現在的顏色
                                                                                                                                                                                                                  • }
                                                                                                                                                                                                                • 奇怪的pixels公式
                                                                                                                                                                                                                  • width*mouseY+mouseX


                                                                                                                                                                                                                                            2020年10月26日 星期一

                                                                                                                                                                                                                                            喵~規律畫圖~

                                                                                                                                                                                                                                            找規律畫圖
                                                                                                                                                                                                                                            • 利用sin,cos找點
                                                                                                                                                                                                                                              • size(500,500);
                                                                                                                                                                                                                                              • for(int angle=0;angle<360;angle+=120){
                                                                                                                                                                                                                                              •   float angle2=radians(angle);
                                                                                                                                                                                                                                              •   float x= 100+cos(angle2)*50;
                                                                                                                                                                                                                                              •   float y= 100+sin(angle2)*50;
                                                                                                                                                                                                                                              •   ellipse(x,y,2,2);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                            • 畫線連接~
                                                                                                                                                                                                                                              • size(500,500);
                                                                                                                                                                                                                                              • beginShape();///開始畫
                                                                                                                                                                                                                                              • for(int angle=0;angle<360;angle+=120){
                                                                                                                                                                                                                                              •   float angle2=radians(angle);
                                                                                                                                                                                                                                              •   float x= 100+cos(angle2)*50;
                                                                                                                                                                                                                                              •   float y= 100+sin(angle2)*50;
                                                                                                                                                                                                                                              •   vertex(x,y);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                              • endShape(CLOSE);//結束畫(CLOSE)=封閉圖形
                                                                                                                                                                                                                                            • 轉動的三角形
                                                                                                                                                                                                                                              • 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);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                              • void setup(){
                                                                                                                                                                                                                                              •   size(500,500);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                              • void draw(){
                                                                                                                                                                                                                                              •   background(255);//清畫面
                                                                                                                                                                                                                                              •   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);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                            • 會移動旋轉的三角形~
                                                                                                                                                                                                                                              • void setup(){
                                                                                                                                                                                                                                              •   size(500,500);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                              • void draw(){
                                                                                                                                                                                                                                              •   beginShape();
                                                                                                                                                                                                                                              •   for(int angle=0;angle<360;angle+=120){
                                                                                                                                                                                                                                              •     float angle2=radians(angle+mouseX);
                                                                                                                                                                                                                                              •     float x= mouseX+cos(angle2)*50;
                                                                                                                                                                                                                                              •     float y= mouseY+sin(angle2)*50;
                                                                                                                                                                                                                                              •     vertex(x,y);
                                                                                                                                                                                                                                              •   }
                                                                                                                                                                                                                                              •   endShape(CLOSE);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                              • void setup(){
                                                                                                                                                                                                                                              •   size(500,500);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                              • void draw(){
                                                                                                                                                                                                                                              •   background(255);
                                                                                                                                                                                                                                              •   beginShape();
                                                                                                                                                                                                                                              •   for(int angle=0;angle<360;angle+=120){
                                                                                                                                                                                                                                              •     float angle2=radians(angle+mouseX);
                                                                                                                                                                                                                                              •     float x= mouseX+cos(angle2)*50;
                                                                                                                                                                                                                                              •     float y= mouseY+sin(angle2)*50;
                                                                                                                                                                                                                                              •     vertex(x,y);
                                                                                                                                                                                                                                              •   }
                                                                                                                                                                                                                                              •   endShape(CLOSE);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                            • 自動順時鐘等速旋轉~
                                                                                                                                                                                                                                              • void setup(){
                                                                                                                                                                                                                                              •   size(500,500);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                              • void draw(){
                                                                                                                                                                                                                                              •   beginShape();
                                                                                                                                                                                                                                              •   for(int angle=0;angle<360;angle+=120){
                                                                                                                                                                                                                                              •     float angle2=radians(angle+frameCount);
                                                                                                                                                                                                                                              •     float x= mouseX+cos(angle2)*50;
                                                                                                                                                                                                                                              •     float y= mouseY+sin(angle2)*50;
                                                                                                                                                                                                                                              •     vertex(x,y);
                                                                                                                                                                                                                                              •   }
                                                                                                                                                                                                                                              •   endShape(CLOSE);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                              • void setup(){
                                                                                                                                                                                                                                              •   size(500,500);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                              • void draw(){
                                                                                                                                                                                                                                              •   background(255);
                                                                                                                                                                                                                                              •   beginShape();
                                                                                                                                                                                                                                              •   for(int angle=0;angle<360;angle+=120){
                                                                                                                                                                                                                                              •     float angle2=radians(angle+frameCount);
                                                                                                                                                                                                                                              •     float x= mouseX+cos(angle2)*50;
                                                                                                                                                                                                                                              •     float y= mouseY+sin(angle2)*50;
                                                                                                                                                                                                                                              •     vertex(x,y);
                                                                                                                                                                                                                                              •   }
                                                                                                                                                                                                                                              •   endShape(CLOSE);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                            • 名詞解釋~
                                                                                                                                                                                                                                              • frameCount 第幾個影格
                                                                                                                                                                                                                                                • 1hr=60min, 1min=60sec, 1sec=60frame
                                                                                                                                                                                                                                              • radians 弧度
                                                                                                                                                                                                                                                • degree(度):360度的世界
                                                                                                                                                                                                                                                • radians(弧度):PI的世界(sin(),cos()用)
                                                                                                                                                                                                                                              • x座標=cos(角度);
                                                                                                                                                                                                                                              • y座標=sin(角度);
                                                                                                                                                                                                                                              • beginShape();  開始畫
                                                                                                                                                                                                                                              • endShape();  結束畫
                                                                                                                                                                                                                                            • 加分:
                                                                                                                                                                                                                                              • void setup(){
                                                                                                                                                                                                                                              •   size(800,800);
                                                                                                                                                                                                                                              •   background(255);
                                                                                                                                                                                                                                              • }
                                                                                                                                                                                                                                              • void draw(){
                                                                                                                                                                                                                                              •   int a=30, c=-1, l=-1;
                                                                                                                                                                                                                                              •   for(int my=50;my<800;my+=80){
                                                                                                                                                                                                                                              •     for(int mx=50;mx<800;mx+=80){
                                                                                                                                                                                                                                              •       int r=30;
                                                                                                                                                                                                                                              •       if(l==-1) a=30;
                                                                                                                                                                                                                                              •       if(c==1&&l==1) a=20;
                                                                                                                                                                                                                                              •       if(c==-1&&l==1) a=40;
                                                                                                                                                                                                                                              •       for(int i=0;i<3;i++){
                                                                                                                                                                                                                                              •         beginShape();
                                                                                                                                                                                                                                              •         if(l==-1){
                                                                                                                                                                                                                                              •           if(c==1) stroke(255,0,0);
                                                                                                                                                                                                                                              •           else stroke(0);
                                                                                                                                                                                                                                              •         }
                                                                                                                                                                                                                                              •         else{
                                                                                                                                                                                                                                              •           if(c==1) stroke(0);
                                                                                                                                                                                                                                              •           else stroke(255,0,0);
                                                                                                                                                                                                                                              •         }
                                                                                                                                                                                                                                              •         for(int angle=0;angle<360;angle+=120){
                                                                                                                                                                                                                                              •           float angle2=radians(angle+a);
                                                                                                                                                                                                                                              •           float x= mx+cos(angle2)*r;
                                                                                                                                                                                                                                              •           float y= my+sin(angle2)*r;
                                                                                                                                                                                                                                              •           vertex(x,y);
                                                                                                                                                                                                                                              •           r-=3;
                                                                                                                                                                                                                                              •         } 
                                                                                                                                                                                                                                              •         endShape(CLOSE);
                                                                                                                                                                                                                                              •       }
                                                                                                                                                                                                                                              •       c*=-1;
                                                                                                                                                                                                                                              •     }
                                                                                                                                                                                                                                              •     l*=-1;
                                                                                                                                                                                                                                              •   }
                                                                                                                                                                                                                                              • }

                                                                                                                                                                                                                                                                                                                                                                                          2020年10月19日 星期一

                                                                                                                                                                                                                                                                                                                                                                                          喵~文字~陣列~

                                                                                                                                                                                                                                                                                                                                                                                           顯示文字

                                                                                                                                                                                                                                                                                                                                                                                          • 文字顏色:要用[fill]
                                                                                                                                                                                                                                                                                                                                                                                            • size(300,300);
                                                                                                                                                                                                                                                                                                                                                                                            • fill(255,0,0);
                                                                                                                                                                                                                                                                                                                                                                                            • textSize(40);
                                                                                                                                                                                                                                                                                                                                                                                            • text("MEOW",30,30);
                                                                                                                                                                                                                                                                                                                                                                                          • 對齊(textAlign) #橘點是對齊點
                                                                                                                                                                                                                                                                                                                                                                                            1. textAlign(LEFT);(預設)
                                                                                                                                                                                                                                                                                                                                                                                            2. textAlign(CENTER);
                                                                                                                                                                                                                                                                                                                                                                                            3. textAlign(RIGHT);
                                                                                                                                                                                                                                                                                                                                                                                            1. textAlign(CENTER,BOTTOM);(預設)
                                                                                                                                                                                                                                                                                                                                                                                            2. textAlign(CENTER,CENTER);
                                                                                                                                                                                                                                                                                                                                                                                            3. textAlign(CENTER,TOP);
                                                                                                                                                                                                                                                                                                                                                                                          • 字型
                                                                                                                                                                                                                                                                                                                                                                                            • 英文
                                                                                                                                                                                                                                                                                                                                                                                            • PFont font=createFont("Times New Roman",30);
                                                                                                                                                                                                                                                                                                                                                                                            • textFont(font);
                                                                                                                                                                                                                                                                                                                                                                                            • text("喵vs.MEOW",250,250);
                                                                                                                                                                                                                                                                                                                                                                                            • 中文
                                                                                                                                                                                                                                                                                                                                                                                            • PFont font=createFont("標楷體",30);
                                                                                                                                                                                                                                                                                                                                                                                            • textFont(font);
                                                                                                                                                                                                                                                                                                                                                                                            • text("喵vs.MEOW",250,250);
                                                                                                                                                                                                                                                                                                                                                                                          • 陣列填色
                                                                                                                                                                                                                                                                                                                                                                                            • int [][]A={{1,1,1},{0,1,0},
                                                                                                                                                                                                                                                                                                                                                                                            •            {0,0,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);
                                                                                                                                                                                                                                                                                                                                                                                            •     else fill(255,0,255);
                                                                                                                                                                                                                                                                                                                                                                                            •     rect(j*100,i*100,100,100);
                                                                                                                                                                                                                                                                                                                                                                                            •   }
                                                                                                                                                                                                                                                                                                                                                                                            • }
                                                                                                                                                                                                                                                                                                                                                                                          • 陣列填圖
                                                                                                                                                                                                                                                                                                                                                                                            • int [][]A={{2,2,2,2},{0,1,0,1},
                                                                                                                                                                                                                                                                                                                                                                                            •            {0,0,1,1},{2,2,2,2}};
                                                                                                                                                                                                                                                                                                                                                                                            • PImage G,B;
                                                                                                                                                                                                                                                                                                                                                                                            • void setup(){
                                                                                                                                                                                                                                                                                                                                                                                            •   size(400,400);
                                                                                                                                                                                                                                                                                                                                                                                            •   G=loadImage("G.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(G, j*100, i*100, 100,100);
                                                                                                                                                                                                                                                                                                                                                                                            •       if(A[i][j]==2) image(B, j*100, i*100, 100,100);
                                                                                                                                                                                                                                                                                                                                                                                            •     }
                                                                                                                                                                                                                                                                                                                                                                                            •   }
                                                                                                                                                                                                                                                                                                                                                                                            • }
                                                                                                                                                                                                                                                                                                                                                                                          • 戳氣球遊戲(滑鼠互動)
                                                                                                                                                                                                                                                                                                                                                                                            • int [][]A={{2,2,2,2},{0,1,0,1},
                                                                                                                                                                                                                                                                                                                                                                                            •            {0,0,1,1},{2,2,2,2}};
                                                                                                                                                                                                                                                                                                                                                                                            • PImage G,B;
                                                                                                                                                                                                                                                                                                                                                                                            • void mousePressed(){
                                                                                                                                                                                                                                                                                                                                                                                            •   int i=int(mouseY/100);
                                                                                                                                                                                                                                                                                                                                                                                            •   int j=int(mouseX/100);
                                                                                                                                                                                                                                                                                                                                                                                            •   A[i][j]=0;
                                                                                                                                                                                                                                                                                                                                                                                            • }
                                                                                                                                                                                                                                                                                                                                                                                            • void setup(){
                                                                                                                                                                                                                                                                                                                                                                                            •   size(400,400);
                                                                                                                                                                                                                                                                                                                                                                                            •   G=loadImage("G.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(G, j*100, i*100, 100,100);
                                                                                                                                                                                                                                                                                                                                                                                            •       if(A[i][j]==2) image(B, j*100, i*100, 100,100);
                                                                                                                                                                                                                                                                                                                                                                                            •     }
                                                                                                                                                                                                                                                                                                                                                                                            •   }
                                                                                                                                                                                                                                                                                                                                                                                            •  ellipse(mouseX,mouseY,10,10);
                                                                                                                                                                                                                                                                                                                                                                                            • }

                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2020年10月12日 星期一

                                                                                                                                                                                                                                                                                                                                                                                                                                                                          喵~小遊戲、聲音~

                                                                                                                                                                                                                                                                                                                                                                                                                                                                          結合前四周所學,做出[水果忍者]~
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          水果忍者
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • 匯入圖片(水果)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • PImage img;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • float x=100, y=200;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • void setup(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •   size(500,500);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •   img=loadImage("fruit.png");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • void draw(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •   image=(img,x,y,100,100);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • 加入重力加速度
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • float vx=3,vy=-20;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • void draw(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •   x+=vx;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •   y+=vy;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •   vy+=0.98;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • }


                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • 左彈右彈連續彈///void draw()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •   if(y>500){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •     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);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •     }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •   }

                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • 畫出刀子(滑鼠)///void draw()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • background(0);///畫面更新(黑色)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • stroke(255);line(mouseX,mouseY,pmouseX,pmouseY);///白色刀子
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • 切到水果水果重生///void draw()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • int fruitDie=0;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • if(x<mouseX&&mouseX<x+100&&y<mouseY&&mouseY<y+100)fruitDie=1;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • 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;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •   }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • 完整水果忍者(初版)程式
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • PImage img;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • float x=100, y=200,vx=3,vy=-20;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • 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;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            •   }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          聲音~~
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • 下載聲音外掛
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • 程式素描本>引用>添加
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • [法一]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • import processing.sound.*;///聲音外掛
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • SoundFile sound1;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • SoundFile sound2;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • void setup(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   size(300,300);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   sound1=new SoundFile(this,"cat1a.mp3");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   sound2=new SoundFile(this,"dog_barking1.mp3");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   sound1.loop();///循環播放
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • void draw(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • void mousePressed(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   sound2.play();///播一次
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • [法二]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • import ddf.minim.*;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • Minim minim;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • AudioPlayer player1;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • AudioPlayer player2;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • void setup()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   size(300,300);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   minim = new Minim(this);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   player1 = minim.loadFile("cat1a.mp3");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   player1 = minim.loadFile("dog_barking1.mp3");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   player1.loop();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • void draw(){}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • void mousePressed(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   player2.rewind();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        •   player2.play();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • }

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    2020年10月5日 星期一

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    喵~圖片應用

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    匯入圖片 

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    讀進一張圖檔

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • 找一張圖,然後拉入專案裡,直接拉進即可


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • 程式碼:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • PImage img;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • size(1049,585);///圖片大小

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • img = loadImage("gods.jpg");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • image(img,0,0);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    讀進多張圖檔
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • 程式碼:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • PImage img;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • PImage img2;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • size(1049,585);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • img = loadImage("gods.jpg");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • img2 = loadImage("logo.jpg");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • image(img,0,0);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • image(img2,100,100);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • 太大了!!
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • image(img2,100,100,92,52);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    讓圖動起來~
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • 隨鼠標移動
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • 程式碼:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • PImage img;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • PImage img2;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • void setup(){///只做一次
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • size(1049,585);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • img = loadImage("gods.jpg");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • img2 = loadImage("logo.jpg");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • void draw(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • image(img,0,0);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • image(img2,mouseX,mouseY,92,52);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • 讓鼠標在圖中心
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • image(img2,mouseX-92/2,mouseY-52/2,92,52);


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • 卷軸動起來
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • PImage img;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • PImage img2;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • void setup(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • size(275,275);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • img = loadImage("long.jpg");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • img2 = loadImage("image.png");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • int x=0;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • void draw(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • if(mouseX>200) x--;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • image(img,x,0);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • image(img2,mouseX-22/2,mouseY-22/2,22,22);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    牛頓定律(物理定律)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • 程式碼
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • float x=250,y=200;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • float vx=1.0,vy=2.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(mouseX,mouseY,10,10);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          •   ellipse(x,y,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;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        • 牛頓第二運動定律
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • float x=250,y=200;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • float vx=1.3,vy=-15;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • void setup(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          •   size(500,400);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • void draw(){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          •   background(255);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          •   ellipse(x,y,10,10);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          •   x+=vx;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          •   y+=vy;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          •   vy+=0.98;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          •   if(x>500 || x<0) vx=-vx*0.85;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          •   if(y>400 || y<0) vy=-vy*0.85;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          • }