VRML动画与交互功能的设计与实现三Word文档下载推荐.docx
《VRML动画与交互功能的设计与实现三Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《VRML动画与交互功能的设计与实现三Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。
三、试验步骤:
1)制作一个极薄的立方体贴上草地图片做地面
2)制作一个极薄的立方体贴上砖图片做墙壁(如下图)
3)制作旋转门元素(图如下)
4)通过空间坐标的平移,旋转,缩放等将墙和旋转门组成房子(如下图)
5)制作立方体的床和枕头
6)引用电视和风扇以及自己制作的元素组合成最终的作品
交互内容:
风扇的旋转,摇头和停止,
电视的播放
感应门的打开与关闭
使用方法:
风扇靠点击进行状态的变化
门通过人的靠近与远离改变状态(开与关)
电视机自动播放
四、试验结果:
主程序:
#VRMLV2.0utf8
Background
{
skyAngle[1.21.57]
skyColor[001
00.50.8
111]
groundAngle[1.21.571]
groundColor[0.10.10.1
0.40.30.2
0.80.80.8]
}
Shape{
appearanceAppearance{
textureImageTexture
{url"
c.gif"
}}
geometryBox{size1000.00005100}
}
Transform{translation000
children[Shape{appearanceAppearance{materialMaterial{diffuseColor000}}
geometryBox{size300.530}}]
}
Transform
translation015-15
rotation1001.571
children[Inline{url"
墙.wrl"
}]
translation0300
rotation100-1.571
rotation010-1.571
translation-15150
rotation001-1.571
translation15150
Transform
translation-111515
scale0.30.51
translation111515
scale0.311
translation01815
scale0.510.8
}Transform
translation03.215
scale1.311
感应门.wrl"
Transform{translation-100.5-12.5
scale0.50.50.5
children[Shape{appearanceAppearance{materialMaterial{}}
geometryBox{size222}}]}
translation-101-12.5
scale0.10.10.1
dianshi.wrl"
translation-13.50.5-14
scale111
chuang.wrl"
translation-122-10
rotation010-2.356
fs.wrl"
感应门程序:
Background{skyColor0.20.50.6}
Viewpoint{position0014}
Transform{translation03.10
rotation0011.571
children[Shape{appearanceAppearance{materialMaterial{
diffuseColor0.40.20
ambientIntensity0.28
shininess0.1
specularColor0.80.40}}
geometryCylinder{radius0.4
height11.6}}]}
Transform{translation0-3.10
children[Shape{appearanceAppearance{materialMaterial{
diffuseColor0.40.20
ambientIntensity0.28
specularColor0.80.40}}
geometryBox{size11.60.20.8}}]}
Transform{translation5.400
children[DEFrightShape{appearanceAppearance{materialMaterial{
geometryCylinder{radius0.4height6}}]}
Transform{translation-5.400
children[USEright]}
DEFmdoor1Transform{translation1.30-0.05
children[DEFdoor1Shape{appearanceAppearance{materialMaterial{
diffuseColor0.050.460.73
shininess0.31
specularColor111
emissiveColor0.030.040.2
transparency0.45}}
geometryBox{size2.5560.1}}]}
DEFmdoor2Transform{translation-1.30-0.05
children[USEdoor1]}
Transform{translation3.800.05
children[DEFdoor2Shape{appearanceAppearance{materialMaterial{
geometryBox{size2.660.1}}]}
Transform{translation-3.800.05
children[USEdoor2]}
DEFclock1TimeSensor{cycleInterval3}
DEFclock2TimeSensor{cycleInterval3}
DEFsensorProximitySensor{size10624}
DEFpathPositionInterpolator{key[01]
keyValue[1.30-0.05
3.80-0.05]}
DEFpath2PositionInterpolator{key[01]
keyValue[-1.30-0.05
-3.80-0.05]}
DEFpath3PositionInterpolator{key[01]keyValue[3.80-0.05
1.30-0.05]}
DEFpath4PositionInterpolator{key[01]keyValue[-3.80-0.05
-1.30-0.05]}
ROUTEsensor.enterTimeTOclock1.startTime
ROUTEclock1.fraction_changedTOpath.set_fraction
ROUTEpath.value_changedTOmdoor1.translation
ROUTEclock1.fraction_changedTOpath2.set_fraction
ROUTEpath2.value_changedTOmdoor2.translation
ROUTEsensor.exitTimeTOclock2.startTime
ROUTEclock2.fraction_changedTOpath3.set_fraction
ROUTEpath3.value_changedTOmdoor1.translation
ROUTEclock2.fraction_changedTOpath4.set_fraction
ROUTEpath4.value_changedTOmdoor2.translation
床程序:
Shape{appearanceAppearance{ma