第四堂課
Processing程式操作一(球體運動-左右行走)
程式
int ballX=300, ballY=300;
int vx = +2, vy =-10;
void setup(){
size(600,500);
}
void draw(){
background(255);
ellipse(ballX,ballY,30,30);
ballX +=vx;
if(ballX<0+15) vx = -2;
if(ballX>600-15) vx = -2;
}
int vx = +2, vy =-10;
void setup(){
size(600,500);
}
void draw(){
background(255);
ellipse(ballX,ballY,30,30);
ballX +=vx;
if(ballX<0+15) vx = -2;
if(ballX>600-15) vx = -2;
}
結果
Processing程式操作二(球體運動-上下左右)
程式
int ballX=300, ballY=300;
int vx =+2 , vy =-2;
void setup(){
size(600,500);
}
void draw(){
//background(255);
ellipse(ballX,ballY,30,30);
ballX +=vx;
ballY +=vy;
if(ballX<0+15) vx = +2;
if(ballX>600-15) vx = -2;
if(ballY<0+15) vy = +2;
if(ballY>500-15) vy = -2;
}
float vx = +2, vy =-10;
void setup(){
size(600,500);
}
void draw(){
//background(255);
ellipse(ballX,ballY,30,30);
ballX +=vx;
ballY +=vy; println(vy);
vy += 0.98;
if(ballX<0+15) vx = -vx*0.9;
if(ballX>600-15) vx = -vx*0.9;
if(ballY<0+15) vy = -vy*0.9;
if(ballY>500-15) vy = -vy*0.9;
}
float vx=+2,vy=-10;
void setup(){
size(600,400);
}
void draw(){
//background(255);
ellipse(ballx,bally,30,30);
ballx+=vx;
bally+=vy;//println(vy);
if(ballx<0+15) vx=-vx*0.9;
if(ballx>600-15) vx=-vx*0.9;
if(bally<0+15) vy=-vy*0.9;
if(bally>400-15){//讓加速度越來越小甚至停止
vy=-vy*0.9;
vx=vx*0.9;
bally=400-15;
}
vy+=0.98;
}
float marioX=100,marioY=100;
float marioVX=0,marioVY=0;
void setup(){
size(500,500);
imgMario = loadImage("mario.jpg");
}
void draw(){
//background(255);
rect(0,200,500,50);
image(imgMario,marioX,marioY,100,100);
marioX += marioVX;
marioY += marioVY;
if(softBrake==1) marioVX *= 0.9;
if(marioY<=100) marioVY += 0.9;
else marioY=100;
}
int softBrake=0;
void keyReleased(){‵‵‵‵‵‵‵‵‵‵‵
if(keyCode==RIGHT) softBrake=1;
if(keyCode==LEFT) softBrake=1;
}
void keyPressed(){
if(keyCode==RIGHT) {
marioVX=3;
softBrake=0;
}
else if(keyCode==LEFT ){
marioVX=-3;
softBrake=0;
}
else if(keyCode==UP ) {
marioVY = -15;
}
}
int vx =+2 , vy =-2;
void setup(){
size(600,500);
}
void draw(){
//background(255);
ellipse(ballX,ballY,30,30);
ballX +=vx;
ballY +=vy;
if(ballX<0+15) vx = +2;
if(ballX>600-15) vx = -2;
if(ballY<0+15) vy = +2;
if(ballY>500-15) vy = -2;
}
結果
Processing程式操作三(球體運動-重力加速度)
程式
float ballX=300, ballY=300;float vx = +2, vy =-10;
void setup(){
size(600,500);
}
void draw(){
//background(255);
ellipse(ballX,ballY,30,30);
ballX +=vx;
ballY +=vy; println(vy);
vy += 0.98;
if(ballX<0+15) vx = -vx*0.9;
if(ballX>600-15) vx = -vx*0.9;
if(ballY<0+15) vy = -vy*0.9;
if(ballY>500-15) vy = -vy*0.9;
}
結果
Processing程式操作四(球體運動-重力加速度二)
程式
float ballx=100,bally=300;float vx=+2,vy=-10;
void setup(){
size(600,400);
}
void draw(){
//background(255);
ellipse(ballx,bally,30,30);
ballx+=vx;
bally+=vy;//println(vy);
if(ballx<0+15) vx=-vx*0.9;
if(ballx>600-15) vx=-vx*0.9;
if(bally<0+15) vy=-vy*0.9;
if(bally>400-15){//讓加速度越來越小甚至停止
vy=-vy*0.9;
vx=vx*0.9;
bally=400-15;
}
vy+=0.98;
}
結果
Processing程式操作五(馬力歐)
程式
PImage imgMario;float marioX=100,marioY=100;
float marioVX=0,marioVY=0;
void setup(){
size(500,500);
imgMario = loadImage("mario.jpg");
}
void draw(){
//background(255);
rect(0,200,500,50);
image(imgMario,marioX,marioY,100,100);
marioX += marioVX;
marioY += marioVY;
if(softBrake==1) marioVX *= 0.9;
if(marioY<=100) marioVY += 0.9;
else marioY=100;
}
int softBrake=0;
void keyReleased(){‵‵‵‵‵‵‵‵‵‵‵
if(keyCode==RIGHT) softBrake=1;
if(keyCode==LEFT) softBrake=1;
}
void keyPressed(){
if(keyCode==RIGHT) {
marioVX=3;
softBrake=0;
}
else if(keyCode==LEFT ){
marioVX=-3;
softBrake=0;
}
else if(keyCode==UP ) {
marioVY = -15;
}
}





沒有留言:
張貼留言