flash 旋转效果
菜单旋转效果是一个常见的flash效果,其原理是利用三角函数来达到旋转效果
制作思路:
制作不会动的10个小球
第一步:制作一个影片剪辑 mc,在库的属性链接选择第一帧导出,id为mc
第二步:我们采取复制的方法来制作,attachMovie函数提供了很好的复制功能
第三步:坐标确定,中心点确定,位置确定
d=2*Math.PI/9;
for(i=1;i<=9;i++)
{attachMovie("mc","mc"+i,i);
angel=i*d;
this["mc"+i]._x=200+100*Math.sin(angel);
this["mc"+i]._y=200+100*Math.cos(angel);
}
制作动的小球:
任何运动的物体都需要时间,flash也不例外,要使小球旋转起来,我们需要采取速度增量来驱使小球运行,让每一个小球的弧度都随时间改变而改变
d=2*Math.PI/9;
var speed=0;
_root.onEnterFrame=function(){
for(i=1;i<=9;i++)
{attachMovie("mc","mc"+i,i);
angel=i*d+speed;
this["mc"+i]._x=200+100*Math.sin(angel);
this["mc"+i]._y=200+100*Math.cos(angel);
speed+=0.003;
}
}
这里很容易理解,原本每一个小球的角度是恒定不变,确保了他是静止状态,但是这里使用speed这个变量来使他angel的值发生了改变,很显然每一个小球的坐标都会发生相应的改变了这个代码就可以使小球旋转起来但是它的效果还没有达到我们预期的效果,网上有很多的例子可以参考,我们需要慢慢理解起来就发现其实一点也不难
现在我改变几个值让他由圆形变成椭形
d=2*Math.PI/9;
var speed=0;
_root.onEnterFrame=function(){
for(i=1;i<=9;i++)
{attachMovie("mc","mc"+i,i);
angel=i*d+speed;
this["mc"+i]._x=230+200*Math.sin(angel);
this["mc"+i]._y=200+50*Math.cos(angel);
speed+=0.003;
}
}
d=2*Math.PI/9;
var speed=0;
_root.onEnterFrame=function(){
for(i=1;i<=9;i++)
{attachMovie("mc","mc"+i,i);
angel=i*d+speed;
this["mc"+i]._x=230+200*Math.sin(angel);
this["mc"+i]._y=200+50*Math.cos(angel);
speed+=0.003;
this["mc"+i].onRollOver=function(){
this._xscale=this._yscale*=1.2;
}
this["mc"+i].onRollOut=function(){
this._xscale=this._yscale/=1.2;
}
}
}
让鼠标对小球有所反应,这里只是增加四行简单的代码
this["mc"+i].onRollOver=function(){
this._xscale=this._yscale*=1.2;
}
this["mc"+i].onRollOut=function(){
this._xscale=this._yscale/=1.2;
}
可以认为把每一个小球都当作一个按钮使用,鼠标经过它就会产生放大缩小的原理
实现远处缩小:
d=2*Math.PI/9;
var speed=0;
_root.onEnterFrame=function(){
for(i=1;i<=9;i++)
{attachMovie("mc","mc"+i,i);
angel=i*d+speed;
this["mc"+i]._x=230+200*Math.cos(angel);
this["mc"+i]._y=200+50*Math.sin(angel);
this["mc"+i]._xscale=this["mc"+i]._yscale=50*Math.sin(angel)+70;
speed+=0.003;
this["mc"+i].onRollOver=function(){
this._xscale=this._yscale*=1.2;
}
this["mc"+i].onRollOut=function(){
this._xscale=this._yscale/=1.2;
}
}
}
添加alpha值让远景看起来有点模糊
d=2*Math.PI/9;
var speed=0;
_root.onEnterFrame=function(){
for(i=1;i<=9;i++)
{attachMovie("mc","mc"+i,i);
angel=i*d+speed;
this["mc"+i]._x=230+200*Math.cos(angel);
this["mc"+i]._y=200+50*Math.sin(angel);
this["mc"+i]._xscale=this["mc"+i]._yscale=50*Math.sin(angel)+70;
this["mc"+i]._alpha=50*Math.sin(angel)+70;
speed+=0.003;
this["mc"+i].onRollOver=function(){
this._xscale=this._yscale*=1.2;
}
this["mc"+i].onRollOut=function(){
this._xscale=this._yscale/=1.2;
}
}
}
flash 旋转效果相关推荐
- Flash 实验 球体旋转效果 引导层
球体旋转效果 引导层 要点:熟悉引导层的使用方法. 掌握使用"环形引导线"的制作动画的技巧. 注意:将一个或多个层链接到一个运动引导层,使一个或多个对象沿着同一条路径运动 ...
- flash图片如何镜像翻转_FLASH特效与实例-立体层旋转效果.
这是一个来自 Flashzone 的例子,幸运鸟只作了简单的加工.在这个示例中,同样用到了一些非常简单的 Actions ,而效果却很不错,所以通过它来进一步认 识 Actions 的用法是再好不过了 ...
- 【Android RTMP】NV21 图像旋转处理 ( 快速搭建 RTMP 服务器 Shell 脚本 | 创建 RTMP 服务器镜像 | 浏览器观看直播 | 前置 / 后置摄像头图像旋转效果展示 )
文章目录 安卓直播推流专栏博客总结 一. 编写快速搭建 RTMP 服务器 Shell 脚本 二. RTMP 快速搭建方法 三.创建阿里云 RTMP 服务器镜像 四.浏览器查看直播内容 五.前置 / 后 ...
- 有故事的网页设计——Flash网站奇妙之旅
[转]有故 事的网页设计--Flash网站奇妙之旅--by流氓兔斯基 当浏览网页时,总有那么一类网站华丽而富有趣味性.在浏览信息的同时,足够让我们眼前 一亮.它们 在充分融入动画.视频.游戏.甚至是与 ...
- Flash旋转3D展示
最近看了cloudgramer的图片空间展示,来写点特效的心思便又开始活动起来了,平常写JAVA挺枯燥的,总是想弄点好玩的来刺激一下神经,呵呵,有点不务正业的味道.虽然目前JS,Flash没有出3D的 ...
- 立体html环形幻灯片效果,XML配置的三维旋转效果焦点幻灯片
XML配置的三维旋转效果幻灯片,JS+flash+xml结构,XML中可以配置图片链接,图片标题. 这种3D图片切换效果,应用于商店等网站均十分的适合. XML中的配置: url="http ...
- TOF摄像机可以替代Flash激光雷达吗?
TOF摄像机可以替代Flash激光雷达吗? 一.基于ToF技术的Flash激光雷达 基本成像原理上ToF Camera与LiDAR相同,都采用飞行时间测距技术(包括利用APD或SPAD的直接测距法,和 ...
- 如何下载flash离线安装包
如何下载flash离线安装包 CreateTime--2018年4月14日16:02:13 Author:Marydon 1.下载地址 UpdateTime--2018年5月13日16点55分 ppa ...
- 使用 Flash Builder 的 Apple iOS 开发过程
使用 Flash Builder 的 Apple iOS 开发过程 iOS 开发和部署过程概述 构建.调试或部署 iOS 应用程序前的准备工作 在测试.调试或安装 iOS 应用程序时选择的文件 将应用 ...
- [转]优化Flash性能
原文:http://www.adobe.com/devnet/flash/articles/optimizing-flash-performance.html 翻译:http://bbs.9ria.c ...
最新文章
- TensorFlow损失函数
- python爬取天眼查存入excel表格_爬虫案例1——爬取新乡一中官网2018届高考录取名单...
- 1040 Longest Symmetric String (25 分)_15行代码AC
- 1003 我要通过!(20)(20 分)
- 与context的关系_你还不知道 OpenGL ES 和 EGL 的关系?
- [转载]ns2在linux安装过程
- DNF包管理命令在CentOS 8和RHEL 8上的使用
- 多重背包(dp专题)
- 1 CentOS 6下FastDFS实现分布式文件系统
- C#数组和集合专题2(Array)
- win10下Miracast无线投屏使用教程及异常解决方案(超详细)
- 学会这个方法,轻松为PDF文件加密,快来码住
- 搭建一个 nodejs 脚手架
- 12306崩了,90%的人都用过这三款抢票工具
- 使用 VS 打开 VC++6.0 创建的 MFC 项目
- Win10系统下安装Debian11教程
- 【CF833D】Red-Black Cobweb
- 使用调式音阶即兴 一
- 英寸和厘米的交互python_matplotlib 设置图形大小时 figsize 与 dpi 的关系
- 最严“22条措施”打击市场乱象 云南旅游“浴火重生”
热门文章
- 【传感器大赏】80cm红外距离传感器
- 揭秘seo快排原理,seo快排流量
- IBM AIX初级培训总结
- Blender2.9基础二:UV篇
- uboot利用uEnv.txt文件实现灵活功能(加载PL侧bit,修改uenvcmd,配置bootargs,配置bootm,配置bootz)
- Android Studio 之万恶 gradle
- android studio anr,Android ANR 分析
- iOS 16 中 SwiftUI 防止弹出的 sheet 视图被下滑关闭(dismiss)的新解决方案
- 如何写一份优秀的投资计划书
- java close 方法,close()方法的用法(Java初学者)