- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5讲 VRP交互展示与Lua的应用
* 旋转模型—动画命令 * 旋转模型—动画命令 * 点击鼠标位置—获取信息 * 点击鼠标位置—获取信息 * 3 VRP脚本及Lua语言(1) * 3.1 完成场景演示 场景演示 3 VRP脚本及Lua语言(2) * 3.2 Lua语言 Lua是一种脚本编程语言,于1994年,由巴西里约热内卢天主教大学的研究人员设计开发,“Lua”这个名字是葡萄牙语单词 “月亮”。 与一般脚本语言如 PHP、Perl、JavaScript 等不同,Lua被称为是一种嵌入式 脚本语言,Lua最著名的应用是在暴雪公司的网络游戏 魔兽世界 中。 3 VRP脚本及Lua语言(3) * 3.2 Lua语言 Lua最极小 的体积和简单 的语法引人注目的特点: 以提供相对全面的功能。 以简洁 的API实现与宿主语言最方便 的接口。 3 VRP脚本及Lua语言(4) * 3.2 Lua语言—工作流程 宿主语言建立Lua解释器对象。 将宿主语言实现的Lua扩展(若有),如函数等,注册到Lua解释器中,供其使用。 读入Lua源程序或预先编译后的Lua程序(可以从文件、字符串、网络等任意来源)。 执行读入的Lua程序。 4 VRP脚本及Lua语言(5) * 3.3 Lua安装 4 VRP脚本及Lua语言(6) * 3.4 Lua应用—物体父子关系的绑定 function chushi() sys.DoScript(“粘贴物体到物体,秒针,秒中心,0”) sys.DoScript(“粘贴物体到物体,分针,分中心,0”) sys.DoScript(“粘贴物体到物体,时针,时中心,0”) end 4 VRP脚本及Lua语言(7) * 3.4 Lua应用—系统时间的获取 function chushi() m_Hour=0 (换行) m_Minute=0 (换行) m_Second=0 m_Hour=os.date(%H) m_Minute=os.date(%M) m_Second=os.date(%S) s=0 (换行) m=0 (换行) h=0 s=math.rad(m_Second*6) m=math.rad((m_Minute+(m_Second/60))*6) h=math.rad((m_Hour+(m_Minute/60))*30) ……. end 4 VRP脚本及Lua语言(8) * 3.4 Lua应用—时钟正常运转 sys.DoScript(设置定时器,运行,1,1000,运行) function shijian() s_rotate=0 m_rotate=0 h_rotate=0 s_rotate=math.rad(6) m_rotate=s_rotate/60 h_rotate=s_rotate/3600 sys.DoScript(旋转模型,秒中心,0,0/0/..s_rotate.., ) sys.DoScript(旋转模型,分中心,0,0/0/..m_rotate.., ) sys.DoScript(旋转模型,时中心,0,0/0/..h_rotate.., ) end 4 VRP脚本及Lua语言(3) * 3.4 Lua应用—视图实时刷新 sys.DoScript(设置窗口非活跃时是否保持画面刷新,1) 4 VRP脚本及Lua语言(9) * 3.4 Lua应用—滚轮控制 function start() start_xy=sys.DoScript(点击点鼠标位置) start_count= string.find(start_xy,/) start_x=string.sub(start_xy,1,(start_count-1)) sys.DoScript(设置定时器,dingwei,1,50,dingwei) end function last() last_xy=sys.DoScript(点击点鼠标位置) last_count=string.find(last_xy,/) last_x=string.sub(last_xy,1,(last_count-1)) end 4 VRP脚本及Lua语言(10) * 3.4 Lua应用—滚轮控制 function rotate() if last_xstart_x then sys.DoScript(旋转模型, 滚轮, 0, 0/0/-0.1, ) sys.DoScript(旋转模型,分中心,0,0/0/..-(m_rotate*60).., ) sys.DoScript(旋转模型,时中心,0,0/0/..-(h_rotate*300).., ) end if
您可能关注的文档
最近下载
- 实施指南《GB21345 - 2024黄磷单位产品能源消耗限额》实施指南.pptx VIP
- 吉林省德惠市第三中学2024-2025学年七年级上学期9月月考地理试题.docx VIP
- 气流干燥器设计说明书.doc VIP
- 《电子商务基础》中职电子商务专业全套教学课件.pptx
- 桶装水项目质量管理方案.docx VIP
- 地震数据采集设备的收放方法、集运箱和车辆.pdf VIP
- 压力管道壁厚及开孔补强计算.xls VIP
- 四五级拼音版 (20220824修订).pdf VIP
- 幼儿园区域留痕培训.pptx VIP
- 2025年贵州省高职(专科)分类招生中职生文化综合考试试卷(英语试题)676.pdf VIP
文档评论(0)