目 录
第一篇 基础入门篇\t(1)
第1章 虚拟现实技术及EON软件介绍\t(3)
1.1 虚拟现实技术\t(3)
1.1.1 虚拟现实技术的基本概念\t(3)
1.1.2 虚拟现实技术的发展现状\t(4)
1.1.3 虚拟现实技术的应用领域\t(5)
1.2 EON软件介绍\t(7)
1.2.1 EON软件概述\t(7)
1.2.2 EON产品家族介绍\t(8)
1.2.3 系统需求\t(9)
第2章 EON Studio入门\t(11)
2.1 如何快速获取帮助\t(11)
2.2 EON Studio工作区\t(11)
2.2.1 工作区默认视图\t(12)
2.2.2 视窗布局模式\t(12)
2.3 EON Studio视窗\t(15)
2.3.1 仿真树(Simulation Tree)视窗\t(15)
2.3.2 组件(Components)视窗\t(23)
2.3.3 属性栏(Property Bar)视窗\t(25)
2.3.4 逻辑关系(Routes)视窗\t(29)
2.3.5 蝶状(Butterfly)视窗\t(33)
2.3.6 查找(Find)视窗\t(37)
2.3.7 日志(Log)视窗\t(39)
2.4 EON Studio主菜单栏\t(41)
2.4.1 File菜单\t(41)
2.4.2 Edit菜单\t(42)
2.4.3 View菜单\t(43)
2.4.4 Simulation菜单\t(44)
2.4.5 Options菜单\t(44)
2.4.6 Window菜单\t(45)
2.4.7 Tools菜单\t(46)
2.4.8 Help菜单\t(47)
2.5 EON Studio工具栏\t(47)
2.5.1 主工具栏\t(47)
2.5.2 选择工具栏\t(49)
2.5.3 可视节点工具栏\t(49)
2.5.4 缩放工具栏\t(50)
2.5.5 状态栏\t(50)
2.6 EON Studio组件简介\t(51)
2.6.1 节点简介\t(51)
2.6.2 元件简介\t(53)
2.6.3 节点和元件的基本操作\t(59)
第3章 创建EON仿真程序\t(63)
3.1 EON中的坐标系统\t(63)
3.1.1 关于坐标系\t(63)
3.1.2 平移(Translation)\t(63)
3.1.3 旋转(Rotation)\t(63)
3.1.4 缩放比例(Scaling)\t(64)
3.1.5 缩放方向(Scaling Orientation)\t(64)
3.1.6 组合变换\t(64)
3.2 EON中的资源数据库结构\t(64)
3.3 创建EON仿真程序\t(66)
3.3.1 在EON中导入3D模型\t(67)
3.3.2 调整场景和3D模型\t(76)
3.3.3 3D模型的编辑和引用的修改\t(76)
3.3.4 给3D模型添加导航和运动\t(82)
3.3.5 给3D模型添加多媒体效果\t(84)
3.4 保存EON仿真程序\t(85)
3.4.1 EON的文件格式\t(85)
3.4.2 创建工程文件\t(86)
3.4.3 创建发布文件\t(86)
3.4.4 仿真程序的保护\t(87)
3.5 运行和监测EON仿真程序\t(88)
3.5.1 运行EON仿真程序\t(88)
3.5.2 监测EON仿真程序\t(89)
3.6 发布EON仿真程序\t(90)
第二篇 节点介绍篇\t(91)
第4章 EON节点介绍\t(93)
4.1 代理节点\t(93)
4.1.1 切换场景(ChangeSimulation)节点\t(93)
4.1.2 计数器(Counter)节点\t(93)
4.1.3 立体声(DirectSound)节点\t(94)
4.1.4 拖曳(DragDrop)节点\t(96)
4.1.5 重力(Gravitation)节点\t(97)
4.1.6 关键帧(KeyFrame)节点\t(97)
4.1.7 切换开关(Latch)节点\t(100)
4.1.8 运行外部程序(LaunchExternalProgram)节点\t(100)
4.1.9 导弹(Missile)节点\t(100)
4.1.10 运动(Motion)节点\t(101)
4.1.11 简易开关(OnOff)节点\t(101)
4.1.12 放置(Place)节点\t(102)
4.1.13 位置(Position)节点\t(102)
4.1.14 旋转(Rotate)节点\t(103)
4.1.15 自转(Spin)节点\t(103)
4.1.16 文本框(TextBox)节点\t(104)
4.1.17 提示(ToolTip)节点\t(104)
4.1.18 触发(Trigger)节点\t(105)
4.1.19 变焦(Zooming)节点\t(105)
4.2 基本节点\t(106)
4.2.1 摄像机(Camera)节点\t(106)
4.2.2 文件(File)节点\t(108)
4.2.3 框架(Frame)节点\t(108)
4.2.4 框架枢轴(FramePivot)节点\t(108)
4.2.5 群组(Group)节点\t(109)
4.2.6 多层次精细度(LevelOfDetail2)节点\t(109)
4.2.7 灯光(Light2)节点\t(110)
4.2.8 开关(Switch)节点\t(111)
4.2.9 动力开关(PowerSwitch)节点\t(112)
4.2.10 分数(Score)节点\t(112)
4.2.11 脚本(Script)节点\t(113)
4.2.12 排序(Sequence)节点\t(114)
4.2.13 系统信息(SystemInformation)节点\t(115)
4.2.14 视口(Viewport3)节点\t(116)
4.3 图形用户界面控制节点\t(118)
4.3.1 2D文本(2DText2)节点\t(118)
4.3.2 2D编辑(2DEdit2)节点\t(119)
4.3.3 2D图像(2DImage2)节点\t(119)
4.3.4 菜单(MenuItem2和PopupMenu2)节点\t(119)
4.3.5 打开/另存为文件对话框(OpenSaveDialog)节点\t(121)
4.3.6 进度条(ProgressBar2)节点\t(122)
4.3.7 滑块(Slider2)节点\t(122)
4.4 运动模型节点\t(123)
4.4.1 键盘移动(KeyMove)节点\t(124)
4.4.2 步行(Walk)节点\t(125)
4.4.3 漫游(WalkAbout)节点\t(126)
4.4.4 轨道导航(OrbitNavigation)节点\t(128)
4.4.5 导航(Navigation)节点\t(128)
4.5 传感器节点\t(128)
4.5.1 盒子感应器(BoxSensor)节点\t(128)
4.5.2 单击传感器(ClickSensor)节点\t(129)
4.5.3 键盘传感器(KeyboardSensor)节点\t(130)
4.5.4 鼠标传感器节点\t(130)
4.5.5 时间传感器(TimeSensor)节点\t(131)
4.6 运算(Operations)节点\t(132)
4.6.1 算术(Arithmetic)节点\t(132)
4.6.2 逻辑节点\t(132)
4.6.3 常数(Constant)节点\t(133)
4.6.4 转换(Converter)节点\t(133)
4.6.5 路径开关(RouteSwitch)节点\t(133)
4.7 可视(Visual)节点\t(133)
4.7.1 Mesh3节点\t(133)
4.7.2 Mesh3Properties节点\t(134)
4.7.3 ShaderMaterial节点\t(134)
4.7.4 MultiMaterial节点\t(135)
4.7.5 Shape节点\t(135)
4.7.6 Texture2和MovieTexture节点\t(135)
4.7.7 TextureResourceGroup节点\t(136)
第三篇 高级进阶篇\t(137)
第5章 EON动态加载和流\t(139)
5.1 EON动态加载简介\t(139)
5.2 创建动态加载的EON仿真程序\t(140)
5.2.1 动态元件节点\t(140)
5.2.2 具有下载域的节点\t(143)
5.2.3 制作动态元件\t(143)
5.3 设置PrototypebaseURL属性\t(144)
5.4 关于流的概念\t(145)
5.4.1 流与动态加载的区别\t(145)
5.4.2 可以使用流的节点\t(146)
第6章 EON脚本编程\t(147)
6.1 简介\t(147)
6.2 脚本编程指导\t(147)
6.2.1 什么是脚本编程\t(147)
6.2.2 一个简单的脚本编程示例\t(148)
6.2.3 在脚本节点中创建域\t(149)
6.2.4 创建子程序\t(153)
6.2.5 使用脚本程序编辑器\t(154)
6.2.6 脚本编程的注意事项\t(156)
6.2.7 访问域值\t(156)
6.2.8 脚本程序执行的内部工作机制\t(160)
6.2.9 脚本程序的调试\t(167)
6.3 脚本编编参考\t(169)
6.3.1 EON中可以进行脚本编程的对象\t(169)
6.3.2 EON基本对象\t(170)
6.3.3 EON节点对象\t(182)
6.3.4 EON域对象\t(185)
6.3.5 特殊事件\t(191)
6.3.6 特殊对象\t(193)
6.4 脚本程序应用\t(193)
6.4.1 脚本程序的一般用途\t(194)
6.4.2 发送事件功能\t(195)
第7章 EON流程控制\t(197)
7.1 什么是流程控制\t(197)
7.2 用于流程控制的节点\t(198)
7.2.1 流程节点介绍\t(198)
7.2.2 流程节点属性和域\t(198)
7.3 如何进行流程控制\t(200)
7.4 流程控制注意事项\t(201)
第8章 EonX控件编程\t(205)
8.1 EonX控件介绍\t(205)
8.1.1 什么是EonX控件\t(205)
8.1.2 什么是主机应用程序\t(205)
8.1.3 EonX控件的属性、方法和事件\t(205)
8.2 EonX控件的属性\t(206)
8.3 EonX控件的方法\t(208)
8.3.1 Start方法\t(208)
8.3.2 Stop方法\t(208)
8.3.3 Pause方法\t(208)
8.3.4 Fullsize方法\t(208)
8.3.5 SaveSnapshot方法\t(209)
8.3.6 ShowSettingsDialog方法\t(209)
8.3.7 SendEvent方法\t(209)
8.4 EonX控件的事件\t(209)
8.5 与主机应用程序通信\t(210)
8.5.1 设计EON仿真程序来进行外部通信\t(210)
8.5.2 添加外部域\t(210)
8.5.3 通过外部域接收和发送事件\t(211)
第9章 EON仿真程序的网页发布方式\t(213)
9.1 EON网页发布条件\t(213)
9.2 EON网页发布方法\t(214)
9.2.1 使用EON Web API 方法\t(214)
9.2.2 EON网页发布相关的几个文件\t(214)
9.2.3 EON变量\t(216)
9.2.4 EON函数\t(217)
9.2.5 发送和接收事件\t(219)
9.3 EON网页发布向导\t(221)
第四篇 案例应用篇\t(227)
第10章 EON动态加载示例\t(229)
第11章 数据库和文件访问示例\t(233)
11.1 访问数据库\t(233)
11.1.1 什么情况下使用数据库\t(233)
11.1.2 从数据库中读取数据\t(233)
11.1.3 添加、更新或删除数据库中的数据\t(235)
11.2 访问文件\t(236)
第12章 简单交互动画示例\t(239)
12.1 功能说明\t(239)
12.2 设计流程\t(239)
12.2.1 导入电风扇模型\t(239)
12.2.2 改变初始视角\t(241)
12.2.3 整理仿真树\t(242)
12.2.4 添加导航\t(242)
12.2.5 添加运动节点\t(243)
第13章 客厅制作仿真示例\t(247)
13.1 功能说明\t(247)
13.2 设计流程\t(247)
13.2.1 导入3D模型\t(247)
13.2.2 改变初始视角\t(248)
13.2.3 移动台灯\t(249)
13.2.4 在电视机中播放视频\t(250)
13.2.5 增加开启影片的互动功能\t(253)
13.2.6 键盘控制台灯的开关\t(254)
13.2.7 增加额外视角\t(258)
13.2.8 为客厅增加自然环境\t(259)
第14章 流程控制示例\t(261)
14.1 导入模型\t(261)
14.2 规划路径\t(262)
14.3 添加流程控制节点\t(264)
第15章 虚拟装配与拆卸示例\t(267)
15.1 功能说明\t(267)
15.2 设计流程\t(267)
15.2.1 导入3D模型\t(267)
15.2.2 整理仿真树\t(269)
15.2.3 调整模型的尺寸和视角\t(270)
15.2.4 总体设计\t(270)
15.2.5 教学模式(A_mode)设计\t(275)
15.2.6 训练模式(T_mode)设计\t(277)
第16章 EON与外部程序交互\t(281)
16.1 EonX控件与VC之间的消息传递原理\t(281)
16.2 EonX控件在VC中的具体应用\t(283)
16.2.1 建立VC应用程序框架\t(283)
16.2.2 在EON仿真程序中添加外部域\t(286)
16.2.3 在VC中编写交互代码\t(288)
参考文献\t(295)