2016年9月19日 星期一

week03

安裝Processing 3.2.1

安裝Android套件

安裝套件 安裝Andriod SDK 套件



神奇寶貝球互動

程式碼:
PImage img;
void setup(){
  size(600,800);
  img=loadImage("Poke_Ball.png");
}
void draw(){
  background(255);
  image(img, mouseX,mouseY, 100, 100);
}



程式碼:
PImage imgBall, imgPika;
float ballX=300, ballY=400, pikaX=300, pikaY=200;
float ballVX=0, ballVY=0;
void setup(){
  size(600,800);
  imgBall=loadImage("Poke_Ball.png");
  imgPika=loadImage("pika.png");
  imageMode(CENTER);
}
void draw(){
  background(255);
  image(imgPika, pikaX, pikaY, 100,100);
  image(imgBall, ballX, ballY, 100,100);
  ballX+=ballVX/2.0; ballY+=ballVY/2.0;
}
void mouseMoved(){
  if(mouseY<height*2/3 && ballVY==0){
    ballVX=mouseX-pmouseX;
    ballVY=mouseY-pmouseY;
  }else if(mouseY>height*2/3){
    ballX=mouseX; ballY=mouseY;
    ballVY=0; ballVY=0;
  }
}


加入牛頓定律
程式碼:
PImage imgBall, imgPika;
float ballX=300, ballY=400, pikaX=300, pikaY=200;
float ballVX=0, ballVY=0;
boolean bFly=false;
void setup(){
  size(600,800);
  imgBall=loadImage("Poke_Ball.png");
  imgPika=loadImage("pika.png");
  imageMode(CENTER);
}
void draw(){
  background(255);
  image(imgPika, pikaX, pikaY, 100,100);
  image(imgBall, ballX, ballY, 100,100);
  if(bFly){
    ballX+=ballVX/2.0; ballY+=ballVY/2.0;
    ballVY += 0.98;
  }
}
void mouseMoved(){
  if(mouseY<height*2/3 && bFly==false){
    ballVX=mouseX-pmouseX;
    ballVY=mouseY-pmouseY;
    bFly=true;
  }else if(mouseY>height*2/3){
    ballX=mouseX; ballY=mouseY;
    ballVY=0; ballVY=0; bFly=false;
  }
}



加入把求縮小功能 看起來像3d
程式碼:
PImage imgBall, imgPika;
float ballX=300, ballY=400, ballZscale=1.0, pikaX=300, pikaY=200;
float ballVX=0, ballVY=0;
boolean bFly=false;
void setup(){
  size(600,800);
  imgBall=loadImage("Poke_Ball.png");
  imgPika=loadImage("pika.png");
  imageMode(CENTER);
}
void draw(){
  background(255);
  image(imgPika, pikaX, pikaY, 100,100);
  image(imgBall, ballX, ballY, 100/ballZscale,100/ballZscale);
  if(bFly){
    ballX+=ballVX/2.0; ballY+=ballVY/2.0;
    ballVY += 0.98;
    ballZscale +=0.03;
  }
}
void mouseMoved(){
  if(mouseY<height*2/3 && bFly==false){
    ballVX=mouseX-pmouseX;
    ballVY=mouseY-pmouseY;
    bFly=true;
  }else if(mouseY>height*2/3){
    ballX=mouseX; ballY=mouseY;
    ballVY=0; ballVY=0; bFly=false;
    ballZscale=1.0;
  }
}

沒有留言:

張貼留言