Random Placement

#VRML V2.0 utf8

NavigationInfo { type "EXAMINE" }

DEF ROOT Group {
   children [
      Group {
	 children [
	    DEF TOUCH TouchSensor {}
	    Shape {
	       appearance Appearance { material Material {} }
	       geometry Sphere {}
	    }
	   ]
      }
     ]
}

DEF SCRIPT Script {
   eventIn SFBool clicked
   eventOut MFNode newNodes
   url "vrmlscript:

function clicked(val) {
   if(val) {
      size = 8;
      halfsize = size / 2.0;
      x = Math.random() * size - halfsize;
      y = Math.random() * size - halfsize;
      z = Math.random() * size - halfsize;
      newNodes = Browser.createVrmlFromString('Transform {' +
					      '  translation ' + x + ' ' + y + ' ' + z +
					      '  children Shape {' +
					      '    appearance Appearance { material Material {} }' +
					      '    geometry Box { size 1 1 1 }' +
					      '  }' +
					      '}');
   }
}

"
}

ROUTE TOUCH.isActive TO SCRIPT.clicked
ROUTE SCRIPT.newNodes TO ROOT.addChildren


mrl