WEB开发网
开发学院图形图像Flash Flash 中的物理运动知识 阅读

Flash 中的物理运动知识

 2007-01-28 10:59:48 来源:WEB开发网   
核心提示: 代码://设定边界top=0;left=0;right=400;bottom=300;vx=10;vy=10;onEnterFram=function(){my_mc._x+=vx;my_mc._y+=vy;//下面代码检测小球是否到达边界,如果已到边界,Flash 中的物理运动知识(4)

代码:

//设定边界
top=0;
left=0;
right=400;
bottom=300;
vx=10;
vy=10;
onEnterFram=function(){
  my_mc._x+=vx;
  my_mc._y+=vy;
  //下面代码检测小球是否到达边界,如果已到边界,重设小球的正确做坐,并使其回弹,
  if(my_mc._x+my_mc._width/2>right){
     my_mc._x=right-my_mc._width/2;
    vx*=-1;
  }
  if(my_mc._x-my_mc._width/2<left){
     my_mc._x=left+mc_mc._width/2;
    vx*=-1;
  }
  if(my_mc._y-my_mc._height/2<top){
    my_mc._y=top+my_mc._height/2;
     vy*=-1;
  }
  if(my_mc._y+my_mc._height/2>bottom){
     my_mc._y=bottom-my_mc._height/2;
     vy*=-1;
  }
}

通过演示我们发现小球在碰到边界会不断的回弹。

*注意:上面代码中的my_mc._x,my_mc._y的坐标都是指my_mc的中心点,也就是说my_mc的注册点在中心,如果你在制作过程中发现与本演示不同,那一定是你的my_mc注册点没有在中心上。

弹性中的能量损失

在上面的例子,小球在回弹时我们设定当碰到边界时直接回弹,也就是vx*=-1;并没有能量的损失,但在现实生活中,小球在回弹时要有一定的能量损失,其中还要有重力加速度的影响,通过上面的例子我们可以得出结论,当回弹速度设为1时无能量损失,其中的负号只是代表方向,当小于1时会产生能量损失,也就是我们通常说的摩擦,如:vx*=-0.8;同时不要忘了在现实生活小球还会受重力加速度的影响。

代码:

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Flash 物理 运动

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接