中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 图形图象 > 网页设计 > Flash
有趣 用Flash制作互动的小人
作者:未知 时间:2005-01-12 12:12 出处:互联网 责编:chinaitpower
              摘要:有趣 用Flash制作互动的小人
  我们先来看看实例的效果,场景中有六个小球,分别代表人的头、腰、手、脚,如果用鼠标拖动小人身体的任何一部分,身体的其他部分都会做出相应的动作,整个身体各部分之间位置的改变是很协调的。

  实现其实是很简单的,下面我们一步一步来制作这个实例效果。

  1、打开Flash,新建一个场景,按“Ctrl +F8”新建一个Clip,命名为“Symbol5”,类型为“Button”,用椭圆工具在此Clip的场景中绘制一个圆,并用填充工具填充一个渐变颜色,如图所示。
  2、按“Ctrl + F8”新建一个Clip,命名为“Symbol1”,类型为“MovieClip”,将上一步所制作的“Symbol5”拖到此Clip的场景中,并在“Symbol5”Clip的Action面板上面增加如下语句:on (press)

  


  this.startDrag(); //当鼠标点击的时候,拖动Clipon (release,releaseOutside)//当放开鼠标的时候,停止拖动Clip

  this.stopDrag();

  3、按“Ctrl + F8”新建一个Clip,命名为“Symbol4”,类型为“MovieClip”,用直线工具在此Clip的场景中绘制一小段直线。

  4、按“Ctrl + F8”新建一个Clip,命名为“Symbol 1copy”,类型为“MovieClip”,将第一步中制作的“Symbol5”拖到此Clip的场景中,并在“Symbol5”Clip的Action面板上面增加如下语句:on (press)

  this.startDrag();

  drag = 1;on (release, releaseOutside)

  this.stopDrag();

  drag = 0;

  5、在“Symbol1copy”Clip中,用鼠标右键单击时间轴上面的图层,选取插入一个新的图层,将第三步所制作的“Symbol4”拖到新插入图层的场景里面,选取场景中的“Symbol4”,在属性面板上面设置实例名为“link”。

  6、在“Symbol1copy”Clip中,用鼠标右键单击时间轴上面的图层,再选取插入一个新的图层,在此图层的第一帧的Action面板上面插入如下语句:

  在新插入图层的第二帧上面单击鼠标右键,选取插入空白关键帧,此时图层之间的位置应该如图所示,在第二帧的Action面板上面插入一段ActioScript代码,这段代码跟跟上一帧是一样的,需要两帧是因为要不断播放,不断的改变球之间的位置。

  7、回到影片的主场景中,用“Ctrl +L”打开图库,从图库中拖一个“Symbol1”Clip的实例到场景中,并在其的属性面板上面设置实例名为“sparent”。从图库中拖五个“Symbol1copy”Clip的实例到场景中,并分别在它们的属性面板上面设置实例名为“i1”、“i21”、“i22”、“i3”、“i2”,此时场景中应该如图所示。
  8、选取主场景中时间轴上面的第一帧,在其Action面板上面增加如下语句:elast =1.5;//分别初始化几个值inertion = 10;force = 1;i1.parent = sparent;i1.sx=30;i1.sy = 80;i2.parent = sparent;i2.sx = 0;i2.sy = 70;i3.parent=sparent;i3.sx = -30;i3.sy = 80;i21.parent = i2;i21.sx = 20;i21.sy=60;i22.parent = i2;i22.sx = -20;i22.sy = 60;s = newArray();//初始化两个数组c = new Array();for (i=0; i<180; i++)s[i]=Math.sin(i*Math.PI/90); //将数学中的Sin值保存到数组中for (i=0;i<180;i++)c[i] = Math.cos(i*Math.PI/90); //将数学中的Cos值保存到数组中

  至此,实例就制作完成了,按“Ctrl + Enter”就可以看到实例的效果。

  作者:翅膀

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有