1 ## Copyright (C) 2005-2012 Etienne Grossmann <etienne@egdn.net>
3 ## This program is free software; you can redistribute it and/or modify it under
4 ## the terms of the GNU General Public License as published by the Free Software
5 ## Foundation; either version 3 of the License, or (at your option) any later
8 ## This program is distributed in the hope that it will be useful, but WITHOUT
9 ## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10 ## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
13 ## You should have received a copy of the GNU General Public License along with
14 ## this program; if not, see <http://www.gnu.org/licenses/>.
16 ###key test_moving_surf
23 [x,y] = meshgrid (linspace (-1,1,C), linspace (-1,1,R));
25 z = (cos (x*2*pi) + 2*y.^2)/3;
26 z2 = (2*cos (x*2*pi) + y.^2)/3;
28 a = [x(:),y(:),z(:)]';
29 b = [x(:),y(:),z2(:)]';
32 printf ("\ntest_changing_surf \n");
34 printf (" - display a moving surface\n");
36 s1 = vrml_surf (z,"DEFcoord","foo");
38 s2 = vrml_anim ("Coordinate",[a,b,a],"foo.set_point",[0 0.5 1],5);
40 s3 = vrml_faces ([-1 -1 1 1;-1 1 1 -1;0.1 0.1 0.1 0.1], {[1 2 3 4]}, "tran",0.4,"col",[0.3 0.9 0.4]);
42 vrml_browse ([s1,s2,s3])
44 printf ("Press a key. \n"); pause ();
47 printf (" - display a moving surface w/ changing color\n");
49 c0 = rem ([1:R-1]'*ones(1,C-1) + ones(R-1,1)*[1:C-1],2)(:);
50 c1 = [0.8*c0 ,(1-c0)*0.8, 0.3*ones((R-1)*(C-1),1)]';
51 c2 = [0.3*ones((R-1)*(C-1),1), c0*0.8, 0.8*(1-c0)]';
56 s1 = vrml_surf (z,"DEFcol","bar","col",c1,"DEFcoord","foo");
58 [s2,tn] = vrml_anim ("Color",[c1,c2,c1],"bar.set_diffuseColor",[0 0.5 1],5);
60 s4 = vrml_anim ("Coordinate",[a,b,a],"foo.set_point",[0 0.5 1],tn);
62 s3 = vrml_faces ([-1 -1 1 1;-1 1 1 -1;0.1 0.1 0.1 0.1],\
63 {[1 2 3 4]},"tran",0.4,"col",[0.9 0.4 0.4]);
65 vrml_browse ([s1,s2,s3,s4])
66 printf ("Press a key. \n"); pause ();