質問内容
このプログラムを実行するとボールが壁でひたすら反射するだけのアニメーションになっていますが反発係数などを用いて本物のスーパーボールのような動きにさせたいのですが出来ません。
Processing
1void setup(){ 2 size(400,400); 3 smooth(); 4 noStroke(); 5 ellipseMode(CORNER); 6 fill(200,255,200); 7 frameRate(8); 8} 9 10int d=30,x=0,vx=2,y=0,vy=80; 11void draw(){ 12 background(255); 13 ellipse(x,y,d,d); 14 x+=vx; //時間tでのボール位置 15 y+=vy; 16 if(x<0||x+d>width){ //枠を超えたら 17 vx*=-1; //速度反転 18 if(x<0) x*=-1; //左端 19 else if(x+d>width) x=2*(width-d)-x; //右端 20 } 21 if(y<0||y+d>width){ 22 vy*=-1; 23 if(y<0) y*=-1; 24 else if(y+d>width) y=2*(width-d)-y; 25 } 26}
変数を用いて飛び跳ねる高さを変えようと思ったのですが上手くいきませんでした。誰か分かる方いたらよろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/04/27 09:54