11RIA 闪客社区 - 最赞 Animate Flash 论坛

搜索
查看: 1965|回复: 5
上一主题 下一主题

[悬赏 ≤ 99 银子] 怎么实现拖动元件后物品有一个惯性运动

[复制链接] TA的其它主题
发表于 2021-3-4 12:25:29 | 显示全部楼层 |阅读模式
55银子
拖动一个元件鼠标抬起后会给元件添加一个向前的惯性,大佬们怎么实现呀

发表于 2021-3-4 21:56:20 | 显示全部楼层
可以试试,TweenLite 动画类库。
回复

使用道具 举报

发表于 2021-3-5 08:39:37 | 显示全部楼层
enterFrame记录一下前n帧坐标 (n不需要取太大)
(离手时坐标-离手前n帧坐标)/n=速度
离手后再继续按这个速度刷新元件坐标,通常情况还要给这个速度进行逐帧衰减,来模拟摩擦力。
回复

使用道具 举报

发表于 2021-5-6 15:19:29 | 显示全部楼层
可以自己写个算法,鼠标按下记录坐标,鼠标抬起坐标 ,然后对比两个坐标差值,用enter_frame事件,之后每帧调用算法,修改元件坐标,直到元件到达惯性停止坐标,在remove掉enter_frame 事件。
这个惯性运动就完成了。达到停止的触发条件以坐标判断用范围值判断,精度的原因,用某点判断经常终止不了这个循环。或者以执行次数判断但是要记住重置计数。
至于想表现出什么样的惯性效果 ,自行设计算法即可。
或者 T大说的TweenLite类库,自行设计参数在鼠标抬起时,执行Tweenlite,表现惯性效果。
回复

使用道具 举报

发表于 2022-4-3 19:57:37 | 显示全部楼层
可以试试tweenlite
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

感谢所有支持论坛的朋友:下面展示最新的5位赞助和充值的朋友……更多赞助和充值朋友的信息,请查看:永远的感谢名单

SGlW(66139)、 anghuo(841)、 whdsyes(255)、 longxia(60904)、 囫囵吞澡(58054)

下面展示总排行榜的前3名(T1-T3)和今年排行榜的前3名的朋友(C1-C3)……更多信息,请查看:总排行榜今年排行榜

T1. fhqu1462(969)、 T2. lwlpluto(14232)、 T3. 1367926921(962)  |  C1. anghuo(147)、 C2. fdisker(27945)、 C3. 囫囵吞澡(58054)



快速回复 返回顶部 返回列表