]> Creatis software - CreaPhase.git/blob - octave_packages/vrml-1.0.13/test_moving_surf.m
Add a useful package (from Source forge) for octave
[CreaPhase.git] / octave_packages / vrml-1.0.13 / test_moving_surf.m
1 ## Copyright (C) 2005-2012 Etienne Grossmann <etienne@egdn.net>
2 ##
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
6 ## version.
7 ##
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
11 ## details.
12 ##
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/>.
15
16 ###key test_moving_surf
17 ##
18 ## Test vmesh.m
19
20 R = 15;
21 C = 23;
22
23 [x,y] = meshgrid (linspace (-1,1,C), linspace (-1,1,R));
24
25 z = (cos (x*2*pi) + 2*y.^2)/3;
26 z2 = (2*cos (x*2*pi) + y.^2)/3;
27
28 a = [x(:),y(:),z(:)]';
29 b = [x(:),y(:),z2(:)]';
30
31
32 printf ("\ntest_changing_surf \n");
33 if 1
34   printf (" - display a moving surface\n");
35
36   s1 = vrml_surf (z,"DEFcoord","foo");
37
38   s2 = vrml_anim ("Coordinate",[a,b,a],"foo.set_point",[0 0.5 1],5);
39
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]);
41
42   vrml_browse ([s1,s2,s3])
43
44   printf ("Press a key. \n"); pause ();
45 end
46 if 1
47   printf (" - display a moving surface w/ changing color\n");
48
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)]';
52
53   c1 = [3 9 3]'/10;
54   c2 = [3 3 9]'/10;
55
56   s1 = vrml_surf (z,"DEFcol","bar","col",c1,"DEFcoord","foo");
57
58   [s2,tn] = vrml_anim ("Color",[c1,c2,c1],"bar.set_diffuseColor",[0 0.5 1],5);
59
60   s4 = vrml_anim ("Coordinate",[a,b,a],"foo.set_point",[0 0.5 1],tn);
61
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]);
64
65   vrml_browse ([s1,s2,s3,s4])
66   printf ("Press a key. \n"); pause ();
67 end
68
69
70