home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-385-Vol-1of3.iso / i / iritsm3s.zip / irit / ffloops.irt < prev    next >
Text File  |  1991-03-31  |  1KB  |  66 lines

  1. #
  2. # This file existance is justified to demonstrate loops on free form trans.:
  3. #
  4.  
  5. save_mat = view_mat;
  6. view_mat = view_mat * scale(vector(0.7,    0.7, 0.7));
  7.  
  8. cbzr = cbezier( list( ctlpt( P3, 1.0, 0.0, 0.0, 0.0 ),
  9.                   ctlpt( P3, 0.707, 0.707, 0.0, 0.0 ),
  10.                   ctlpt( P3, 1.0, 1.0, 1.0, 0.0 ) ) );
  11. sbzr = sbezier( list ( list( ctlpt( E3, 0.0, 0.0, 0.5 ),
  12.                      ctlpt( E3, 0.0, 0.5, -1.0 ),
  13.                      ctlpt( E3, 0.0, 1.0, 0.5 ) ),
  14.                    list( ctlpt( E3, 0.5, 0.0, -0.5 ),
  15.                      ctlpt( E3, 0.5, 0.5, 1.0 ),
  16.                      ctlpt( E3, 0.5, 1.0, -0.5 ) ),
  17.                    list( ctlpt( E3, 1.0, 0.0, 0.5 ),
  18.                      ctlpt( E3, 1.0, 0.5, -1.0 ),
  19.                      ctlpt( E3, 1.0, 1.0, 0.5 ) ) ) );
  20.  
  21. rot10x = rotx(10);
  22. rot10y = roty(10);
  23. rot10z = rotz(10);
  24.  
  25. interact(list(axes,cbzr,sbzr),0);
  26.  
  27. #
  28. # Rotate around    the X axes:
  29. #
  30.  
  31. for ( (a = 1), 1, 36,
  32.         (
  33.           (cbzr = cbzr * rot10x):
  34.           view(list(cbzr,axes), on)
  35.         )
  36.     );
  37.  
  38.  
  39. #
  40. # Rotate around    the Y axes:
  41. #
  42.  
  43. for ( (a = 1), 1, 36,
  44.         (
  45.           (sbzr = sbzr * rot10y):
  46.           view(list(sbzr,axes), on)
  47.         )
  48.     );
  49.  
  50.  
  51. #
  52. # Rotate around    the Z axes:
  53. #
  54.  
  55. for ( (a = 1), 1, 36,
  56.         (
  57.           (cbzr = cbzr * rot10z):
  58.           view(list(cbzr,axes), on)
  59.         )
  60.     );
  61.  
  62. view_mat = save_mat;
  63.  
  64. free(rot10x); free(rot10y); free(rot10z);
  65. # free(cbzr); free(sbzr);
  66.