home *** CD-ROM | disk | FTP | other *** search
/ Stars of Shareware: Raytrace & Morphing / SOS-RAYTRACE.ISO / programm / scripts / pov / chars.inc < prev    next >
Encoding:
Text File  |  1993-10-29  |  15.4 KB  |  657 lines

  1. #declare Chars_Inc_Temp=version
  2. #version 2.0
  3.  
  4. // CHARS.INC R2.0
  5. // Characters for POV-RAY V2.0
  6. // An including file.
  7. // Original by Ken Maeno 1992-93
  8. // Revised and extended by Chris Young
  9. // Revised for internal web removal by John Andersen
  10. //
  11. // This file includes 26 upper-case letter and other characters defined
  12. // as objects. The size of all characters is 4 * 5 * 1. The center of the
  13. // bottom side of a character face is set to the origin, so please
  14. // translate a character appropriately before rotating it about
  15. // the x or z axes.
  16. //      Usage:
  17. //
  18. //      object{
  19. //        char_A
  20. //        pigment{ color Red }
  21. //      }
  22. //
  23.  
  24. #declare char_A =
  25.  intersection {
  26.    box{<-2,0,-0.1>,<2,5,1.1>}
  27.    union {
  28.      box{<-0.5,-6,0>,<0.5,0,1> rotate  z*16.699 }
  29.      box{<-0.5,-6,0>,<0.5,0,1> rotate -z*16.699 }
  30.      box{<-1,  -4,0>,<1, -3,1> }
  31.      translate y*5
  32.    }
  33.    bounded_by{ box { <-2,0,0>,<2,5,1> } }
  34.  }
  35.  
  36. #declare char_P =
  37.   union {
  38.     difference{
  39.       cylinder{0*z,z,1.5}
  40.       cylinder{-z,2*z,0.5}
  41.       plane{x,0}
  42.       bounded_by{ box { <0,-1.5,0>, <1.5, 1.5, 1> } }
  43.       translate<0.5, 3.5, 0>
  44.     }
  45.     box{ <-1.001, 4, 0>, <0.501, 5, 1> }
  46.     box{ <-1.001, 2, 0>, <0.501, 3, 1> }
  47.     box{ <-2, 0, 0>, <-1, 5, 1 > }
  48.   }
  49.  
  50. #declare char_B =
  51.   union {
  52.     object{char_P}
  53.     difference{
  54.       cylinder{0*z,z,1.5}
  55.       cylinder{-z,2*z,0.5}
  56.       plane{x,0}
  57.       bounded_by{ box { <0,-1.5,0>, <1.5, 1.5, 1> } }
  58.       translate<0.5, 1.5, 0>
  59.     }
  60.     box{ <-1.001, 0, 0>, <0.501, 1, 1> }
  61.   }
  62.  
  63. #declare char_C =
  64.   union {
  65.     difference{
  66.       cylinder{0*z,z,2}
  67.       cylinder{-z,2*z,1}
  68.       plane{y,0}
  69.       bounded_by{ box { <-2,0,0>, <2,2,1> } }
  70.       translate 3*y
  71.     }
  72.     difference{
  73.       cylinder{0*z,z,2}
  74.       cylinder{-z,2*z,1}
  75.       plane{-y,0}
  76.       bounded_by{ box { <-2,-2,0>, <2,0,1> } }
  77.       translate 2*y
  78.     }
  79.     box{ <-2,1.999,0>,<-1,3.001,1> }
  80.   }
  81.  
  82. #declare char_D =
  83.   union {
  84.     difference{
  85.       cylinder{0*z,z,2.5}
  86.       cylinder{-z,2*z,1.5}
  87.       plane{x,0}
  88.       bounded_by{ box { <0,-2.5,0>, <2.5,2.5,1> } }
  89.       translate <-0.5,2.5,0>
  90.     }
  91.     box{ <-1.001,4,0>,<-0.499,5,1> }
  92.     box{ <-1.001,0,0>,<-0.499,1,1> }
  93.     box{ <-2,0,0>,<-1,5,1> }
  94.   }
  95.  
  96. #declare char_F =
  97.   union {
  98.     box{ <-2,0,0>,<-1,5,1> }
  99.     box{ <-1.001,2,0>,<1.5,3,1> }
  100.     box{ <-1.001,4,0>,<2,5,1> }
  101.   }
  102.  
  103. #declare char_E =
  104.   union {
  105.     object{char_F}
  106.     box{ <-1.001,0,0>,<2,1,1> }
  107.   }
  108.  
  109. #declare char_G =
  110.   union {
  111.     object{char_C}
  112.     box{ < 0,1.5,0>,<2,2.3,1> }
  113.   }
  114.  
  115. #declare char_H =
  116.   union {
  117.     box{ <-2,0,0>,<-1,5,1> }
  118.     box{ < 1,0,0>,< 2,5,1> }
  119.     box{ <-1.001,2,0>,< 1.001,3,1> }
  120.   }
  121.  
  122. #declare char_I =
  123.   box{ <-0.5,0,0>,<0.5,5,1> }
  124.  
  125. #declare char_J =
  126.   union {
  127.     difference{
  128.       cylinder{0*z,z,2}
  129.       cylinder{-z,2*z,1}
  130.       plane{-y,0}
  131.       bounded_by{ box { <-2,-2,0>, <2,0,1> } }
  132.       translate 2*y
  133.     }
  134.     box{ <1,1.999,0>,<2,5,1> }
  135.   }
  136.  
  137. #declare char_K =
  138.   union {
  139.     intersection {
  140.       union {
  141.         box{ <0,-2,0>,<0.9,5,1> rotate z*45  translate x*0.7272 }
  142.         box{ <0,-5,0>,<0.9,2,1> rotate -z*45 translate <0.7272,5,0> }
  143.       }
  144.       box { <-1,0,-0.1>,<2,5,1.1> }
  145.       bounded_by{ box { <-2,0,0>,<2,5,1> } }
  146.     }
  147.     box { <-2,0,0>,<-1,5,1> }
  148.   }
  149.  
  150. #declare char_L =
  151.    union {
  152.      box{ <-2,1,0>,<-1,5,1> }
  153.      box{ <-2.001,0,0>,<2,1,1>  }
  154.    }
  155.  
  156. #declare char_M =
  157.   union {
  158.     intersection{
  159.       union {
  160.         box{<-0.5,-1,0>,<0.5,5,1> rotate  z*26.5651}
  161.         box{<-0.5,-1,0>,<0.5,5,1> rotate -z*26.5651}
  162.       }
  163.       box{<-1,0,-0.1>,<1,3,1.1>}
  164.       bounded_by{box{<-2,0,0>,<2,4,1>}}
  165.       translate y*2
  166.     }
  167.     box{ <-2,0,0>,<-1,5,1> }
  168.     box{ < 1,0,0>,< 2,5,1> }
  169.   }
  170.  
  171. #declare char_N =
  172.   union {
  173.     intersection{
  174.       box{ <0,0,0>,<1,6,1> rotate z*32.5031 translate x}
  175.       box{ <-1,0,-0.1>,<1,5,1.1> }
  176.       bounded_by{box{ <-1,0,0>,<1,5,1> } }
  177.     }
  178.     box{ <-2,0,0>,<-1,5,1> }
  179.     box{ <1,0,0>,<2,5,1> }
  180.   }
  181.  
  182. #declare char_O =
  183.   union {
  184.     object {char_C}
  185.     box{ <1,1.999,0>,<2,3.001,1> }
  186.   }
  187.  
  188. #declare char_Q =
  189.   union {
  190.     object {char_O}
  191.     box{ <0,0,0>,<1,2.2,1> rotate z*45 translate x*1.29289}
  192.   }
  193.  
  194. #declare char_R =
  195.   union {
  196.     object {char_P}
  197.     intersection {
  198.       box{ <0,-2,0>,<1,5,1> rotate z*36.8699 translate x}
  199.       box{ <-1,0,-0.1>,<2,2,1.1> }
  200.       bounded_by{box{ <-1,0,0>,<2,2,1> }}
  201.     }
  202.   }
  203.  
  204. #declare char_S =
  205.   union {
  206.     intersection{
  207.       cylinder{0*z,z,1.5}
  208.       cylinder{-z,2*z,0.5 inverse}
  209.       box{<0,0,-0.1>,<1.5,1.5,1.1>}
  210.       bounded_by{ box { <0,0,0>, <1.5, 1.5, 1> } }
  211.       translate <0.5,3.5,0>
  212.     }
  213.     difference{
  214.       cylinder{0*z,z,1.5}
  215.       cylinder{-z,2*z,0.5}
  216.       plane{x,0}
  217.       bounded_by{ box { <0,-1.5,0>, <1.5, 1.5, 1> } }
  218.       translate<0.5, 1.5, 0>
  219.     }
  220.     intersection{
  221.       cylinder{0*z,z,1.5}
  222.       cylinder{-z,2*z,0.5 inverse}
  223.       box{<-1.5,-1.5,-0.1>,<0,0,1.1>}
  224.       bounded_by{ box { <-1.5,-1.5,0>, <0, 0, 1> } }
  225.       translate <-0.5,1.5,0>
  226.     }
  227.     difference{
  228.       cylinder{0*z,z,1.5}
  229.       cylinder{-z,2*z,0.5}
  230.       plane{-x,0}
  231.       bounded_by{ box { <-1.5,-1.5,0>, <0, 1.5, 1> } }
  232.       translate<-0.5, 3.5, 0>
  233.     }
  234.     box{ <-0.502,4,0>,<0.502,5,1> }
  235.     box{ <-0.502,2,0>,<0.502,3,1> }
  236.     box{ <-0.502,0,0>,<0.502,1,1> }
  237.   }
  238.  
  239. #declare char_T =
  240.   union{
  241.     box{ <-0.5,0,0>,<0.5,4,1> }
  242.     box{ <-2,  4,0>,<  2,5,1> }
  243.   }
  244.  
  245. #declare char_U =
  246.   union {
  247.     object{char_J}
  248.     box{ <-2,1.998,0>,<-1,5,1> }
  249.   }
  250.  
  251. #declare char_V =
  252.   intersection {
  253.     box{<-2,0,-0.1>,<2,5,1.1>}
  254.     union {
  255.       box{<-0.5,-1,0>,<0.5,6,1> rotate  z*16.699 }
  256.       box{<-0.5,-1,0>,<0.5,6,1> rotate -z*16.699 }
  257.     }
  258.    bounded_by{ box { <-2,0,0>,<2,5,1> } }
  259.  }
  260.  
  261. #declare char_W =
  262.   union {
  263.     intersection{
  264.       union {
  265.         box{<-0.5,-5,0>,<0.5,0,1> rotate  z*26.5651}
  266.         box{<-0.5,-5,0>,<0.5,0,1> rotate -z*26.5651}
  267.         translate 3*y
  268.       }
  269.       box{<-1,0,-0.1>,<1,3,1.1>}
  270.       bounded_by{box{<-1,0,0>,<2,3,1>}}
  271.     }
  272.     box{ <-2,0,0>,<-1,5,1> }
  273.     box{ < 1,0,0>,< 2,5,1> }
  274.   }
  275.  
  276. #declare char_X =
  277.   intersection {
  278.     box{<-2,0,-0.1>,<2,5,1.1>}
  279.     union {
  280.       box{<-0.5,-3.5,0>,<0.5,3.5,1> rotate  z*30.9}
  281.       box{<-0.5,-3.5,0>,<0.5,3.5,1> rotate -z*30.9}
  282.       translate 2.5*y
  283.     }
  284.     bounded_by{ box { <-2,0,0>,<2,5,1> } }
  285.  }
  286.  
  287. #declare char_Y =
  288.   union {
  289.     intersection {
  290.       box{<-2,2,-0.1>,<2,5,1.1>}
  291.       union {
  292.         box{<-0.5,0,0>,<0.5,3.5,1> rotate  z*30.9}
  293.         box{<-0.5,0,0>,<0.5,3.5,1> rotate -z*30.9}
  294.         translate 2.5*y
  295.       }
  296.       bounded_by{ box { <-2,2,0>,<2,5,1> } }
  297.     }
  298.     box {<-0.5,0,0>,<0.5,3,1>}
  299.  }
  300.  
  301. #declare char_Z =
  302.   union {
  303.     intersection{
  304.       box{ <0,0,0>,<1,7,1> rotate z*-29.6749 translate -2*x}
  305.       box{<-2,0,-0.1>,<2,5,1.1>}
  306.       bounded_by{ box { <-2,0,0>,<2,5,1> } }
  307.     }
  308.     box{ <-2,4,0>,<1.2,5,1> }
  309.     box{ <-1.2,0,0>,<2,1,1> }
  310.   }
  311.  
  312. #declare char_Dash =
  313.    box{ <-2,2,0>,<2,3,1> }
  314.  
  315. #declare char_Plus =
  316.    union{
  317.      box{ <-2,2,0>,<2,3,1> }
  318.      box{ <-0.5,0.5,0>,<0.5,4.5,1> }
  319.    }
  320.  
  321. #declare char_0 = object{char_O}
  322.  
  323. #declare char_1 =
  324.    union{
  325.      object{char_I}
  326.      box{ <0,-1.25,0>,<1,0,1> rotate -z*45 translate <-0.5,5,0>}
  327.      box{ <-1,0,0>,<1,1,1> }
  328.    }
  329.  
  330. #declare char_2 =
  331.   union{
  332.     intersection{
  333.       cylinder{0*z,z,1.5}
  334.       cylinder{-z,2*z,0.5 inverse}
  335.       box{<-1.5,0,-0.1>,<0,1.5,1.1>}
  336.       bounded_by{ box { <-1.5,0,0>, <0, 1.5, 1> } }
  337.       translate<-0.5, 3.5, 0>
  338.     }
  339.     intersection{
  340.       cylinder{0*z,z,1.5}
  341.       cylinder{-z,2*z,0.5 inverse}
  342.       plane{-x,0 }
  343.       plane{-y,0 rotate -z*54 }
  344.       bounded_by{ box { <0,-1.5,0>, <1.5, 1.5, 1> } }
  345.       translate <0.5,3.5,0>
  346.     }
  347.     box{<-0.501,4,0>,<0.501,5,1>}
  348.     box{<-2,0,0>,<2,1,1>}
  349.     box{<-0.999,0.5,0>,<3.5,1.5,1> rotate -z*(90+54) translate <0.5,3.5,0>}
  350.   }
  351.  
  352. #declare char_3 =
  353.   union {
  354.     intersection{
  355.       cylinder{0*z,z,1.5}
  356.       cylinder{-z,2*z,0.5 inverse}
  357.       box{<-1.5,0,-0.1>,<0,1.5,1.1>}
  358.       bounded_by{ box { <-1.5,0,0>, <0, 1.5, 1> } }
  359.       translate<-0.5, 3.5, 0>
  360.     }
  361.     difference{
  362.       cylinder{0*z,z,1.5}
  363.       cylinder{-z,2*z,0.5}
  364.       plane{x,0}
  365.       bounded_by{ box { <0,-1.5,0>, <1.5, 1.5, 1> } }
  366.       translate<0.5, 3.5, 0>
  367.     }
  368.     difference{
  369.       cylinder{0*z,z,1.5}
  370.       cylinder{-z,2*z,0.5}
  371.       plane{x,0}
  372.       bounded_by{ box { <0,-1.5,0>, <1.5, 1.5, 1> } }
  373.       translate<0.5, 1.5, 0>
  374.     }
  375.     intersection{
  376.       cylinder{0*z,z,1.5}
  377.       cylinder{-z,2*z,0.5 inverse}
  378.       box{<-1.5,-1.5,-0.1>,<0,0,1.1>}
  379.       bounded_by{ box { <-1.5,-1.5,0>, <0, 0, 1> } }
  380.       translate <-0.5,1.5,0>
  381.     }
  382.     box{ <-0.501,4,0>,<0.501,5,1> }
  383.     box{ <-0.5,2,0>,<0.501,3,1> }
  384.     box{ <-0.501,0,0>,<0.501,1,1> }
  385.   }
  386.  
  387. #declare char_4 =
  388.   union {
  389.     box {<0,0,0>,<1,5,1>}
  390.     box {<-2,1,0>,<2,2,1>}
  391.     box {<0,-1,0>,<3.6,0,1> rotate z*56.31 translate <-2,2,0>}
  392.   }
  393.  
  394. #declare char_5 =
  395.   union {
  396.     difference{
  397.       cylinder{0*z,z,1.5}
  398.       cylinder{-z,2*z,0.5}
  399.       plane{x,0}
  400.       bounded_by{ box { <0,-1.5,0>, <1.5, 1.5, 1> } }
  401.       translate<0.5, 1.5, 0>
  402.     }
  403.     intersection{
  404.       cylinder{0*z,z,1.5}
  405.       cylinder{-z,2*z,0.5 inverse}
  406.       box{<-1.5,-1.5,-0.1>,<0,0,1.1>}
  407.       bounded_by{ box { <-1.5,-1.5,0>, <0, 0, 1> } }
  408.       translate <-0.5,1.5,0>
  409.     }
  410.     box{ <-1.001,4,0>,<2,5,1> }
  411.     box{ <-2,2,0>,<-1,5,1> }
  412.     box{ <-1.001,2,0>,<0.501,3,1> }
  413.     box{ <-0.501,0,0>,<0.501,1,1> }
  414.   }
  415.  
  416. #declare char_6 =
  417.   union {
  418.     intersection{
  419.       cylinder{0*z,z,1.5}
  420.       cylinder{-z,2*z,0.5 inverse}
  421.       box{<0,0,-0.1>,<1.5,1.5,1.1>}
  422.       bounded_by{ box { <0,0,0>, <1.5, 1.5, 1> } }
  423.       translate <0.5,3.5,0>
  424.     }
  425.     intersection{
  426.       cylinder{0*z,z,1.5}
  427.       cylinder{-z,2*z,0.5 inverse}
  428.       box{<-1.5,0,-0.1>,<0,1.5,1.1>}
  429.       bounded_by{ box { <-1.5,0,0>, <0,1.5,1> } }
  430.       translate<-0.5, 3.5, 0>
  431.     }
  432.     difference{
  433.       cylinder{0*z,z,1.5}
  434.       cylinder{-z,2*z,0.5}
  435.       plane{x,0}
  436.       bounded_by{ box { <0,-1.5,0>, <1.5, 1.5, 1> } }
  437.       translate<0.5, 1.5, 0>
  438.     }
  439.     difference{
  440.       cylinder{0*z,z,1.5}
  441.       cylinder{-z,2*z,0.5}
  442.       plane{-x,0}
  443.       bounded_by{ box { <-1.5,-1.5,0>, <0, 1.5, 1> } }
  444.       translate <-0.5,1.5,0>
  445.     }
  446.     box{ <-0.501,4,0>,<0.501,5,1> }
  447.     box{ <-2,1.5,0>,<-1,3.501,1> }
  448.     box{ <-0.501,2,0>,<0.501,3,1> }
  449.     box{ <-0.501,0,0>,<0.501,1,1> }
  450.   }
  451.  
  452. #declare char_7 =
  453.   union{
  454.     box{ <-2,  4,0>,<  2,5,1> }
  455.     intersection {
  456.       box{ <-1,-1,0>,<0,4.272,1> rotate -z*20.556 translate x/2}
  457.       box{<-0.5,0,-0.1>,<2,4.5,1.1>}
  458.       bounded_by{box{<-0.5,0,-0>,<2,4.5,1>}}
  459.     }
  460.   }
  461.  
  462. #declare char_8 =
  463.   union {
  464.     difference{
  465.       cylinder{0*z,z,1.5}
  466.       cylinder{-z,2*z,0.5}
  467.       plane{-x,0}
  468.       bounded_by{ box { <-1.5,-1.5,0>, <0, 1.5, 1> } }
  469.       translate<-0.5, 3.5, 0>
  470.     }
  471.     difference{
  472.       cylinder{0*z,z,1.5}
  473.       cylinder{-z,2*z,0.5}
  474.       plane{x,0}
  475.       bounded_by{ box { <0,-1.5,0>, <1.5, 1.5, 1> } }
  476.       translate<0.5, 3.5, 0>
  477.     }
  478.     difference{
  479.       cylinder{0*z,z,1.5}
  480.       cylinder{-z,2*z,0.5}
  481.       plane{x,0}
  482.       bounded_by{ box { <0,-1.5,0>, <1.5, 1.5, 1> } }
  483.       translate<0.5, 1.5, 0>
  484.     }
  485.     difference{
  486.       cylinder{0*z,z,1.5}
  487.       cylinder{-z,2*z,0.5}
  488.       plane{-x,0}
  489.       bounded_by{ box { <-1.5,-1.5,0>, <0, 1.5, 1> } }
  490.       translate <-0.5,1.5,0>
  491.     }
  492.     box{ <-0.501,4,0>,<0.501,5,1> }
  493.     box{ <-0.501,2,0>,<0.501,3,1> }
  494.     box{ <-0.501,0,0>,<0.501,1,1> }
  495.   }
  496.  
  497. #declare char_9 =
  498.   object{char_6 translate -2.5*y rotate z*180 translate 2.5*y}
  499.  
  500. #declare char_ExclPt=
  501.   union {
  502.     cylinder {<0,4.5,0>,<0,4.5,1>,0.5}
  503.     cylinder {<0,0.5,0>,<0,0.5,1>,0.5}
  504.     intersection {
  505.       box{<-0.5,-3,0>,<0.5,0,1> rotate  z*9.5}
  506.       box{<-0.5,-3,-0.1>,<0.5,0,1.1> rotate -z*9.5 }
  507.       bounded_by{box{<-0.5,-3,0>,<0.5,0,1> }}
  508.       translate y*4.5
  509.     }
  510.   }
  511.  
  512. #declare char_AtSign =
  513.   union {
  514.     difference{
  515.       cylinder{0*z,z,2}
  516.       cylinder{-z,2*z,1.5}
  517.       box { <0,-1.25,-0.1>, <2.5,0,1.1> }
  518.       bounded_by{ box { <-2,-2,0>, <2,2,1> } }
  519.       translate 2.5*y
  520.     }
  521.     difference{
  522.       cylinder{0*z,z,0.75}
  523.       cylinder{-z,2*z,0.25}
  524.       plane{-y,0}
  525.       bounded_by{ box { <-2,-2,0>, <2,0,1> } }
  526.       translate <1.25,2.5,0>
  527.     }
  528.     difference{
  529.       cylinder{0*z,z,1}
  530.       cylinder{-z,2*z,0.5}
  531.       bounded_by{ box { <-1,-1,0>, <1,1,1> } }
  532.       translate 2.5*y
  533.     }
  534.   }
  535.  
  536. #declare char_Num =
  537.   union {
  538.     box{ <-0.5,-2,0>,<0.5,2,1> rotate -10*z translate <-1,2.5,0>}
  539.     box{ <-0.5,-2,0>,<0.5,2,1> rotate -10*z translate < 1,2.5,0>}
  540.     box{ <-1.5,3,0>,< 2,4,1> }
  541.     box{ <-2,1,0>,< 1.5,2,1> }
  542.   }
  543.  
  544. #declare char_Dol =
  545.   union {
  546.     difference{
  547.       cylinder{0*z,z,1.25}
  548.       cylinder{-z,2*z,0.25}
  549.       plane{x,0}
  550.       bounded_by{ box { <0,-1.25,0>, <1.25, 1.25, 1> } }
  551.       translate<0.75, 1.75, 0>
  552.     }
  553.     difference{
  554.       cylinder{0*z,z,1.25}
  555.       cylinder{-z,2*z,0.25}
  556.       plane{-x,0}
  557.       bounded_by{ box { <-1.25,-1.25,0>, <0, 1.25, 1> } }
  558.       translate<-0.75, 3.25, 0>
  559.     }
  560.     box{ <-0.751,3.5,0>,<2,4.5,1> }
  561.     box{ <-0.751,2,0>,<0.751,3,1> }
  562.     box{ <-2,0.5,0>,<0.751,1.5,1> }
  563.     box{ <-0.5,0,0>,<0.5,5,1> }
  564.   }
  565.  
  566. #declare char_Perc =
  567.   union {
  568.     difference{
  569.       cylinder{0*z,z,1}
  570.       cylinder{-z,2*z,0.25}
  571.       bounded_by{ box { <-1,-1,0>, <1, 1, 1> } }
  572.       translate<1, 1, 0>
  573.     }
  574.     difference{
  575.       cylinder{0*z,z,1}
  576.       cylinder{-z,2*z,0.25}
  577.       bounded_by{ box { <-1,-1,0>, <1, 1, 1> } }
  578.       translate<-1, 4, 0>
  579.     }
  580.     box{ <-0.25,-2.8,0>,<0.25,2.8,1> rotate -33*z translate 2.5*y}
  581.   }
  582.  
  583. #declare char_Hat =
  584.   intersection {
  585.     union {
  586.       box{ <0,0,0>,<1,3,1>  rotate -33*z translate <-2,1.5,0>}
  587.       box{ <-1,0,0>,<0,3,1> rotate  33*z translate < 2,1.5,0>}
  588.     }
  589.     box {<-2.1,1.5,-0.1>,<2.1,3.75,1.1>}
  590.     bounded_by{box {<-2.1,1.5,0>,<2.1,3.75,1>}}
  591.   }
  592.  
  593. #declare char_Amps =
  594.   union {
  595.     difference{
  596.       cylinder{0*z,z,1.25}
  597.       cylinder{-z,2*z,0.5}
  598.       bounded_by{ box { <-1.25,-1.25,0>, <1.25, 1.25, 1> } }
  599.       translate <-0.25,3.75,0>
  600.     }
  601.     difference{
  602.       cylinder{0*z,z,1.75}
  603.       cylinder{-z,2*z,0.75}
  604.       bounded_by{ box { <-1.75,-1.75,0>, <1.75, 1.75, 1> } }
  605.       translate <-0.25,1.75,0>
  606.     }
  607.     difference{
  608.       cylinder{0*z,z,1.25}
  609.       cylinder{-z,2*z,0.5}
  610.       plane{-x,0}
  611.       bounded_by{ box { <-1.25,-1.25,0>, <0, 1.25, 1> } }
  612.       translate <2,1.75,0>
  613.     }
  614.   }
  615.  
  616. #declare char_Astr =
  617.   union {
  618.     box{ <-0.5,-2,0>,<0.5,2,1> }
  619.     box{ <-0.5,-2,0>,<0.5,2,1> rotate 60*z}
  620.     box{ <-0.5,-2,0>,<0.5,2,1> rotate -60*z}
  621.     translate 2.5*y
  622.   }
  623.  
  624. #declare char_LPar =
  625.   intersection{
  626.     cylinder{<7,2.5,0>,<7,2.5,1>, 7.5}
  627.     cylinder{<7,2.5,-0.1>,<7,2.5,1.1>, 6.5 inverse}
  628.     box{<-2,0,-0.1>,<2,5,1.1>}
  629.     bounded_by{box{<-1,0,0>,<1,5,1>}}
  630.   }
  631.  
  632. #declare char_RPar =
  633.   intersection{
  634.     cylinder{<-7,2.5,0>,<-7,2.5,1>, 7.5}
  635.     cylinder{<-7,2.5,-0.1>,<-7,2.5,1.1>, 6.5 inverse}
  636.     box{<-2,0,-0.1>,<2,5,1.1>}
  637.     bounded_by{box{<-1,0,0>,<1,5,1>}}
  638.   }
  639.  
  640. #declare char_LSqu =
  641.   union {
  642.     box{<-1,0,0>,<0,5,1>}
  643.     box{<-0.001,0,0>,<1,1,1>}
  644.     box{<-0.001,4,0>,<1,5,1>}
  645.   }
  646.  
  647. #declare char_RSqu =
  648.   union {
  649.     box{<0,0,0>,<1,5,1>}
  650.     box{<-1,0,0>,<0.001,1,1>}
  651.     box{<-1,4,0>,<0.001,5,1>}
  652.   }
  653.  
  654.  
  655. // End of CHARS.INC
  656. #version Chars_Inc_Temp
  657.