第六讲 VRML编组和素材调用.ppt

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六讲 VRML编组和素材调用

开关节点 举例:Switch.wrl switch { choice [ Inline {url “chair1.wrl} Inline {url “chair2.wrl} ] whichChoice 0 } LOD细节层次节点 LOD细节层次节点 LOD(level of Detail) 功能:该节点根据浏览者与造型距离的远近,选择不同的细致度建立的模型,从而减少工作量,减轻CPU的负担。 当距离较远时,选择较低层次细节描绘的模型。 当距离较近时,选择较高层次细节描绘的模型。 语法: LOD{ level [ ] #exposedField MFNode center 0 0 0 #SFVec3f rang [ ] #MFFloat } LOD细节层次节点 level域 用于设定细节层次造型列表。 子节点在组节点中依据造型细节描述层次的高低排列,通常第一个子节点提供高细节造型,而后依次下降。 默认值为空,即没有细节层次造型。 center域 用于设定细节层次造型的中心坐标。 该坐标作为参考点,用于计算浏览者与造型之间的距离。 rang域 用于设定浏览者与造型之间距离的列表。 浏览器根据这个距离列表选择需要显示的level域中列出的不同细节层次的造型。 LOD细节层次节点 工作原理 首先通过计算浏览者与center域值的距离; 与rang域中的距离列表进行比较,确定选择level域的哪一个细节层次造型。 注意: 在LOD中,通常为一个对象设置三个不同层次的造型,一般不超过五个。 各个细节层次的造型创建之后,最好采用单独立的VRML文件保存,然后在LOD节点的level域中利用Inline内联节点进行引入和编组。 LOD细节层次节点 举例LOD.wrl LOD{ level [ Inline {url “chair1.wrl} Inline {url “chair2.wrl} ] range [400] } 作业 作业 依照给出的pureChair.wrl和pureTable.wrl这两个文件,根据所学制作如图所示的一个场景。 第六讲 VRML编组和素材调用 回顾: Shape{ appearance Appearance{ #外观节点 material Material{ } #材质 texture #纹理包装 textureTransform #纹理坐标转换 } geometry Box {} #几何节点 } 大纲 造型的编组与素材调用 Group编组节点 Transform变换节点 节点的定义和引用DEF/USE Inline内联结点 Anchor超级链接节点 PROTO原型的定义和调用 Switch选择开关结点 Billboard布告牌节点 LOD层次细节控制节点 造型编组 造型编组节点作用: 可以把多个造型作为自己的子节点组合成一个整体,一起进行平移、旋转、缩放、外观设计、定义和调用等操作。在设计中合理的使用组节点能减少很多重复的工作。 造型的编组与素材调用 Group编组节点 编组节点可以包含任意数目的子节点,将多个简单造型组合成一组复杂造型,作为一个整体进行设计、命名和调用。 语法: Group { children [ ] [ ] #exposedField MFNode bboxCenter 0.0 0.0 0.0 #SFVec3f bboxsize - 1 -1 -1 #SFVec3f addChildren #eventIn MFNode removeChildren #eventIn MFNode } 造型的编组与素材调用 children域 用于设定包含在该组结点中的所有子节点,通常为Shape造型节点、Transform坐标变换节点及下一层的Group结点,组节点的数目无限制。 默认为空列表。 bboxCenter域 用于设定包围该组节点所有造型的包围盒的中心点坐标。 默认值为 (0 0 0),中心点在原点。 bboxSize域 设定包围在当前包围盒的尺寸。 默认值为(-1 -1 -1),由系统设置。 addChildren入事件用于将指定节点加入到该组节点列表中。

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档