#VRML V2.0 utf8 NavigationInfo{ type "EXAMINE" } Viewpoint{ fieldOfView .2 position 0 0 40 description "[100]"} Viewpoint{ fieldOfView .2 position 28 0 28 orientation 0 1 0 .785 description "[110]"} Viewpoint{ fieldOfView .2 position 23 23 23 orientation -1 1 0 .955 description "[111]"} DEF XForm Transform{ children[]} Script{ field SFNode XForm USE XForm directOutput TRUE url ["javascript: function initialize() { var i,j,k, n=2, is=1,js,ks, sum, Str = ''; for ( i= -n; i<= n; i++) { js = 1; sj=''; for ( j= -n; j<= n; j++) { ks = 1; sk = ''; for ( k= -n; k<= n; k++) { sum = is+js+ks; if (sum == 3) sk += 'Ti{ trans '+i+' '+k+' '+j+'}'; if (sum == 1) sk += 'O{ trans '+i+' '+k+' '+j+'}'; if (sum == -3) sk += 'Sr{ trans '+i+' '+k+' '+j+'}'; ks = -ks;} sj += sk; js = -js;} Str += sj; is = -is;} XForm.addChildren = Browser.createVrmlFromString( 'PROTO Ti[ field SFVec3f trans 0 0 0]{'+ 'Transform{ translation IS trans children[ '+ 'Shape{ appearance Appearance{ material Material{ diffuseColor 0 0 1}}'+ 'geometry Sphere{ radius 0.15 }}]}}'+ 'PROTO Sr[ field SFVec3f trans 0 0 0]{'+ 'Transform{ translation IS trans children[ '+ 'Shape{ appearance Appearance{ material Material{ diffuseColor 1 0 0}}'+ 'geometry Sphere{ radius 0.15 }}]}}'+ 'PROTO O[ field SFVec3f trans 0 0 0]{'+ 'Transform{ translation IS trans children[ '+ 'Shape{ appearance Appearance{ material Material{ diffuseColor 1 1 1}}'+ 'geometry Sphere{ radius 0.2 }}]}}' + Str ); }"] }