这是一个wrl文件可以用来学习vrml

上传者: gongkuiwangjing | 上传时间: 2022-10-29 11:39:57 | 文件大小: 3KB | 文件类型: WRL
这是一个wrl文件可以用来学习vrml #VRML V2.0 utf8 EXTERNPROTO BlaxxunZone [ eventIn MFNode addEvents eventIn MFNode removeEvents exposedField MFNode events ][ "shared.wrl#BlaxxunZone", "http://www.blaxxun.com/vrml/protos/shared.wrl#BlaxxunZone" ] EXTERNPROTO SharedEvent [ exposedField SFString name # for accessing a special event eventIn SFColor colorFromServer eventOut SFColor colorToServer eventIn SFColor set_color eventOut SFColor color_changed eventIn SFRotation rotationFromServer eventOut SFRotation rotationToServer eventIn SFRotation set_rotation eventOut SFRotation rotation_changed eventOut SFString string_changed eventIn SFString stringFromServer ] [ "shared.wrl#SharedEvent", "http://www.blaxxun.com/vrml/protos/shared.wrl#SharedEvent" ] DEF SharedZone BlaxxunZone { events [ DEF SharedColor SharedEvent { name "newColor" } DEF SharedRotation SharedEvent { name "newRotation" } ] } DEF BoxSwitch Switch { whichChoice 0 choice [ DEF BoxRotation Transform { children [ Shape { # 红色立方体 appearance Appearance { material DEF BoxColor Material { diffuseColor 1 0 0 } } geometry Box { } } ] } ] } # 此球体用来更换颜色 Transform { translation -4 0 0 children [ Shape { appearance Appearance { material Material { diffuseColor 0 0 1 } } geometry Sphere {} }, DEF ColorSensor TouchSensor {}, DEF ColorScript Script { eventIn SFTime clicked eventIn SFString changeColor eventOut SFColor color_changed eventOut SFColor color_changed_from_bot url "vrmlscript: function clicked (value, time) { color_changed = new SFColor(Math.random(),Math.random(),Math.random()); } function changeColor (value, time) { tempColor = new SFColor(1,0,0); temp = new SFString(value); pos1 = 7; for (i=0; i<3;i++){ temp2 = new SFString(temp.substring(pos1,pos1+1)); if (temp2 == '1') tempColor[i] = 1; pos2 = temp.indexOf(' ',pos1); pos1 = pos2+1; } color_changed_from_bot = tempColor; } " } ] } # 此锥体用来旋转更换 Transform { translation 4 0 0 children [ Shape { appearance Appearance { material Material { diffuseColor 0 0 1 } } geometry Cone {} }, DEF RotSensor TouchSensor {}, DEF RotationScript Script { field MFString newurl [ "OnEvent( par1, par2 )" ] # field MFString newurl [ "javascript:OnJSEvent( )" ] field MFString param [ "" "" ] eventIn SFTime clicked eventIn SFTime set_string eventOut SFRotation rotation_changed url "vrmlscript: function clicked (value, time) { angle = Math.random()*6.283; rotation_changed = new SFRotation(0,1,0,angle); } function set_string (value, time) { newurl[0] = 'OnEvent ( ' + 'your par1 ' + ',' + 'your par2' + ')'; Browser.loadURL (newurl,param); } " } ] } Transform { translation 0 -3 0 children [ DEF ChangeString Text { string "ChangeString" } ] } Script { url "vrmlscript: function initialize() { }" } #ROUTE RotSensor.touchTime TO RotationScript.clicked ROUTE RotSensor.touchTime TO RotationScript.set_string #ROUTE RotationScript.rotation_changed TO SharedRotation.set_rotation ROUTE RotationScript.rotation_changed TO BoxRotation.set_rotation ROUTE SharedRotation.rotation_changed TO BoxRotation.rotation ROUTE ColorSensor.touchTime TO ColorScript.clicked ROUTE ColorScript.color_changed TO SharedColor.set_color ROUTE SharedColor.color_changed TO BoxColor.diffuseColor ROUTE ColorScript.color_changed_from_bot TO BoxColor.diffuseColor ROUTE SharedColor.string_changed TO ColorScript.changeColor

文件下载

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明