home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional / OS2PRO194.ISO / os2 / graphic / irit / solid6.irt < prev    next >
Text File  |  1991-09-04  |  1KB  |  52 lines

  1. #
  2. # Simple test for the surface of revolution operator. Defines the cross secotion
  3. # in line and then rotate it along Z axes.
  4. #
  5. #                Created by Gershon Elber,    Mar 89
  6. #
  7.  
  8. save_mat = view_mat;
  9. save_res = resolution;
  10.  
  11. v1  = vector( 0.6, 0.0, 0.25);
  12. v2  = vector( 0.9, 0.0, 0.25);
  13. v3  = vector( 0.9, 0.0, 0.2);
  14. v4  = vector( 0.8, 0.0, 0.2);
  15. v5  = vector( 0.8, 0.0,-0.2);
  16. v6  = vector( 0.9, 0.0,-0.2);
  17. v7  = vector( 0.9, 0.0,-0.25);
  18. v8  = vector( 0.6, 0.0,-0.25);
  19. v9  = vector( 0.6, 0.0,-0.2);
  20. v10 = vector( 0.7, 0.0,-0.2);
  21. v11 = vector( 0.7, 0.0, 0.2);
  22. v12 = vector( 0.6, 0.0, 0.2);
  23.  
  24. cross = poly( list( v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12 ) );
  25. view(list(cross), true);
  26.  
  27. resolution = 32;
  28. T1 = surfrev(cross);
  29. free(cross);
  30. interact(list(T1), false);
  31.  
  32. resolution = 16;
  33. T2 = cylin(vector(-1.0,  0.0, 0.0), vector( 2.0, 0.0, 0.0), 0.15);
  34. T3 = cylin(vector( 0.0, -1.0, 0.0), vector( 0.0, 2.0, 0.0), 0.15);
  35. view(list(T2, T3), false);
  36.  
  37. S1 = T1 - T2 - T3;
  38. free(T1);
  39. free(T2);
  40. free(T3);
  41.  
  42. final = convex(S1);
  43. free(S1);
  44.  
  45. interact(list(final), 0);
  46.  
  47. save("solid6", list(view_mat,final));
  48. free(final);
  49.  
  50. resolution = save_res;
  51. view_mat = save_mat;
  52.