站长学堂
你的位置: 中国个人站长站 -- 站长学堂 -- 设计相关 -- FLASH教程 -- 文章正文 三维鼠标事件
推荐位

三维鼠标事件

中国个人站长站 FLASH教程 点击数: 更新时间:2004-10-24 16:31:14
三维鼠标事件之一
预览成品:

下载源程序


逐步说明:
  由于程序太复杂,在这里我们先给出完整程序,然后再详细讲解。

总程序

  1)此实例总共有三层:initialize层中有三个关键帧,设置了一些初始值。inv层中放的是实体名为“inv”的Movie Clip,用来捕捉鼠标和定义球体转动角度的取值。balls层中放的是实体名为“balls”的Movie Clip,并设置了Actions为:
Start Drag ("/inv", lockcenter)
 Begin Tell Target ("/balls")
  Play
 End Tell Target
Stop
  表示拉入实体名称为“inv”的Movie Clip,并开始播放实体名称为“balls”的Movie Clip。
  2)我们先来看Movie Clip:inv。用鼠标右键点击工作区中的绿色椭圆图片,在弹出的菜单中选择Edit项,

编辑菜单

进入inv编辑模式。

编辑inv

图层Layer 1中放的是隐形按钮:yxbtn。双击该按钮,弹出按钮属性对话框,切换到Actions选项卡,里面的程序为如图所示:

按钮的Actions

表示当鼠标滚到按钮上时,设置变量over的值为逻辑真,即true。由于一开始播放电影时,该Movie Clip就被拉入,所以按钮会跟着鼠标跑,只要鼠标在工作区中,变量over的值即为逻辑真。

三维鼠标事件之二

  3) 图层Layer 2中有两个关键帧,第1帧中的Actions为:
Set Variable: "xoffset" = int (xoldpos - GetProperty ("/inv",_x))
Set Variable: "yoffset" = int (GetProperty ("/inv",_y)-yoldpos)
If (((xoffset = 0 ) and (yoffset = 0)) or (not over))
 Set Variable: "/:xangle" = (/:xangle - (/:xangle / 20))
 Set Variable: "/:yangle" = (/:yangle - (/:yangle / 20))
Else
 Set Variable: "/:xangle" = yoffset
 Set Variable: "/:yangle" = xoffset
End If
If ((/:xangle > 40) )
 Set Variable: "/:xangle" = "40"
Else If ((/:xangle < -40) )
 Set Variable: "/:xangle" = "-40"
End If
If ((/:yangle > 40) )
 Set Variable: "/:yangle" = "40"
Else If ((/:yangle < -40) )
 Set Variable: "/:yangle" = "-40"
End If
Set Variable: "xoldpos" = GetProperty ("/inv",_x)
Set Variable: "yoldpos" = GetProperty ("/inv",_y)
  表示球体在X方向和Y方向的旋转角度。 第2帧的Actions为:
Go to and Play (1)
与第1帧形成循环。
  4)点击等时线窗口左上角的Scene 1按钮场景1,切换到场景1,用鼠标右键点击工作区中的球体,在弹出的菜单中选择Edit项,进入balls编辑模式。

编辑balls

图层point中放的是实体名为point的球体,图层actions中的程序表示组成三维立体模型的每个球体的属性。

佚名 文章录入:humianzhizhou    责任编辑:swh 
个人站长站与你风雨同舟!
本站所提供的资源均来源于互联网,如有侵权行为,请与本站管理员联系,我们会第一时间删除!
·如果您发现《三维鼠标事件》文章有错误,也请通知我们修改!
联系邮箱chinageren#126.com,谢谢支持!
站内搜索:
广告服务 | 友情链接 | 联系我们 | 免责声明 | 用户留言 | 网站导航
版权所有:中国个人站长站 2007-2008 未经授权禁止复制或建立镜像 客服QQ号:112731235
copyright © 2007-2008 www.ChinaGeRen.com online services. all rights reserved. 苏ICP备05000059号