home *** CD-ROM | disk | FTP | other *** search
/ Gold Fish 3 / goldfish_volume_3.bin / files / gfx / 3d / irit / scripts / solid4.irt < prev    next >
Encoding:
Text File  |  1993-12-30  |  1.1 KB  |  63 lines

  1. #
  2. # This solid was taken from: Geometric Modeling,
  3. # by Michael E. Mortenson page 468, figure 10.34
  4. #
  5. #                Created by Gershon Elber,    Feb 89
  6. #   Be patient - this one takes about 15 minutes on my 12Mhz 286 with co-pro.
  7. #
  8.  
  9. time(true);
  10.  
  11. save_res = resolution;
  12.  
  13. resolution = 8;
  14. T1 = CYLIN(vector( -1.1, 0.0, 0.0), vector(  2.2, 0.0, 0.0), 0.1);
  15. T2 = CYLIN(vector( -0.8, 0.0, 0.0), vector( 0.05, 0.0, 0.0), 0.15);
  16. T3 = CYLIN(vector(  0.8, 0.0, 0.0), vector(-0.05, 0.0, 0.0), 0.15);
  17.  
  18. S1 = T1 + T2 + T3;
  19. free(T1);
  20. free(T2);
  21. free(T3);
  22. S1 = convex(S1);
  23. beep();
  24. view(S1, true);
  25.  
  26. S2 = S1 * roty(90);
  27. S3 = S1 * rotz(90);
  28. beep();
  29. view(list(S2, S3), false);
  30.  
  31. S4 = S1 + S2 + S3;
  32. free(S1);
  33. free(S2);
  34. free(S3);
  35. beep();
  36. view(S4, true);
  37.  
  38. resolution = 20;
  39. T4 = sphere(vector(0.0, 0.0, 0.0), 1.0);
  40.  
  41. S5 = T4 - S4;
  42. free(S4);
  43. free(T4);
  44.  
  45. final = convex(S5);
  46. free(S5);
  47.  
  48. time(false); # In Seconds
  49.  
  50. interact(final);
  51.  
  52. save("solid4", final);
  53.  
  54. # Now make the box cut out of it:
  55. T5 = box(vector(-0.01, -0.01, -0.01), 1.5, 1.5, 1.5);
  56. cut = final - T5;
  57. cut = convex(cut);
  58.  
  59. save("solid4c", cut);
  60.  
  61. resolution = save_res;
  62.