#VRML V2.0 utf8 ## ##:@* plane ##@ HUD Transform { translation 0 0 15 children [ DEF PLANEBG Transform { ##translation -7 5 -35 translation -25 5 -35 scale 4 4 3 children [ Transform { rotation 1 0 0 1.57 children [ Shape { appearance Appearance { material Material { diffuseColor 0.2 0.2 0.5 emissiveColor 0 0 0.4 transparency 0.6 } } geometry DEF ELEVATION ElevationGrid { normalPerVertex TRUE solid TRUE creaseAngle 1 xDimension 8 zDimension 6 xSpacing 1 zSpacing 1 height [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ] } } ] } ] } DEF TIMER TimeSensor { enabled TRUE cycleInterval 12 loop TRUE } DEF SCRIPT Script { directOutput TRUE eventIn SFFloat trigger field SFNode elevation USE ELEVATION field MFFloat height [] url "javascript: function initialize() { } function trigger(v,t) { a = v*14*3.14; d = v*2*3.14; i = 0; j = 0; sind = Math.sin(d); for(i=0;i<8;i++) { b = v*12*3.14; c = v*16*3.14; sina = Math.sin(a); for(j=0;j<6;j++) { height[i+j*8] = sina+ Math.cos(b); cc = height[i+j*8]; cc = cc + 2; cc = cc / 4; // elevation.color.color[i+j*8][2] = cc; b+=0.8*Math.sin(c); c+=0.7; } a+=sind*0.8; } elevation.set_height = height; } " } ROUTE TIMER.fraction_changed TO SCRIPT.trigger ] } ##