| 首页 | 新闻 | 网页 | 设计 | 色彩 | 原创 | 视觉 | 素材 | 动漫 | 酷站 | 策划 | 文案 | 访谈 | 运营 | 编程 | 数据库 | 服务器 | 下载 | 图库 | 
您的位置: 幽幽天空 > 网页 > 网页制作 > Flash教程 > ActionScript教程 > 文章正文 用户登录
请问如何利用博客
利用业余时间创业
利用网站赚钱现实
站长如何利用广告
提高Google Adsen
提高Google Adsen
个人如何利用网络
网站好的盈利模式
怎么样利用英文站
利用javascri

利用简单的AS来实现空间立体图形旋转效果           

利用简单的AS来实现空间立体图形旋转效果

作者:佚名 来源:闪吧 作者: 龙族酷少 更新:2007-1-13 20:48:43 错误报告 我要投稿

点击浏览该文件

以前也发过类似效果,但总觉得不是太好理解,现在用算是比较通俗的写了个:

做法很简单,将下面的代码直接放在场景第一桢的动作面板中:重要的是明白原理……

我已经在代码上做了比较详细的注释


a = 200;
b = 200;
rx = 150;
ry = 5;
speed = 0.05;
N = 8;//以上是初始化一些变量
hu = (Math.PI/180);
angle = new Array();//定义一个数组
square = function (mc, tian) {//自定义一个函数,有两个参数
             with (mc) {
                               lineStyle(1, 0xffff00, 100);
                               beginFill(tian, 100);
                               moveTo(0, 0);
                               lineTo(30, 0);
                               lineTo(30, 30);
                               lineTo(0, 30);
                               lineTo(0, 0);
                               endFill();
             }//这个函数的主要作用是画一个正方形并进行填充
};
_root.onLoad = function() {
             for (i=1; i<=N; i++) {
       //创建N个影片,并分别在这N个影片中调用函数,在每个影片中创建一个正方形,并随机填充颜色
                                  _root.createEmptyMovieClip("mc"+i, i);
                               square(_root["mc"+i], random(0xffffff));//或者填充颜色用rgb
                               angle[i] = i*360/N;//设置创建正方形的角度
             }
};
_root.onEnterFrame = function() {
             for (i=1; i<=N; i++) {//先面用到了椭圆公式,也就是让创建的这些影片绕着椭圆轨道运动
                               this["mc"+i]._x = rx*Math.cos(hu*angle[i])+a;
                               this["mc"+i]._y = ry*Math.sin(hu*angle[i])+b;//设置创建影片的坐标,根据椭圆公式
                               this["mc"+i]._alpha = Math.sin(hu*angle[i])*40+60;//设置透明度,这里注意Y坐标方向与我们熟悉的直角坐标的Y方向相反
                               this["mc"+i]._xscale = (1-Math.abs(Math.cos(hu*angle[i])))*100;

//控制创建的正方形的X方向上的缩放,就是椭圆轨道两边的缩放程度大,正对着Y轴的不进行缩放,从而模拟空间效果
                               angle[i] += speed*(_root._xmouse-a);
             //角度的增加或者减少是根据鼠标与椭圆轨道中心点的距离来确定的,鼠标与此点距离越远,旋转速度越快
             }
};






原文件:
点击浏览该文件






文章录入:skyuu    责任编辑:skyuu 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    发表评论:
    姓名:  评 分: 1分 2分 3分 4分 5分
     
  • 严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
  • 用户需对自己在使用幽幽天空服务过程中的行为承担法律责任。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表机友个人观点,与本网站立场无关。