##:@* image ## ##@ proto PROTO ImageElement [ exposedField SFString elementType "IMAGEELEMENT" exposedField SFInt32 startLevel -1 exposedField SFInt32 endLevel -1 exposedField SFFloat width 1 exposedField SFFloat height 1 exposedField SFVec3f size 0.5 0.5 0.01 exposedField SFBool linebreak FALSE exposedField SFBool absolute FALSE exposedField MFNode children [] exposedField MFString url [] exposedField SFVec3f location 0 0 0 exposedField SFRotation rotation 0 1 0 0 exposedField SFVec3f scale 1 1 1 ## AE exposedField SFVec3f position 0 0 0 exposedField SFColor color 1 1 1 exposedField SFColor bgColor 0 0 1 exposedField SFFloat bgTransparency 1 exposedField MFString justify [ "BEGIN" ] exposedField MFString family [ "SERIF" ] exposedField SFString style "PLAIN" exposedField SFString href "" exposedField MFString parameters [] ] { ##@ body DEF TRANSFORM Transform { translation IS position children [ Transform { translation IS location scale IS scale rotation IS rotation children [ Shape { appearance Appearance { material Material { diffuseColor 1 1 1 } texture ImageTexture { url IS url } } geometry DEF BOX Box { size IS size } } ] } ] } ##@ script DEF SCRIPT Script { mustEvaluate TRUE directOutput TRUE field SFNode transform USE TRANSFORM field SFNode me USE SCRIPT field SFNode box USE BOX field SFColor bgColor IS bgColor field SFFloat bgTransparency IS bgTransparency field SFString href IS href field MFString parameters IS parameters eventIn SFTime touched url "vrmlscript: function initialize() { if(href != '') { var touch = Browser.createVrmlFromString(' TouchSensor{} '); transform.addChildren = touch; Browser.addRoute(touch[0],'touchTime',me,'touched'); } } function touched(v,t) { Browser.loadURLrel(href,parameter); // Change, this for absolute URLs // Browser.loadURL(href,parameter); } " } } ##