鼠标拖动可实现弹跳...
package
{
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
/**
* ...
* @author zkl
*/
public class dragAndMove1 extends Sprite
{
private var ball:Ball;
private var vx:Number = 0;
private var vy:Number = 0;
private var bounce:Number = -0.7;
private var gravity:Number = 0.5;
private var oldX:Number;
private var oldY:Number;
public function dragAndMove1():void
{
init();
}
private function init():void
{
stage.align = StageAlign.LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
ball = new Ball;
addChild(ball);
ball.x = stage.stageWidth / 2;
ball.y = stage.stageHeight / 2;
vx = Math.random() * 10 - 5;
vy = -10;
addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
addEventListener(Event.ENTER_FRAME, onEnterFrame);
}
private function onEnterFrame(e:Event):void
{
vy += gravity;
ball.x += vx;
ball.y += vy;
var left:Number = 0;
var right:Number = stage.stageWidth;
var top:Number = 0;
var bottom:Number = stage.stageHeight;
if (ball.x + ball.radius > right) {
ball.x = right - ball.radius;
vx *= bounce;
}else if (ball.x - ball.radius < left) {
ball.x = left + ball.radius;
vx *= bounce;
}
if (ball.y + ball.radius > bottom) {
ball.y = bottom - ball.radius;
vy *= bounce;
}else if(ball.y - ball.radius < top) {
ball.y = top + ball.radius;
vy *= bounce;
}
}
private function onMouseDown(e:MouseEvent):void
{
oldX = ball.x;
oldY = ball.y;
stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
ball.startDrag();
removeEventListener(Event.ENTER_FRAME, onEnterFrame);
addEventListener(Event.ENTER_FRAME, trackVelocity);
}
private function trackVelocity(e:Event):void
{
vx = ball.x - oldX;
vy = ball.y - oldY;
oldX = ball.x;
oldY = ball.y;
}
private function onMouseUp(e:MouseEvent):void
{
stage.removeEventListener(MouseEvent.MOUSE_UP, onMouseUp);
ball.stopDrag();
addEventListener(Event.ENTER_FRAME, onEnterFrame);
removeEventListener(Event.ENTER_FRAME, trackVelocity);
}
}
}
分享到:
相关推荐
使用高德地图显示多个标注点 有 弹跳效果 可自定义 title
SlidingLayout是一种Android平台的View控件,可以帮助你实现类似微信网页浏览的下拉功能,也可以帮助你实现类似iOS中UITableView的下拉上拉弹跳的果冻效果。 SlidingLayout完美兼容Android自带库和兼容库的所有View...
HTML5 结合 TweenMax.min.js 制作的文字弹跳效果,仔细看,弹跳的过程中,还有旋转的效果,除了使用HTML CSS3技术外,TweenMax.min.js插件也起到了很重要的作用,这个插件对于实现旋转、弹跳、补间一类的动画效果,...
一个弹跳效果的三维不球实例动画,一个立方体,内部有一个可弹跳的小球,程序仅演示3D图形的编写和小球的运动相关技术要点,并没有其它的什么用处。
JQStickersView: 仿摩拜单车我的贴纸,摩拜单车贴纸弹跳效果, 自定义摩拜单车贴纸效果
jquery w3cfuns网站首页焦点图片弹跳效果滚动代码
打造逼真弹性小球运动效果PPT教程(菜鸟PPT教程)。打算学习动态PPT制作的童鞋比较有用,请下载完整文档学习。
本文实例为大家分享了python实现小球弹跳效果的具体代码,供大家参考,具体内容如下 import pygame, sys pygame.init() screenGameCaption = pygame.display.set_caption(Ball game) screen = pygame.display.set_...
图片的发光 、 模糊、 弹跳、 放大效果
通过对代码的分析,我们可以了解到 cocos2d 中如何实现皮球的弹跳效果,并且能够模拟真实世界中的物理效果。 首先,让我们来了解一下 cocos2d 中的物理引擎 Box2D。Box2D 是一个开源的物理引擎,提供了一个完整的...
可以支持实现滚动视图添加重力弹跳效果,源码DVOBouncer,给UIScrollView添加重力弹跳(Gravity bounce)效果。Add gravity bouncing to UIScrollView content.
unity工程 实现文本的扭动跳动效果
2. **物理模拟**:内置简易物理引擎,计算球体的运动轨迹、速度、加速度等参数,模拟真实物理环境下的弹跳效果。 3. **图形绘制**:使用C语言绘图函数库,绘制球体、地面、以及背景等图形元素,增强视觉效果。 4. **...
异常处理部分也简单弄了下:Notice.show(this, "程序出现异常:\n" getException(e), Toast.LENGTH_LONG);... 这个登录框的弹跳效果,是借鉴了一个弹球游戏中的弹跳模块,因此看上去效果和弹球的弹跳很相似哦。
这是只用了一个div来做的小动画,纯粹利用CSS3的animation来完成,就像是一个正方形在地上弹跳,碰到地面的时候尖角还会压缩变圆,阴影的部分也会随着正方形升高而缩小,至于到底该怎么完成呢?让我们继续看下去。 ...
unity制作,没用物理系统,代码制作的小球在指定2个点或者多个点之间跳动
今天我们分享一个来超酷弹跳球效果,这里我们使用纯HTML5的画布来实现动画及其图形。整个效果使用小球来组合生成字体,如果你的鼠标逼近这些小球,它们会四散而逃,当你的鼠标离开后,它们又自动复原,效果很酷,...
球 Balls是一个使用canvas2d具有“弹跳球”效果的小实验。 。 由 。 执照 麻省理工学院执照 版权所有(C)2013 Danilo Teixeira。
bounce_count :小球弹跳次数 ball_color:小球颜色 ball_count:小球数量 ball_radius:小球半径 ball_delay:小球出现时间间隔(当小球数大于1时) anim_duration:小球一次动画时长 physic_mode : 开启物理效果(下落...