Indice Generale Struttura Gerarchica


"Viaggio nel Sistema Solare"

MERCURIO.WRL
Il file MERCURIO.WRL definisce la struttura geometrica del pianeta Mercurio, posizionato in modo decentrato rispetto alle sue coordinate locali, in modo da permettere, una volta incluso nel file della gerarchia immediatamente superiore tramite il nodo Inline, la simulazione del moto di rivoluzione attorno al Sole lungo un'orbita circolare di raggio assegnato. Viene inoltre specificato un punto luce del tipo SpotLight solidale con il pianeta, per rafforzare l'effetto di illuminazione solare.
Il moto di rotazione viene simulato per mezzo del nodo OrientationInterpolator al quale vengono forniti tramite la dichiarazione di ROUTE degli eventi generati dal nodo TimeSensor preventivamente programmato, come ad esempio il set_rotation.

#VRML V2.0 utf8

#File MERCURIO.WRL

DEF MercurioLight Transform {
  translation 2103.2 0 0
    children [
      SpotLight {
        direction 1 0 0
        beamWidth   0.785
        cutOffAngle 0.785
        radius 38.4
        intensity 0.1
      }
    ]
  }
} 

DEF Mercurio Transform {
  translation 2180 0 0
  children [
    Shape {
      appearance Sony_Appearance {
        description "MERCURIO"
        material Material {
          diffuseColor  0.5 0.5 0.5
          emissiveColor 0 0 0
        }
        texture DEF MercurioTexture ImageTexture {
          url "..\..\images\mercurio.jpg"
        }
        textureTransform TextureTransform {
          scale 50 50
        }
      }
      geometry Sphere {
        radius 38.4
      }
    }
  ]
}

DEF MercurioTime TimeSensor {
    cycleInterval 0.5
    loop TRUE
    stopTime -1
}

DEF MercurioRotation OrientationInterpolator {
  key [0, 0.25, 0.5, 0.75, 1]
  keyValue [
    0.46 -0.88 0.0 0.0,
    0.46 -0.88 0.0 1.57,
    0.46 -0.88 0.0 3.14,
    0.46 -0.88 0.0 4.71,
    0.46 -0.88 0.0 6.28
  ]
}

ROUTE MercurioTime.fraction_changed  TO MercurioRotation.set_fraction
ROUTE MercurioRotation.value_changed TO Mercurio.set_rotation