]> Creatis software - CreaPhase.git/blobdiff - 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
diff --git a/octave_packages/vrml-1.0.13/test_moving_surf.m b/octave_packages/vrml-1.0.13/test_moving_surf.m
new file mode 100644 (file)
index 0000000..8e3721f
--- /dev/null
@@ -0,0 +1,70 @@
+## Copyright (C) 2005-2012 Etienne Grossmann <etienne@egdn.net>
+##
+## This program is free software; you can redistribute it and/or modify it under
+## the terms of the GNU General Public License as published by the Free Software
+## Foundation; either version 3 of the License, or (at your option) any later
+## version.
+##
+## This program is distributed in the hope that it will be useful, but WITHOUT
+## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+## details.
+##
+## You should have received a copy of the GNU General Public License along with
+## this program; if not, see <http://www.gnu.org/licenses/>.
+
+###key test_moving_surf
+##
+## Test vmesh.m
+
+R = 15;
+C = 23;
+
+[x,y] = meshgrid (linspace (-1,1,C), linspace (-1,1,R));
+
+z = (cos (x*2*pi) + 2*y.^2)/3;
+z2 = (2*cos (x*2*pi) + y.^2)/3;
+
+a = [x(:),y(:),z(:)]';
+b = [x(:),y(:),z2(:)]';
+
+
+printf ("\ntest_changing_surf \n");
+if 1
+  printf (" - display a moving surface\n");
+
+  s1 = vrml_surf (z,"DEFcoord","foo");
+
+  s2 = vrml_anim ("Coordinate",[a,b,a],"foo.set_point",[0 0.5 1],5);
+
+  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]);
+
+  vrml_browse ([s1,s2,s3])
+
+  printf ("Press a key. \n"); pause ();
+end
+if 1
+  printf (" - display a moving surface w/ changing color\n");
+
+  c0 = rem ([1:R-1]'*ones(1,C-1) + ones(R-1,1)*[1:C-1],2)(:);
+  c1 = [0.8*c0                 ,(1-c0)*0.8, 0.3*ones((R-1)*(C-1),1)]';
+  c2 = [0.3*ones((R-1)*(C-1),1),    c0*0.8, 0.8*(1-c0)]';
+
+  c1 = [3 9 3]'/10;
+  c2 = [3 3 9]'/10;
+
+  s1 = vrml_surf (z,"DEFcol","bar","col",c1,"DEFcoord","foo");
+
+  [s2,tn] = vrml_anim ("Color",[c1,c2,c1],"bar.set_diffuseColor",[0 0.5 1],5);
+
+  s4 = vrml_anim ("Coordinate",[a,b,a],"foo.set_point",[0 0.5 1],tn);
+
+  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.9 0.4 0.4]);
+
+  vrml_browse ([s1,s2,s3,s4])
+  printf ("Press a key. \n"); pause ();
+end
+
+
+