#VRML V2.0 utf8 # Scene 5 # Satellit, Erdkugel, Hintergrund # Lichtquelle, Ton, Animation # Erde kann mit der Maus gedreht werden # Satellit beschleunigt bei Anklicken # Group { children [ # Meta-Infos Viewpoint { position 0 0 300 orientation 0 0 1 0 description "Fernansicht" }, Viewpoint { position 275 0 100 orientation 0 1 0 1 description "Nahansicht" }, Viewpoint { position 0 400 500 orientation 1 0 0 -.75 description "Ansicht von Oben" }, NavigationInfo { headlight FALSE avatarSize [1.0, 1.6, 0.75] }, # Beleuchtung DirectionalLight { direction 1.0 -0.2 -0.3 color 1.0 1.0 1.0 }, # Timer DEF RotationTimer TimeSensor { cycleInterval 30.0 loop TRUE startTime 1.0 stopTime 0.0 }, # script to generate path DEF SatPath Script { url "javascript: function set_fraction(fraction, eventTime) { value_changed[0] = r0 * Math.cos(6.28 * nTurns * fraction); value_changed[1] = 0.0; value_changed[2] = r0 * Math.sin(6.28 * nTurns * fraction); } function set_accelerate(hit, eventTime) { if (hit) { nTurns += 1.0; } }" field SFFloat nTurns 1.0 field SFFloat r0 200 eventIn SFFloat set_fraction eventIn SFBool set_accelerate eventOut SFVec3f value_changed }, # Satellit mit Ton DEF Satellite Transform { translation 200 0 0 children [ Inline { url "ers-1f.wrl" }, Sound { source AudioClip { url "ding.wav" description "Background music" loop TRUE startTime 1 stopTime 0 }, location 0 0 0 minFront 30 minBack 30 maxFront 300 maxBack 300 spatialize TRUE }, DEF SatHit TouchSensor { } ] }, # Erde mit Link DEF Earth Transform { children [ Inline { url "erde.wrl" }, DEF EarthHandle SphereSensor { } ] }, # Hintergrund Background { backUrl "stars.jpg" frontUrl "stars.jpg" leftUrl "stars.jpg" rightUrl "stars.jpg" topUrl "stars.jpg" bottomUrl "stars.jpg" } ] } # satellite circles the earth ROUTE RotationTimer.fraction_changed TO SatPath.set_fraction ROUTE SatPath.value_changed TO Satellite.set_translation # earth can be rotated manually ROUTE EarthHandle.rotation_changed TO Earth.set_rotation # when the satellite is hit the rotation accelerates ROUTE SatHit.isActive TO SatPath.set_accelerate