var ball,bx;
var dy,dx;
var g;
function sample() {
var sub=new ex();
sub.faststep();
ball=sub.ball;
bx = sub.bx;
dx = sub.dx;
dy=sub.dy;
g=sub.g;
var timer;
var delay = 100;
var loop = function () {
var sub2 = new ex();
sub2.ball = ball;
sub2.dy = dy;
sub2.g = g;
sub2.bx = bx;
sub2.dx = dx;
sub2.move();
ball = sub2.ball;
dy = sub2.dy;
bx = sub2.bx
dx = sub2.dx;
paint();
clearTimeout(timer);
timer = setTimeout(loop, delay);
}
loop();
paint();
}
function paint(){
var sub=new svgpaint();
str="<svg width=\"700\" height=\"700\">";
str=str+sub.rect(bx,500-ball,5,5,"red");
str=str+"</svg>";
$("#memo").html(str);
}
class ex{
ball:number;
dy:number;
dx:number;
g:number;
bx:number;
faststep():void{
this.ball=500;
this.dy=0;
this.dx=10;
this.g=9.8;
this.bx=250;
}
move():void{
var delta:number;
delta=0.1;
this.dy=this.dy-delta*this.g;
this.ball=this.ball+delta*this.dy;
this.bx=this.bx+delta*this.dx;
var h:number;
h=0;
if(this.ball<0)h=h+1;
if(this.dy<0)h=h+1;
if(h==2)this.dy=-1*this.dy;
h=0;
if(this.bx<0)h=h+1;
if(this.dx<0)h=h+1;
if(h==2)this.dx=-1*this.dx;
h=0;
if(this.bx>500)h=h+1;
if(this.dx>0)h=h+1;
if(h==2)this.dx=-1*this.dx;
}
}
最終更新:2015年10月05日 16:52