转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> JAVA开发 >> 正文
X3D实战基础讲座之十         ★★★★

X3D实战基础讲座之十

作者:闵涛 文章来源:闵涛的学习笔记 点击数:776 更新时间:2009/4/22 23:28:23
天极IT资讯短信服务 电脑小技巧
资费:包月5元
手机
介绍:细处着手,巧处用功。高手和菜鸟之间的差别就是:高手什么都知道,菜鸟知道一些。电脑小技巧收集最新奇招高招,让你轻松踏上高手之路。
  由于X3D的动画涉及到时间触发器、插值器、事件和路由等概念,因此在本讲中,我们先来看一个简单的示例,然后一步一步深入下去。

  一、 一个简单的示例



  示例的结果如下图所示:



  说明:预览后,球来回移动。

  二、 相关概念的理解

  在X3D中,动画的产生涉及到时间触发器、插值器、事件和路由的概念,下面来说明:

  1、 时间触发器TimeSensor

  触发器或者叫做传感器,是用来产生不同类型的事件。时间触发器TimeSensor是根据时间来不断产生事件,它有许多属性,通常把用于输入的属性称为域,或称为输入事件,而把输出的属性称为产生的事件,或称为输出事件。时间触发器TimeSensor的主要域有:

  cycleInterval -- 每个周期的长度,以秒为单位,取值大于0。需要说明的是:如果cycleInterval < 0.01 秒,TimeSensor 可能不起作用。

  enabled -- 若为True,当条件成立时产生时间相关事件;若为False,在任何条件下都不会产生时间相关事件。

  loop -- 表明时间传感器是无限循环,还是在一个周期后被终止。

  startTime -- 开始产生事件的时间。

  stopTime -- 终止产生事件的时间。其值若小于等于起始时间,则被忽略。

  pauseTime -- 暂停时间。若当现在时间>= pauseTime,isPaused 值变为True,暂停。

  resumeTime -- 恢复时间。当resumeTime <= 现在时间,isPaused值变为False,再次激活。

  而事件主要有:

  isActive -- 表明时间传感器当前是否在运行。若在运行,则返回True;若处于停止状态,则返回False。

  isPaused -- 表明时间传感器当前是否在暂停。

  cycleTime -- 在每个周期开始时,返回当前时间。

  fraction_changed -- 当前周期的完成比。从0(周期开始)到1(周期结束)。

  time -- 从格林威治时间1970年1月1日子时(午夜12点)至今所经过的秒数。

  2、 插值器

  计算机动画按生成的方法可以分为逐帧动画、关键帧动画和造型动画等几大类。在关键帧动画设计中,通常需要我们指定关键帧,而中间帧往往由计算机自动生成。X3D中的插值器就起到设定关键帧并自动生成中间帧的作用。它主要有颜色插值器节点(ColorInterpolator)、坐标插值器节点(CoordinateInterpolator)、法向量插值器节点(NormalInterpolator)、方向插值器节点(OrientationInterpolator)、位置插值器节点(PositionInterpolator) 和比例插值器节点(ScalarInterpolator)。除此之处,X3D还提供比较专业的插值器,如NURBS曲线系列插值器等。

  3、 事件

  事件(Events)是在 X3D 运行时环境中产生行为的主要方法,这种方法用来改变域的输入值或接受域的输出值,分别又称为发送到输入域的事件和输出域发送的事件。

  4、 路由

  路由(Route)声明允许我们在把一个节点的输出事件连接到另一个节点的输入事件上,这样可以执行复杂的行为,而不需要使用程序命令。在路由中,一个输出事件发生,相应目的的输入事件就会接受到通知,同时可以对输入事件变动做出相应的处理。这个处理可以改变节点的状态,产生额外的事件,或者改变场景图的结构。

  Route(路由)不是节点,它是一个语句。ROUTE 语句是建立指定节点的域之间通道的语法构件。ROUTE 语句可以出现在 X3D 文件的最上层,或者也可以出现在节点中任何可以使用域的地方。ROUTE 语句应该放置在路由的源节点和目的节点定义之后,而不能放置在源节点中或目的节点中。


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台