media @ VU
[] readme course preface I 1 2 II 3 4 III 5 6 7 IV 8 9 10 V 11 12 afterthoughts appendix references examples resources _

talk show tell print

music-dossier-helpScreen.vr

music-dossier-helpScreen.vr (wrl ) [ flux / bitmanagement / cortona / octaga ]


  
  
  PROTO BLACKBOARD [
          eventIn        SFBool isok
          eventIn        SFBool help
          eventOut SFBool        openbb
          eventIn SFBool credits
  ]
  
  {
          EXTERNPROTO Layer3D[
                  exposedField SFVec2f translation
                  exposedField SFVec2f size
                  exposedField SFNode viewpoint
                  exposedField MFNode children
          ]
          [
          "urn:inet:blaxxun.com:node:Layer3D"
          "http://www.blaxxun.com/vrml/protos/nodes.wrl#Layer3D"
          "http://www.blaxxun.com/developer/contact/3d/vrml/demo/layer/nodes.wrl#Layer3D"
          ]
  
          DEF        switch Switch {
                  whichChoice        -1
                  choice [
  
  DEF layer Layer3D        {
          viewpoint Viewpoint        {
          position 0 0 1
          }
          size 1 1
          children [
  
          # blackboard shape
                  Shape {
                          geometry Box {
                                  size 0.7 0.5 0.01
                          }
                          appearance Appearance {
                                  material Material {
                                  #        diffuseColor 1 0 0 
                                          transparency 0.4
                                  }
                          }
  
                  }
  
          # blackboard close icon
                                                  Transform {
                                                          translation        0.32 0.22 0.011
                                                          children [
                                                                  DEF butclosebb TouchSensor {
                                                                  }
                                                                  Shape {
                                                                          geometry Box {
                                                                                  size 0.05 0.05 0.0001
                                                                          }
                                                                          appearance Appearance {
                                                                                  texture ImageTexture {
                                                                                          url        "images/close.jpg"
                                                                                  }
                                                                          }
                                                                  }
                                                          ]
                                                  } 
                                                  Transform {
                                                          translation 0 .20 .01
                                                          children [
                                                                  Shape {
                                                                          geometry DEF title Text {
                                                                                  #string "De poldermolen"
                                                                                  fontStyle FontStyle {
                                                                                          size .04
                                                                                          justify "MIDDLE"
                                                                                  }
                                                                          }
                                                                  }
                                                          ]
                                                  }
                                                  Transform {
                                                          translation -0.22 0.2 .01
                                                          children [
                                                                  Shape {
                                                                          geometry DEF text Text {
                                                                                  fontStyle FontStyle {
                                                                                          size .025
                                                                                  }
                                                                          }
                                                                  }
                                                          ]
                                                  }
                                                  Transform {
                                                          translation -0.15 -0.2 .01
                                                          children [
                                                          DEF Title4 Anchor  {
                                                                  url     "intro.wrl" 
                                                                  description  "To the introduction"
                                                                  children [
                                                                  Shape {
                                                                          geometry Box {
                                                                                  size .167 .04 .0001
                                                                          }
                                                                          appearance Appearance {
                                                                                  material Material {
                                                                                          diffuseColor 1 1 1
                                                                                          emissiveColor 1 1 1
                                                                                  }
                                                                                  texture ImageTexture {
                                                                                          url "images\introduction.jpg"
                                                                                  }
                                                                          }  
                                                                  }
                                                          ]
                                                  }
                                          ]}
                                                  Transform {
                                                          translation .15 -.2 .01
                                                          children [
                                                                  DEF TS_knopCreditsLS TouchSensor {         
                                                                  }
                                                                  Shape {
                                                                          geometry Box {
                                                                                  size .167 .04 .0001
                                                                          }
                                                                          appearance Appearance {
                                                                                  texture ImageTexture {
                                                                                          url "images\credits.jpg"
                                                                                  }
                                                                          }
                                                                  }
                                                          ]
                                                  }
                                          ]
                                  }
                          ]
                  }
  
  DEF        scrbb Script {
          eventIn        SFBool help IS help
          eventIn        SFTime time
          eventIn        SFBool bbok IS isok
          eventIn        SFBool offbb
          eventIn        SFBool credits IS credits
          eventOut SFVec2f trans
  
          field SFTime begintime 0
          eventOut SFBool bb IS openbb
          eventOut SFTime        starttijd
          eventOut SFBool        on 
  
          eventOut MFString title
          eventOut MFString text
          eventOut SFVec3f size
          eventOut SFInt32 onScreen
  
          url "javascript:
  
          function initialize () {
                  trans = new SFVec2f(0,-1);
                  bb = false;
                  on = false;
                  onScreen = -1;
  
          }
  
  //         #if blackboard is ok, display title and texts
  //        function bbok (value,timer) {
  //                if (value) {
  //                        bb = true;
  //                        begintime = timer;
  //                        timerAan = true;        
  //                        size = new SFVec3f(0.1, 0.1, 0.01);
  //                        title = new MFString('              Introduction - Guide Tour');
  //                        text = new MFString(
  //                                '',
  //                            'All 31 works will be present, including:',          
  //                        '',
  //                '(1) 12 Transitory objects for human use',
  //                '',
  //                '(2) 6 Objects, performances and installations',
  //                '',
  //                '(3) 6 Video Installations',
  //                '',
  //                '(4) 7 Abramovic works');
  //                        on = true;
  //                        onScreen = -1;
  //                 }
  //        }
  
          function help(value,timer) {
                  if (value) {
                          bb = true;
                          begintime = timer;
                          timerAan = true;        
                          size = new SFVec3f(0.1, 0.1, 0.01);
                          title = new MFString('              Help');
                          text = new MFString(
                                  '',
                                  'Hi there!',
                                  'Welcome to the mini digital dossier about music.',
                                  'This is a dossier built in VRML and can be considered',
                                  'a proof of concept. For more information visit', 
                                  'www.few.vu.nl/~dossier05',
                                  ''
                              );
                          on = true;
                          onScreen = 0;
                   }
          }
  
          function credits(value,timer) {
                  if (value) {
                          bb = true;
  //                        begintime = timer;
  //                        timerAan = true;        
                          size = new SFVec3f(0.1, 0.1, 0.01);
                          title = new MFString('              Credits');
                          text = new MFString(
                                  '',
                                  'This project has been developed by students of the Vrije ', 
                                  'Universiteit van Amsterdam and the Universiteit van Amsterdam ',
                                  'as part of the course Multimedia Design Casus. This project ',
                                  'was done in cooperation with Instituut Collectie Nederland ',
                                  '(Netherlands Institute of Cultural Heritage).',
                                  '',
                                  'Contact person: Michela Negrini (michelanegrini@hotmail.com)',
                                  'Supervisor (VU Amsterdam):Anton Eliëns (eliens@cs.vu.nl)',
                                  '',
                                  'Students:',
                                  'Jina Menke, Tim Verweij, Eric de Boer, Yiwen Wang, Abeer',
                                  'Mahdi, Olaf van Zon, Jurgen Koster, Chris van Riel, Pascal', 
                                  'Snijders Blok',
                                  '                                        januari 2005                  '
                              );
                          on = true;
                          onScreen = 0;
                   }
          }
  
      // close blackboard
          function offbb (value,timer) {
                  if (value) { 
                          bb = false;
                          on = true;
                          begintime = timer;
                  }
          }
  
      // open blackboard
          function time(value) {                
                  if (bb) {
                          if (value - begintime < 2) {
                                  trans.y = 1 - 0.5 * (value - begintime);
                          } else {
                                  on = false;
                                  onScreen = 0;
                          }
  
                  }
  
                  if        (!bb) {
                          if (value - begintime < 2) {
                                  trans.y = 0.5 * (value - begintime);
                          } else {
                                  on = false;
                                  onScreen = -1;
                          }
                  }
          }
          "
  }
  
  DEF Timer TimeSensor {
          enabled        TRUE
          loop TRUE
  }
  
  ROUTE TS_knopCreditsLS.isActive        TO scrbb.credits
  ROUTE scrbb.title TO title.string
  ROUTE scrbb.text TO text.string
  ROUTE Timer.time TO        scrbb.time
  ROUTE scrbb.trans TO layer.translation
  ROUTE butclosebb.isActive TO scrbb.offbb
  ROUTE scrbb.onScreen TO        switch.whichChoice
  ROUTE scrbb.on TO Timer.enabled
  }
  
  BLACKBOARD {}
  


(C) A. Eliëns 21/5/2007

You may not copy or print any of this material without explicit permission of the author or the publisher.
In case of other copyright issues, contact the author.