Flash修改:百叶窗式切换效果【AS 3.0】

2024-03-20 04:32

本文主要是介绍Flash修改:百叶窗式切换效果【AS 3.0】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  我最早是2014年在鼠标炸弹【http://mousebomb.org/2018/】的技术博客【闪界】上看到的这个效果,虽然分类打的是原创,但主要部分是鼠标炸弹在更早的时候编写的,我只算个修改者。原作品在它的博客中【http://www.flashj.cn/wp/as3-baiyechuang-qiehuan.html】。

  早在2009年,也就是Action Script 3.0发布不久,这位大佬就在还不能直接编辑3D效果的Flash CS4上纯代码写出了这个效果,其代码是相当的专业。2014年因为我要做一个展示用的Flash动画,需要过渡效果,无意间在百度上搜到了这个,但因当时自身水平不够,所以没法使用,于是自己照着它逐帧地做了一个,差点累死,效果呆板单一、一成不变,完全没有动态编写的强。当时水平有限主要是因为初识AS3.0,学艺不精,看不懂代码。

  这个效果使用了AS 3.0中一个非常有用的库GTween【https://www.gskinner.com/libraries/gtween/index.html#download】,是gskinner编写的一项具有普适性、应用便捷、功能多样的过渡效果库,Flash自带的Tween类可以说是相形见绌。有一篇文章比较好的描述了它的强大性能【https://www.cnblogs.com/rob0121/articles/1752615.html】。强烈建议广大Flash用户使用。

  然而任何产品都会更新换代,时过境迁后老版本自然被淘汰了。在2014年GTween已经更新过了,而2009年的动画代码是用老版本编写的,新版本掠去了GTweenTimeline这一辅助,setProperties也被setValues所取代。当时不懂,所以只能像饿狼一样盯着肥肉不能吃,比没肉还难受。

  2015年暑假,我用了一周全面分析了老文件的代码,对使用GTween的部分进行了适当改进,修改成功。现在这种特效已经可以用最新的GTween运行了。

以下是替换的代码,有一句老代码没回忆起来。

//设置参数-老代码
gtween.setProperties({x:toX, rotationY:toRy, rotationZ:toRz, scaleY:3, alpha:0, blurX:20});
//设置参数-新代码
gtween.setValues({x:toX, rotationY:toRy, rotationZ:toRz, scaleY:3, alpha:0, blurX:20});
//暂停-新代码
gtween.paused = true;
//设置参数-老代码
gtween.setTweenEase(Strong.easeIn);
gtween.setTweenComplete(onTweenComp);
//设置参数-新代码
gtween.ease = Strong.easeIn;
gtween.onComplete = onTweenComp;

效果如下:

查看GTween:http://www.gskinner.com/libraries/gtween/#download
下载GTween:http://www.gskinner.com/libraries/gtween/GTween_v2_01.zip
原版切换效果源文件:http://www.flashj.cn/wp/wp-content/uploads/2009/10/src.rar【可能已失效】
新版切换效果源文件:http://pan.baidu.com/s/1mgHzzuS

这篇关于Flash修改:百叶窗式切换效果【AS 3.0】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/828290

相关文章

Python实现无痛修改第三方库源码的方法详解

《Python实现无痛修改第三方库源码的方法详解》很多时候,我们下载的第三方库是不会有需求不满足的情况,但也有极少的情况,第三方库没有兼顾到需求,本文将介绍几个修改源码的操作,大家可以根据需求进行选择... 目录需求不符合模拟示例 1. 修改源文件2. 继承修改3. 猴子补丁4. 追踪局部变量需求不符合很

Linux修改pip和conda缓存路径的几种方法

《Linux修改pip和conda缓存路径的几种方法》在Python生态中,pip和conda是两种常见的软件包管理工具,它们在安装、更新和卸载软件包时都会使用缓存来提高效率,适当地修改它们的缓存路径... 目录一、pip 和 conda 的缓存机制1. pip 的缓存机制默认缓存路径2. conda 的缓

Linux修改pip临时目录方法的详解

《Linux修改pip临时目录方法的详解》在Linux系统中,pip在安装Python包时会使用临时目录(TMPDIR),但默认的临时目录可能会受到存储空间不足或权限问题的影响,所以本文将详细介绍如何... 目录引言一、为什么要修改 pip 的临时目录?1. 解决存储空间不足的问题2. 解决权限问题3. 提

JDK多版本共存并自由切换的操作指南(本文为JDK8和JDK17)

《JDK多版本共存并自由切换的操作指南(本文为JDK8和JDK17)》本文介绍了如何在Windows系统上配置多版本JDK(以JDK8和JDK17为例),并通过图文结合的方式给大家讲解了详细步骤,具有... 目录第一步 下载安装JDK第二步 配置环境变量第三步 切换JDK版本并验证可能遇到的问题前提:公司常

nvm如何切换与管理node版本

《nvm如何切换与管理node版本》:本文主要介绍nvm如何切换与管理node版本问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录nvm切换与管理node版本nvm安装nvm常用命令总结nvm切换与管理node版本nvm适用于多项目同时开发,然后项目适配no

Linux文件名修改方法大全

《Linux文件名修改方法大全》在Linux系统中,文件名修改是一个常见且重要的操作,文件名修改可以更好地管理文件和文件夹,使其更具可读性和有序性,本文将介绍三种在Linux系统下常用的文件名修改方法... 目录一、引言二、使用mv命令修改文件名三、使用rename命令修改文件名四、mv命令和rename命

mybatis-plus 实现查询表名动态修改的示例代码

《mybatis-plus实现查询表名动态修改的示例代码》通过MyBatis-Plus实现表名的动态替换,根据配置或入参选择不同的表,本文主要介绍了mybatis-plus实现查询表名动态修改的示... 目录实现数据库初始化依赖包配置读取类设置 myBATis-plus 插件测试通过 mybatis-plu

Linux下修改hostname的三种实现方式

《Linux下修改hostname的三种实现方式》:本文主要介绍Linux下修改hostname的三种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下修改ho编程stname三种方式方法1:修改配置文件方法2:hFvEWEostnamectl命

Git如何修改已提交人的用户名和邮箱

《Git如何修改已提交人的用户名和邮箱》文章介绍了如何修改Git已提交人的用户名和邮箱,包括注意事项和具体步骤,确保操作正确无误... 目录git修改已提交人的用户名和邮箱前言第一步第二步总结git修改已提交人的用户名和邮箱前言需注意以下两点内容:需要在顶层目录下(php就是 .git 文件夹所在的目

Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)

《Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)》文章介绍了如何使用dhtmlx-gantt组件来实现公司的甘特图需求,并提供了一个简单的Vue组件示例,文章还分享了一... 目录一、首先 npm 安装插件二、创建一个vue组件三、业务页面内 引用自定义组件:四、dhtmlx