收藏 分享(赏)

VRML使用说明.doc

上传人:yjrm16270 文档编号:7659950 上传时间:2019-05-23 格式:DOC 页数:15 大小:136KB
下载 相关 举报
VRML使用说明.doc_第1页
第1页 / 共15页
VRML使用说明.doc_第2页
第2页 / 共15页
VRML使用说明.doc_第3页
第3页 / 共15页
VRML使用说明.doc_第4页
第4页 / 共15页
VRML使用说明.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、VRML 工具使用说明一、浏览器使用说明1 常用快捷键Shift+鼠标前后托动:加速行走;ALT+鼠标托动:平移;CTRL+鼠标前后托动:抬头或低头2 导航工具栏二、VRML 语法结构#VRML V2.0 utf8文件头Group主编组结点Children引出成员结点Background环境结点(FOG:大气效果;SOUND:声音结点;POINtlightdirectionspotlight: 光照效果结点):空间背景(成员结点)skyAngle1.308,1.570天空角(从 X 负向到 Y 正向到 X 正向) 天空角 1,天空角 2.Y 轴正向为0,X 正向为 90 度即水平面skyCol

2、or 0.5 0.1 0.9,0.0 0.5 1.0,1.0 0.5 6.0天空色 天空色 0,.groundAngle 1.308,1.570地面角(从 X 负向到 Y 负向到 X 正向)从 Y 负向开始groundColor 0.1 0.0 0.0,0.4 0.3 0.2,0.6 0.6 0.6颜色由 R(红)G (绿)B (蓝)三色合成,数值范围从0.01.0,0.0 最弱,1.0 最强。frontUrl backUrl leftUrl rightUrl 此六个域用于为 VRML 虚拟空间分别添加前、后、左、右、上、下背景图像,以生成空 topUrl 间立方体全景图像背景一般可不指定 t

3、opUrl 和 bottomUrl 从而使地面和天空透过全景显bottomUrl 示。set_bind 入事件,与 isBound 出事件用于进行 VRML 空间背景切换。TurefalseisBound出事件,切换时为 FALSEFog大气效果结点Color r g b 定义雾的颜色fogType type密度类型,有两种值: “LINEAR”, “EXPONENTIAL”,默认为前者,在此中雾的浓度与浏览者观察物体的距离成正比,称线性雾;在后者中雾的浓度与之距离的平方成正比,也称指数雾。visibilityRange s规定了游览者在雾中的最大可视距离,在此距离以内的物体是可见的,且由近及

4、远,雾的浓度渐增,之外的不可见;默认为 0.0 表示无穷大.set_bind 入事件,与 isBound 出事件用于进行 VRML 空间背景切换。TurefalseisBound出事件,切换时为 FALSEShape实物结点:几何造型和文字结点(成员结点)appearance Appearance(外观域结点)material Material材质diffuseColor 0.8 0.8 0.8(漫反光色,默认值 0.8 0.8 0.8)specularColor 0.0 .0.0 0.0(材质的镜面反射光色 )shininess 0.2(材料表面亮度)ambientIntensity 0.2

5、(材料表面的对比度)emissiveColor 0.0 0.0 0.0(材料的发射光色)transparency 0.0(材料的透明度 0.0 不透明,1.0 完体透明)几种常用材料主要材质参数材料 diffuseColor specularColor Shininess ambientIntensity金 0.3 0.2 0.0 0.7 0.7 0.6 0.20 0.40银 0.5 0.5 0.7 0.8 0.8 0.9 0.20 0.40铜 0.4 0.2 0.0 0.8 0.4 0.0 0.10 0.28铝 0.3 0.3 0.5 0.7 0.7 0.8 0.10 0.30黄塑料 0.8

6、 0.8 0.2 0.8 0.8 0.8 0.15 0.10绿塑料 0.2 0.8 0.2 0.8 0.8 0.8 0.15 0.10蓝塑料 0.2 0.2 0.8 0.8 0.8 0.8 0.15 0.10红塑料 0.8 0.2 0.2 0.8 0.8 0.8 0.15 0.10常见颜色的 RGB 分量Red Green Blue 颜色00 00 00 黑色02 02 02 深灰06 06 06 淡灰08 08 08 浅灰10 10 10 白色10 00 00 红色00 10 00 绿色00 00 10 蓝色10 10 00 黄00 10 10 蓝绿10 00 10 绛红06 00 00 暗

7、红00 06 00 墨绿00 00 06 深蓝ImageTexture(帖图域结点)url”图像文件名“(注:要把所用图像放在 VRML 文件的保存位置)Geometry几何造型结点:BOX 长方体(size x y z(2.0 2.0 2.0));Cylinder 圆柱体(radius r(半径 (1.0);height h(高度) (2.0)) ;Cone 圆锥体(bottomRadius r(1.0),height h(2.0));sphere 球体(radius r(1.0)) Text(文本造型域)string “hello world!“fontStyle FontStylesiz

8、e 2family”SERIF”(文本字体,SANS、TYPEWRITER)style”PLAIN”(文本字型,默认为 PLANIN 普通,BOLD 加粗、ITALIC 倾斜、BLODITALIC 粗斜)horizontal TRUE(文本方向,TURE 水平,FALUS 垂直 Y 方向)justify“BEGIN”,”FIRST”(文本的对齐方式,水平时默认此值表示原点在文本左下面,“MIDDLE”, “MIDDLE”表示水平和垂直方向都按坐标系原点居中),Transform编组结点(Anchor:链接物结点;Billboard:朝向结点):坐标系变换结点相对于原点进行平移、旋转和扩缩坐标系

9、。注:此结点只对嵌套在其内的成员有效,对与之并列的结点不起作用translation -2.0 0.0 0.0规定了 X、Y、Z 方向的平移量当平移量为正时正向移反之相反,默认值(0.0 0.0 0.0),rotation x y z z规定了旋转方向和旋转量,以原点到(x y z)点的射线为旋转轴,用右手螺法则将坐标系旋转 a 弧度,当为负时倒转默认(0.0 0.0 1.0 0.0)即 Z 轴正向为轴。scale kx ky kz规定了 X、Y 、Z 方向的扩缩系数,当小于 1 时表示缩小,大于 1 表示扩大。默认值(1.0 1.0 1.0)即不扩缩。childrenShape appear

10、ance Appearancematerial MaterialdiffuseColor 0.0 1.0 0.0geometry Box size 2.0 4.0 2.0,(注:成员结点之间用逗号隔开)Transformtranslation -2.0 3.0 0.0childrenShapeappearance Appearancematerial MaterialdiffuseColor 0.0 1.0 0.0geometry Coneheight 2.4bottomRadius 2.4,Viewpoint控制结点(NavigationInfo:浏览者信息结点,ViewPoint:视点设置

11、结点;InLine:内联结点)position 2.0 5.0 20.0(指定了浏览者的位置,X ,Y,Z 默认值 0.0,0.0,10.0 即为 Z 轴正向上的一个点)orientation 1.0 0.0 0.0 -0.262(指定了浏览者的视线, x,y,z,a(旋转角度/弧度以确定浏览者的视线方向),默认值(0.0,1.0,0.0,0.0)以 Y 轴正向为旋转;(0.0,-1.0,0.0,1.570 )以 Y 轴负向按右手螺旋法视线旋转 90 度;(-1.0,0.0,0.0,1.570 )以 X 轴负向按右手螺旋法视线旋转 90 度。 )description “userVP1“(说明

12、视点名称)jump FALSE(说明了视点跳转规则,当为 TURE 时,切换到视点的过程是立即跳转中没无过渡;当为FALSE 时切换过程使用一段移动到该视点的动画来过渡)fieldOfView设置视点中视角的大小,以弧度为计量单位,大视角可产生类似广角镜头效果,用以将造型推远;小视角则产生类似远焦镜头效果,用以将造型拉近。取值范围 0.0-3.142,缺省为 0.785 即 45 度。set_bindisBoundbindTime出事件用于发出视点被切换的时间,可用来在一个给定的视点激活时开始运行一段动画或执行某个脚本程序。,Viewpointposition 10.0 0.0 5.0orie

13、ntation 0.0 1.0 0.0 0.785description “userVP2“jump FALSE,Viewpointposition 0.0 0.0 -15.0orientation 0.0 1.0 0.0 3.140description “userVP3“jump FALSENavigationInfoavatarSize 体宽,身高,步高默认为:0.25,1.6,0.75visibilityLimit 可视距离浏览者的视力,即能看到的最远距离,默认为 0.0headlight化身头灯,缺省为 TRUEtype化身者导航类型,共 5 种类型:WALK(行走) 、FLY、EX

14、AMIN(观察) 、ANY(任意) 、NONE(不使用任何方式)Speed行驶速度,单位为 VRML 单位/ 秒set_bindisBound三、内联1、内联是指在主控文件中调用对象文件,从面把对象文件创建的物体放到主控文件定义的基础环境中。Inline 结点来实现内联结点通常嵌入到一个 Transform 结点2、结构及用法TransformTranslationRotation_确定物体的方向Scale_确定物体的大小比例ChildInline 内联url”对象文件名”四、光照效果1、点光源其发射的光线好像是从空间中某个点向四周发散,其最大特点是没有方向性。PointLight通常不能规定

15、一个有限的大小光照范围,所以常用 Transform 结点嵌套来限定一个光源光照范围Location x y z光源位置,默认值为坐标原点Color r g b光线颜色 Intensity b光源亮度,默认 1.0 最亮ambientIntensity c光照效果的场景对比度, 0.0 最弱;1.0 最强;默认 0.0radius r光源的光照范围半径(取值:0.0-65535.0, 默认 100)on tf光源是否打开,TURE,FALSE,默认是打开的 TURE2、平行光照效果结点DirectionalLightDirection x y z 光线的方向,确定了一个点光线的方向是原点以该点

16、的方向,默认 0.0 0.0 -1.0Z 轴负向上的一个点,光线方向是朝着 Z 轴负向的。Color r g b Intensity bambientIntensity con tf3、锥光照效果结点从一个点发出,朝着一个方向。SpotLightLocation x y zDirection x1 y1 z1Color r g b cutOffAngle hal光锥角,中心轴与光锥母线之间的夹角,范围 0.0-1.570,默认为 0.785(45 度)beamWidth a2散射角,散射光锥的锥顶角,范围 0.0-3.142(0-180 度),默认为 1.570,一般情况下此光锥要小于锥光光锥

17、(一般来说锥光光源在散射光锥之内的光照强度是相同的,而在散射光锥和锥光光锥之间强度将逐渐减弱直到锥光光锥的边缘上变为零)intensity b ambientIntensity cradius r on tf五、声音结点VRML 能使用的音频文件的类型是 MIDI 和 WAV。SoundLocation x y z 说明音源的位置Direction x1 y1 z1声音的发射方向Intensity v说明音量大小Spatialize m说明是否是立体声maxFront maxF说明音源的有效作用范围maxBack maxBminFront minFminBack minBsource Audi

18、oClip是一个结点,使用下面域说明使用音频文件及是否循环播放该文件Rul”音频文件”Loop rPitch 1.0指定声音播放的音调因子,用以加快或减慢声音的播放速度。当其 0.0-1.0 之间时音调降调速度减慢;1.0时正常播放,大于 1。0 时升调且加快。startTime 0.0stopTime 0.0duration_changed用于在声音文件打开后,将声音的播放时间(以秒计算)发送出去,使其它节点知道当前播放声音的持续时间,所输入出的播放时间与 pitch 域规定的播放速度无关,当声音无法打开或不能确定其播放时间时,该输出为-1。isActive出事件在声音开始播放时,发送一个

19、true 事件,当声音停止时,发送一个 FALSE 事件,通过该事件可以告知其他节点当前声音文件是否正在播放。六、朝向结点能够根据浏览者位置调整自身的朝向,始终面对着浏览者。BillboardaxisOfRotation 0.0 1.0 0.0确定了一个点,旋转轴就是从原点到该点的射线,默认为 Y 正向上的一个点,即以 Y 轴旋转。Children引出物体用 shape 结点创建,或嵌入 Transform 结点,嵌入的物体将要随着游览者的移动而绕轴旋转。七、链接物结点Anchorurl “VRML/HTML 网页文件名”通常将文件放在同一位置,否则使用 URL 格式给出,如果在 URL 地址

20、后连结一个“#”和一个在 VRML 文件中已存在的 viewpoint 节点名时,则自动将给定视点设置为当前的观察点。description “状态栏描述信息”是一个字符串,网页打开后,当鼠标指向被嵌套物体时,字符串显示在浏览器的状态栏上。children若干 shape 或 Transform 结点八、节点定义及引用1、定义节点:DEF 节点名 节点 DEF A1 shapeappearance DEF app2 Appearance2、引用USE 结点名九、VRML 纹理映射使用 Appearance 节点的 texturetextureTransform 进行点、线、面方式构造的复杂造型

21、,也可使用 TextureCoordinate 节点进行精确纹理映射。1、 Texture其值可以是 ImageTexture(图像纹理)、pixeTexture(像素纹理) 、MovieTexture( 电影纹理)。对 Appearance 节点内只能使用三种映射纹理中的一种。2、 textureTransform用于对映射的纹理进行纹理坐标系变换,类似于 Transform 节点对空间坐标系的变换操作。注:纹理的坐标系与几何空间坐标系不同,其是一个两维平面坐标系(S T)S 为 X 轴,T 为 Y 轴。纹理左下角位于原点(00) ,右上角位于(11) 。默认区域为平面点(00) (10)

22、(11) (01)所围成的矩形。每重复一次使 S 或 T纹理坐标值加 1,若在负向则减 1。3、 图像纹理 ImageTextureImageTextureurl “ “repeatS true指定像素纹理是否沿 S 方向铺展repeaT true指定纹理是否沿 T 方向铺展。4、 像素纹理 PixeTexturePixeTextureImage 0 0 0用于设置对对造型进行纹理映射的像素纹理的大小和类型。其值必须为整数,分别为横、纵像素个数及像素纹理类型像素纹理类型有 4 种:单元 1是灰度纹理,使用一个字节的 16 进制数据表示灰度,0XFF 最亮, )0X00 最暗。双元 2灰度加 a

23、lpha 透明度纹理,使用二个字节的 16 进制数据表示,第一字节表灰度,第二字节表透明度。三元 3是 RGB 彩色纹理,使用 3 个字节的 16 进制数据表示,每个字节表一色四元 4是 RGB 加上 alpha 透明度纹理,使用 4 字节表示。repeatSrepeat注:VRML 像素纹理规定像纱的排列遵循从左到右、从底到上进行。第一个数表示左下角像素,最后一个表示右上角像素。5、 电影纹理 MovieTexture用于设置一个电影纹理以及将该纹理映射至几何体表面时所需要的映射参数和控制播放参数。主要有两方面的作用,一是作为电影纹理对造型进行纹理映射,二是进行纹理映射的同时同步产生电影伴音

24、。通常做为 appearance 节点的texture 域的域值。MovieTextureurl “”指定一个由高优先级到低优先级排列的电影纹理文件的列表,其可以是 MPEG1-system(包含声音和图像)或 MPEG1-video(只包含图像) 文件格式loopspeed 1.0starTime 0.0stopTime 0.0repeatSrepeatduration_changedisActive6、 纹理变换 TextureTransformTextureTransformTranslation 0.0 0.0新坐标点相对于原坐标点在 S、T 方向上的偏移距离Rotation 0.0新

25、坐标系相对于原点的旋转角度Scale 1.0 1.0在 S、T 方向上的缩放系数Center 0.0 0.0设置缩放及旋转的坐标点十、几何造型1、PointSet 几何点造型,用来制作机场指示灯或夜空中闪烁的星星等造型。其不受系统默认或人为设置光源的影响,不能进行纹理渲染,也不能进行碰撞检测。PointSetCoord NULL用来设置空间造型的位置坐标Color NULL造型着色例:geometry PointSetcoord Coordinatepoint 0.0 1.0 0.0-0.951 0.309 0.0-0.588 -0.809 0.00.588 -0.809 0.00.951 0

26、.309 0.0color Colorcolor 1.0 0.0 0.01.0 1.0 0.00.0 1.0 0.00.0 1.0 1.00.0 0.0 1.02、几何线造型IndexedLineSetCoord null 设置线造型的端点coordIndex 设置一系列用以创建一条直线或多条折线路径的坐标索引列表color null用来为线单独着色colorIndex 设置一系列用以渲染线路径的颜色colorPerVertex TRUE设置对线造型的渲染是基于端点(TRUE)还是基于线段set_coordIndex入事件用于设置新的坐标索引列表set_colorIndex入事件用于设置新的颜

27、色索引列表例:indexlineset.wrl3、几何面造型IndexedFaceSetCoord null顶点坐标coordIndex坐标索引列表texCoord null进行特殊的纹理渲染texCoordIndex 纹理渲染索引列表color null对面进行着色colorIndex 着色索引列表colorPerVertex TRUE设置对造型面着色是基于端点的还是基于面的normal设置另一个 NORMAL 结点用于指定面集中的平面或顶点的单位法向量,单位法向量用于改变场景光线的明暗渲染效果。normalIndex 设置一系列用于明暗控制的索引列表normalPerVertex TRUE

28、设置对面造型的单位法向量控制是基于顶点(TRUE)还是基于面的。ccw TRUE设置在光线模拟方程中,相对于自定义或默认单位法向量,几何造型顶点坐标系的设定方式。若为TRUE 按右手法则,为 FALSE 按左手法则。convex TRUE设置面造型中的平面是凸面(TRUE)不是凹面。solid TRUE设置集中的面是否构成一个实体( TRUE 构成)creaseAngel设置一个用弧度表示的褶皱角的阈值。如果两个相邻面的法向量间的夹角小于所设定的阈值,则两个面间的接触棱会变得模糊,大于时原样。缺省为 0。0 一般要大于等于此值。set_coordIndex入事件用于设置新坐标索引列表set_t

29、exCoordIndex入事件用于设置新纹理索引列表set_colorIndex入事件用于设置新颜色索引列表set_normalIndex入事件用以设置新的单位法向量索引列表4、地形标高造型是首先在 XOZ 坐标平面上创建一个栅格(即空间面在 XOZ 坐标平面上的投影面) ,然后再任意改变每个栅格在 Y轴上的高度,以创建不规则的相对于地平面的山脉或低谷造型(不规则空间面)ElevationGridxDimension 0xSpacing 0.0 设置在 X、Z 方向上栅格顶点的数量(其生长方向为 X 轴和 Z 轴的正方向)其值必须大于等于 0。所创建的标高栅格总数为(xDimension-1)

30、*(zDimension-1)个。zDimemsion 0zSpacing 0.0 设置在 X、Z 方向上栅格的宽度,其值必须大于等于 0,缺省为 0.0height 设置栅格顶点在 Y 方向上的海拔高度列表。注每一个栅格顶点者应设置其海拔高度,即使为 0 也不能省,且栅格顶点的排列按照先 X 方向后 Z 方向的方式进行,总个数为 xDimension*zDimension 个。texCoord null用来为节点进行特殊纹理理渲染,其域值要设置 TextureCoordinate 节点。color null用来为标高造型着色colorPerVertex true渲染是基于栅格顶点的还是基于平

31、面的normal null指定平面或顶点的单位法向量,用于改变场景光线的明暗渲染效果normalPerVertex true法向量是基于顶点的还是基于平面的ccw truesolid truecreaseAngle 0.0设置一个用弧度表示的褶皱角的阀值,夹角小于此值相邻棱变模糊,否则原样set_height入事件用来接收发送过来的栅格顶点海拔高度值,并改变该标高造型栅格顶点的高度列表5、工业挤出造型用于模拟工业加工中的一次成型挤压过程。首先在当前坐标系 XOZ 平面上构造一个二维的平面折线,再在 VRML空间中指定一条曲线作为二维平面折线的运动轨迹。ExtrusioncrossSection

32、在 xoz 平面上设置一系列的二维坐标点,依次连接这些坐标点就定义了沿挤出脊线创建挤出造型时的一个封闭或开放的轮廓线。第一个值代表 X 坐标分量,第二个值代表 Z 坐标分量。缺省状态下设置一个中心在当前坐标系原点边长为 2 的正方形轮廓。1.0 1.01.0 -1.0-1.0 -1.0-1.0 1.01.0 1.0Spine0.0 0.0 0.00.0 1.0 0.0Scale 1.0 1.0Orientation 0.0 0.0 1.0 0.0beginCap TrueendCap Trueccw Truesolid Trueconvex TruecreaseAngle 0.0set_cro

33、ssSectionset_spineset_scaleset_orientation例:Extrusion.wrl/ Extrusion1.wrl/taideng.wrl十一、动画1、 Route:路由 ,某个节点的事件出口和其他节点的事件入口之间用于传递事件的通道。注:最好把所有的 route 语句集中放置在文件末尾,而其引用的节点则放在之前。在将一个节点的出事件传递给另一个入事件时,两事件的名字不必相同,但类型必须匹配。2、 时间传感器控制时间规律变化的系统机制是时间传感器 TimeSensor 节点,用于创建一个虚拟时钟,并对动画插补器节点实施时间控制。随着时间的推移可在一个指定的时间引

34、发一个动作或者以固定的时间间隔产生输出事件。TimeSensor(注:其总是独立于所有空间坐标系之外)Enabled true传感器使能状态Loop falsecycleInterval 1.0设置时间传感器在 0.0-1.0 周期内一遍循环的具体时间长度,即时间周期,单位为 S。其值必须大于 0startTime 0.0stopTime 0.0isActive表明传感器当前是否正在运行time出事件在时间传感器开始运行后不断向外输出当前时间cycleTime每次循环起始输出一个当前时间;若 loop 为 FALSE 则只在起始运行时输出一次当前时间fraction_changed出事件在时间

35、传感器开始运行后,输出当前时间周期的完成比,其值在 0.0-1.0 之间变化,0.0表示周期起始,1.0 表示周期结束。3、 动画插补器是专为线性关键帧动画设计的一套系统动画机制。其根据所插补的关键状态的数据类型不同可分为 6 种: 颜色插补器(ColorInterpolator)ColorInterpolatorKey 设置一系列以浮点形式存在的关键点,并与接收到的入事件 set_franction 相对应。一般在 0.0-1.0 范围内取值,且要求依次递增排列。Keyvalue 设置一系列 RGB 颜色的关键状态,并与 key 的值一一对应。Set_fraction入事件用于不断接收来自时

36、间传感器发出的动画触发比值。Value_changed出事件用于将选取的 keyvalue 域 RGB 颜色的关键状态发送出去。例:ColorInterpolator.wrl 位置插补器(PositionInterpolator )PositionInterpolatorKey Keyvalue Set_fractionValue_changed例:positionInterpolator 朝向插补器(OrientationInterpolator)用于产生空间朝向旋转改变动画 标量插补器(ScalarInterpolator):产生标量改变动画,适合于对任何用单精度浮点值定义的节点域值参数的

37、动画控制 坐标插补器(CoordinateInterpolato ):用于产生 VRML 基于坐标点的复杂造型改变动画 法向量插补器(NormalInterpolator):用以产生法向量改变从而导致光线明暗变化动画十二、VRML 交互功能VRML 中的交互传感器分为四类: 接触传感器(Touchsensor)TouchsensorEnabled TrueisOver出事件当用户操作指点设备位于被传感的三维造型上时,引发该事件且事件为 True,离开时为 FALSEisActive当用户操纵指点设备指向、选取并保持选取被传感的三维造型时,引发该事件值为 TRUE 离开时为FALtouchTim

38、e事件值是释放指点设备时系统的当前时间,使用这一事件来模拟许多常见的用户操作,如用户单击并释放指点设备按键后产生的动作hitPoint_changed所指向造型表面的点的空间坐标hitNormal_changed所指向的该点所在的单位法向量hitTexCoord_changed所指向的该点所在位置的纹理坐标 环境传感器1、 平面传感器(PlaneSensor)PlaneSensorEnabled trueOffset 0.0 0.0 0.0人为设置造型被指点设备初始触发时的缺省偏移量autoOffset true设置是否在平移中自动记忆上次移动的终点位置minPosition 0.0 0.0设

39、置造型被指点设备移动时在 X、Y 方向上的最小平移位置maxPosition -1.0 -1.0isActivetrackPoint_changed出事件单击时传出实间平面上当前单击点的坐标位置translation_changed出事件在用户操纵指点设备指向被传感的三维造型、选取、保持选取并移动指点设备的情况下传感器将不断输出该事件。其值是空间平面上当前造型平移点的坐标位置注:平面传感器在激活状态下,VRML 其他指点设备传感器将不产生任何事件输出。2、 球体传感器sphereSensorEnabled trueOffset 0.0 1.0 0.0 0.0用于人为设置造型指点设备初始触发时的

40、缺省旋转量,旋转轴+旋转弧度量autoOffset true设置是否在旋转中自动记忆上次旋转的终点朝向isActivetrackPoint_changed出事件,其值是空间球体表面上当前单击点的坐标位置rotation_changed出事件其值是当前造型旋转的空间角度注:此传感器在激活状态下,VRML 其他指点设备传感器将不产生任何事件输出。3、 圆柱体传感器cylinderSensorEnabled trueOffset 0.0该值为旋转量,表示圆空间造型绕圆柱体中心轴放置的弧度偏移量autoOffset true是否在旋转中自动记忆上次旋转的终点朝向minAngle 0.0maxAngle

41、 -1.0diskAngle 0.262设置圆柱体传感器在圆盘行为和圆柱行为之间的切换角度。该值决定被传感造型的动作是像一个圆柱还是像一个圆盘在绕 Y 轴旋转。isActivetrackPoint_changedrotation_changed出事件在用户操纵指点设备指向被传感的三维造型、选取、保持选取并移动指点设备的情况下,输出该事件。其值是空间圆柱体表面上当前造型旋转的空间角注:此传感器在激活状态下,VRML 其他指点设备传感器将不产生任何事件输出。 感知传感器感知传感器只用于感知用户在场景中是否可见其中的的造型或用户与造型的接近程度。共有两种: 可视传感器(VisibilitySenso

42、r)visibilitySensorEnabled trueCenter 0.0 0.0 0.0设置当前局部坐标系中一个被感知空间区域的中心点的三维坐标。Size 0.0 0.0 0.0一个被感知空间立方体区域的大小尺寸,当为默认值时相当于 enabled=falseisActiveenterTime出事件输出用户由不可见到可见被感知区域的时间exitTime出事件输出用户由可见到不可见被感知区域的时间 接近传感器(ProximitySensor):用来从浏览者所在的方位感知用户何时进入、退出和移动于当前坐标系内的一个立方体区域,并产生多种事件输出。ProximitySensorEnabled

43、 trueCenter 0.0 0.0 0.0Size 0.0 0.0 0.0isActiveenterTimeexitTimeposition_changedorientation_changed 碰撞传感器Collision 节点用来从浏览者所在的方位检测用户何时与该组中的任何子节点造型发生了磁撞。此节点用来作为编组节点,即可单独使用也可作为其他编组节点的子节点使用。具有编组和感知双生功能。CollisionCildren Collide true设置该碰撞节点所捆绑的造型是否进行碰撞检测。Proxy null设置碰撞代体。用以替代 children 设置的造型进行碰撞检测。bboxCen

44、ter 0.0 0.0 0.0设置包围该编组节点造型(包括所有子节点)的包围盒的中心点坐标。bboxSize -1.0 -1.0 -1.0设置包围该编组节点造型的包围盒在当前坐标系 X、Y 、Z 方向上的大小。collideTime出事件用以输出传感器检测到的碰撞发生的时间addChildren入事件用以将指定节点加入到 collision 节点的子节点列表中,如果该节点已在子节点列表中,则该事件被忽略。removeChildren入事件用以将指定节点从 collision 节点的子节点列表中删除。十三、VRML 脚本设计Scripturl 用来定义节点动作,在此调用的脚本程序可以由任何 VR

45、ML 浏览器支持的语言编写,其包含的语言有 java、javascript 及自带的 VrmlScript 语言mustEvaluate FALSE设置脚本程序何时进行处理。当为 TRUE 时,每当 script 节点的某个 eventIn 入事件接收到一个新值,浏览器将立即对相应脚本程序进行处理。为使浏览器性能达到最优其值设置为 FALSE。directOutput FALSE设置脚本程序的输出是否受限制。eventIn eventTypeName eventNameeventOut eventTypeName eventNamefield fieldTypeName fieldname i

46、nitialValue(field sfint32 n定义一个私有的整型变量 n; &位与运算?)十四、其他节点1、 开关编组(switch)SwitchChoice 包含多个节点列表,序号从 0 开始whichChoice -1选择要渲染的节点2、 细节层次编组(LOD)LODLevel 设置层次节点列表,一般将第一个层次节点设置为高细节造型,其后的层次节点细节程度依次降低。Center 0.0 0.0 0.0设置细节层次模型的中心点坐标Range 设置浏览者造型与造型间的距离列表,当 level 有 N 个节点时,其应有 N-1 与之对应。其值必须大于 0,且递增排列。十五、原型及其应用1

47、、 PROTO:用以描述一个自定义的节点类型。PROTO NodeTypeNameField fieldtypename fieldname defaultValueexposedField fieldType fieldname defaultValueeventIn eventInType eventInNameeventOut eventOutType eventOutNameNodeBody2、EXTERNPROTO:用以在其他或网络上的 .wrl 文件中定义原型节点而在当前文件中加以引用。外部原型语句提供了一种使节点能跨越网络定义并引用的巨大能力,进一步提高了 VRML 的功能范畴,使用此可以将PROTO 定义的文件放在本地或 WWW 上的外部.wrl 文件中,组成原型库

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报