home *** CD-ROM | disk | FTP | other *** search
/ Ray Tracing Box / RAY_CD.mdf / raytrace / _pov_dat / rex5 / body.inc next >
Text File  |  1993-01-19  |  24KB  |  772 lines

  1. //---- Rex's Body & Helmet
  2.  
  3.  
  4. // Declared Body Parts
  5. //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  6.  
  7.  
  8.  
  9. //--- Torus for Helmet Neck 
  10. #declare T1 = 
  11.    quartic {
  12.    <    1.000000 0.000000 0.000000 0.000000 2.000000
  13.         0.000000 0.000000 2.000000 0.000000 -596.000000
  14.         0.000000 0.000000 0.000000 0.000000 0.000000
  15.         0.000000 0.000000 0.000000 0.000000 0.000000
  16.         1.000000 0.000000 0.000000 2.000000 0.000000
  17.         560.000000 0.000000 0.000000 0.000000 0.000000
  18.         1.000000 0.000000 -596.000000 0.000000 78400.000000 >
  19. sturm
  20.    }
  21.  
  22.  
  23. //--- Torus for neck Support
  24. #declare T2 = 
  25.    quartic {
  26.    <    1.000000 0.000000 0.000000 0.000000 2.000000
  27.         0.000000 0.000000 2.000000 0.000000 -1018.000000
  28.         0.000000 0.000000 0.000000 0.000000 0.000000
  29.         0.000000 0.000000 0.000000 0.000000 0.000000
  30.         1.000000 0.000000 0.000000 2.000000 0.000000
  31.         918.000000 0.000000 0.000000 0.000000 0.000000
  32.         1.000000 0.000000 -1018.000000 0.000000 210681.000000 >
  33. sturm
  34.    }
  35.  
  36.  
  37. //---- Torus for Stomach Muscles
  38. #declare M1 = 
  39.    quartic {
  40.    <    1.000000 0.000000 0.000000 0.000000 2.000000
  41.         0.000000 0.000000 2.000000 0.000000 -477.000000
  42.         0.000000 0.000000 0.000000 0.000000 0.000000
  43.         0.000000 0.000000 0.000000 0.000000 0.000000
  44.         1.000000 0.000000 0.000000 2.000000 0.000000
  45.         252.000000 0.000000 0.000000 0.000000 0.000000
  46.         1.000000 0.000000 -477.000000 0.000000 15876.000000 >
  47. sturm
  48.    }
  49.  
  50.  
  51. //--- Hype for Mid Section
  52. #declare Rib =
  53.       intersection {
  54.          quadric {
  55.             <0.002450740123517 -0.000626525298795 0.002450740123517>
  56.             <0.000000000000000  0.000000000000000 0.000000000000000>
  57.             <0.000000000000000  0.000000000000000 0.000000000000000>
  58.             -1.0
  59.          }
  60.          plane { <0.0 1.0 0.0> 33.000000000000000 }
  61.          plane { <0.0 1.0 0.0> -33.000000000000000 inverse }
  62.       translate <0.0 33.000000000000000 0.0>
  63.    }
  64.  
  65.  
  66. //---- Ear Commmunication Thingy
  67. #declare EarComm =
  68. object {
  69.   union {
  70.     intersection {
  71.       quadric { QCone_X scale <24 14 14> }
  72.       plane { <1 0 0> -13 }
  73.       plane { <1 0 0> -24 inverse }
  74.     }
  75.     intersection {
  76.       quadric { QCone_X scale <24 14 14> }
  77.       plane { <1 0 0> -5 }
  78.       plane { <1 0 0> -24 inverse }
  79.     translate <-3.5 0 0>
  80.     }
  81.     intersection { Disk_X scale <2 1.5 2> translate <-8.2 0 0> }
  82.   }
  83.       texture { EarComm_Texture }
  84.         bounded_by {
  85.         box { UnitBox scale <10.5 15.5 10.5> translate <-15.7 0 0> }
  86.         }
  87. scale <1 1 .85>
  88. translate <24 0 0>
  89. }
  90.  
  91. //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
  92.  
  93. //--- Arm
  94. //--- Upper Left Arm
  95. #declare LArm =
  96. composite {
  97.    //--- Arm Connection
  98.    object {
  99.    union {
  100.      quartic { T1 translate <0 -13 0> }
  101.      quartic { T1 translate <0 -19 0> }
  102.      quartic { T1 translate <0 -25 0> }
  103.    }
  104.     texture { ArmBand_Texture }
  105.           bounded_by {
  106.           box { UnitBox scale <21.1 11.1 21.1> translate <0 -19 0> }
  107.       }
  108.   }
  109.   object {
  110.     union {
  111.       quadric { Sphere scale <17 52 18> translate <0 -43.2 0> }
  112.       quadric { Sphere scale <17 52 17> translate <0 -43.2 0> }
  113.       intersection { Disk_X scale <18 4 4> translate <0 -84.4 0> }
  114.    }
  115.       texture { Arm_Texture }
  116.           bounded_by {
  117.           box { UnitBox scale <18 53 18> translate <0 -43.2 0> }
  118.       }
  119.   }
  120.   //--- Elbow
  121.   object {
  122.     difference {
  123.       quadric { Sphere scale <17 17 17> translate <0 -84.4 0> }
  124.       box { UnitBox scale <1 20 20> translate <0 -84.4 0> }
  125.     }
  126.       texture { Elbow_Texture }
  127.          bounded_by {
  128.          box { UnitBox scale <22 56 22> translate <0 -46 0> }
  129.      }
  130.   }
  131.   //--- Lower Left Arm
  132.   composite {
  133.   object { 
  134.    difference {
  135.    quadric { Sphere scale <16 48 16> translate <0 -34.4 0> }
  136.    plane { <0 1 0> -63 }
  137.    }
  138.      texture { Arm_Texture }
  139.   }
  140.   object {
  141.    union {
  142.      quartic { T1 scale <.8 .8 .8> translate <0 -68.2 0> }
  143.      quartic { T1 scale <.8 .8 .8> translate <0 -63.4 0> }
  144.      quartic { T1 scale <.8 .8 .8> translate <0 -58.6 0> }
  145.    }
  146.       texture { ArmBand_Texture }
  147.   }
  148.   
  149.   composite { RightHand  
  150.       scale <.35 .35 .35>
  151.       rotate <-100 0 0>
  152.       rotate <0 10 0>
  153.       translate <-.7 -70.7 10>
  154.   }
  155.   rotate <70 0 0> translate <0 -84.4 0> 
  156.   }
  157. }
  158.  
  159. //+++++++++++++++++++++++++++++++++++++++++++++++++++
  160.  
  161. //--- Gun Arm with Ray
  162. #declare GArm =
  163. composite {
  164.    //--- Arm Connection
  165.    object {
  166.    union {
  167.      quartic { T1 translate <0 -13 0> }
  168.      quartic { T1 translate <0 -19 0> }
  169.      quartic { T1 translate <0 -25 0> }
  170.    }
  171.     texture { ArmBand_Texture }
  172.           bounded_by {
  173.           box { UnitBox scale <21.1 11.1 21.1> translate <0 -19 0> }
  174.       }
  175.   }
  176.   object {
  177.     union {
  178.       quadric { Sphere scale <17 52 18> translate <0 -43.2 0> }
  179.       quadric { Sphere scale <17 52 17> translate <0 -43.2 0> }
  180.       intersection { Disk_X scale <18 4 4> translate <0 -84.4 0> }
  181.    }
  182.       texture { Arm_Texture }
  183.           bounded_by {
  184.           box { UnitBox scale <18 53 18> translate <0 -43.2 0> }
  185.       }
  186.   }
  187.   //--- Elbow
  188.   object {
  189.     difference {
  190.       quadric { Sphere scale <17 17 17> translate <0 -84.4 0> }
  191.       box { UnitBox scale <1 20 20> translate <0 -84.4 0> }
  192.     }
  193.       texture { Elbow_Texture }
  194.          bounded_by {
  195.          box { UnitBox scale <22 56 22> translate <0 -46 0> }
  196.      }
  197.   }
  198.   //--- Lower Left Arm
  199.   composite {
  200.   object { 
  201.    difference {
  202.    quadric { Sphere scale <16 48 16> translate <0 -34.4 0> }
  203.    plane { <0 1 0> -63 }
  204.    }
  205.      texture { Arm_Texture }
  206.   }
  207.   object {
  208.    union {
  209.      quartic { T1 scale <.8 .8 .8> translate <0 -68.2 0> }
  210.      quartic { T1 scale <.8 .8 .8> translate <0 -63.4 0> }
  211.      quartic { T1 scale <.8 .8 .8> translate <0 -58.6 0> }
  212.    }
  213.       texture { ArmBand_Texture }
  214.   }
  215.   
  216.   composite { GunHand  
  217.       rotate <180 0 0>
  218.       rotate <0 -90 0>
  219.       rotate <0 0 -10>
  220.       translate <0 -70.7 0>
  221.   }
  222.   rotate <60 0 0>                //---- rotates lower arm at elbow 
  223.   translate <0 -84.4 0> 
  224.   }
  225. }
  226.  
  227. //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  228.  
  229. //--- Gun Arm with No Ray
  230. #declare GArm_N =
  231. composite {
  232.    //--- Arm Connection
  233.    object {
  234.    union {
  235.      quartic { T1 translate <0 -13 0> }
  236.      quartic { T1 translate <0 -19 0> }
  237.      quartic { T1 translate <0 -25 0> }
  238.    }
  239.     texture { ArmBand_Texture }
  240.           bounded_by {
  241.           box { UnitBox scale <21.1 11.1 21.1> translate <0 -19 0> }
  242.       }
  243.   }
  244.   object {
  245.     union {
  246.       quadric { Sphere scale <17 52 18> translate <0 -43.2 0> }
  247.       quadric { Sphere scale <17 52 17> translate <0 -43.2 0> }
  248.       intersection { Disk_X scale <18 4 4> translate <0 -84.4 0> }
  249.    }
  250.       texture { Arm_Texture }
  251.           bounded_by {
  252.           box { UnitBox scale <18 53 18> translate <0 -43.2 0> }
  253.       }
  254.   }
  255.   //--- Elbow
  256.   object {
  257.     difference {
  258.       quadric { Sphere scale <17 17 17> translate <0 -84.4 0> }
  259.       box { UnitBox scale <1 20 20> translate <0 -84.4 0> }
  260.     }
  261.       texture { Elbow_Texture }
  262.          bounded_by {
  263.          box { UnitBox scale <22 56 22> translate <0 -46 0> }
  264.      }
  265.   }
  266.   //--- Lower Left Arm
  267.   composite {
  268.   object { 
  269.    difference {
  270.    quadric { Sphere scale <16 48 16> translate <0 -34.4 0> }
  271.    plane { <0 1 0> -63 }
  272.    }
  273.      texture { Arm_Texture }
  274.   }
  275.   object {
  276.    union {
  277.      quartic { T1 scale <.8 .8 .8> translate <0 -68.2 0> }
  278.      quartic { T1 scale <.8 .8 .8> translate <0 -63.4 0> }
  279.      quartic { T1 scale <.8 .8 .8> translate <0 -58.6 0> }
  280.    }
  281.       texture { ArmBand_Texture }
  282.   }
  283.   
  284.   composite { GunHand_N  
  285.       rotate <180 0 0>
  286.       rotate <0 -90 0>
  287.       rotate <0 0 0>
  288.       translate <0 -70.7 0>
  289.   }
  290.   rotate <60 0 0>                //---- rotates lower arm at elbow 
  291.   translate <0 -84.4 0> 
  292.   }
  293. }
  294.  
  295.  
  296. //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  297.  
  298.  
  299. //--- Arm
  300. //--- Upper Right Arm
  301. #declare RArm =
  302. composite {
  303.    //--- Arm Connection
  304.    object {
  305.    union {
  306.      quartic { T1 translate <0 -13 0> }
  307.      quartic { T1 translate <0 -19 0> }
  308.      quartic { T1 translate <0 -25 0> }
  309.    }
  310.     texture { ArmBand_Texture }
  311.           bounded_by {
  312.           box { UnitBox scale <21.1 11.1 21.1> translate <0 -19 0> }
  313.       }
  314.   }
  315.   object {
  316.     union {
  317.       quadric { Sphere scale <17 52 18> translate <0 -43.2 0> }
  318.       quadric { Sphere scale <17 52 17> translate <0 -43.2 0> }
  319.       intersection { Disk_X scale <18 4 4> translate <0 -84.4 0> }
  320.    }
  321.       texture { Arm_Texture }
  322.           bounded_by {
  323.           box { UnitBox scale <18 53 18> translate <0 -43.2 0> }
  324.       }
  325.   }
  326.   //--- Elbow
  327.   object {
  328.     difference {
  329.       quadric { Sphere scale <17 17 17> translate <0 -84.4 0> }
  330.       box { UnitBox scale <1 20 20> translate <0 -84.4 0> }
  331.     }
  332.       texture { Elbow_Texture }
  333.          bounded_by {
  334.          box { UnitBox scale <22 56 22> translate <0 -46 0> }
  335.      }
  336.   }
  337.   //--- Lower Left Arm
  338.   composite {
  339.   object { 
  340.    difference {
  341.    quadric { Sphere scale <16 48 16> translate <0 -34.4 0> }
  342.    plane { <0 1 0> -63 }
  343.    }
  344.      texture { Arm_Texture }
  345.   }
  346.   object {
  347.    union {
  348.      quartic { T1 scale <.8 .8 .8> translate <0 -68.2 0> }
  349.      quartic { T1 scale <.8 .8 .8> translate <0 -63.4 0> }
  350.      quartic { T1 scale <.8 .8 .8> translate <0 -58.6 0> }
  351.    }
  352.       texture { ArmBand_Texture }
  353.   }
  354.   
  355.   composite { LeftHand  
  356.       scale <.35 .35 .35>
  357.       rotate <-110 0 0>
  358.       rotate <0 0 0>
  359.       translate <.7 -70.7 8>
  360.   }
  361.   rotate <40 0 0> translate <0 -84.4 0> 
  362.   }
  363. }
  364.  
  365. //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  366.  
  367.  
  368.  
  369.  
  370. //--- Shoulder Wings
  371. #declare Shoulder =
  372. composite {
  373.  object {
  374.    union {
  375.     intersection { Disk_X scale <2.4 16.4 21.5> translate <-2.4 0 0> }
  376.     difference {
  377.      union {
  378.        box { UnitBox scale <1.4 28 30> translate <-6.2 5.2 0> }
  379.        box { UnitBox scale <1.4 28 30> translate <-11.2 5.2 0> }
  380.        box { UnitBox scale <1.4 28 30> translate <-16.2 5.2 0> }
  381.      }
  382.      quadric { Sphere scale <16 25 25> translate <-6.1 5.3 0> inverse }
  383.     }
  384.      quadric { Sphere scale <20 20 20> translate <-21.2 -.8 0> inverse }
  385.    }
  386.        texture { Shoulder_Texture }
  387.     bounded_by {
  388.         box { UnitBox scale <22 30 30>  translate <-20.8 3.9 0> }
  389.     }
  390.  }
  391.  
  392.  //--- Knob
  393.  object {
  394.    union {
  395.     intersection { Disk_X scale <1.5 10 10> translate <-20 0 0> }
  396.     intersection {
  397.       quadric { QCone_X scale <44.2 16 16> translate <-40.4 0 0> }
  398.       plane { <1 0 0> -25 inverse }
  399.       plane { <1 0 0> -18.5 }
  400.     }
  401.    }
  402.          texture { Knob_Texture }
  403.   rotate <0 0 -40>
  404.   translate <-20 -.8 0>
  405.   }
  406. }
  407.  
  408.  
  409. #declare EarWire =
  410. object {
  411.   union {
  412. sphere { <-0.000000 -0.000000  0.000000>  1.400000 }
  413. sphere { < 1.564340 -0.123120  0.000000>  1.400000 }
  414. sphere { < 3.090170 -0.489430  0.000000>  1.400000 }
  415. sphere { < 4.539900 -1.089930  0.000000>  1.400000 }
  416. sphere { < 5.877850 -1.909830  0.000000>  1.400000 }
  417. sphere { < 7.071070 -2.928930  0.000000>  1.400000 }
  418. sphere { < 8.090170 -4.122150  0.000000>  1.400000 }
  419. sphere { < 8.910070 -5.460090  0.000000>  1.400000 }
  420. sphere { < 9.510560 -6.909830  0.000000>  1.400000 }
  421. sphere { < 9.876880 -8.435660  0.000000>  1.400000 }
  422. sphere { < 10.000000 -10.000000  0.000000>  1.400000 }
  423. sphere { < 9.876880 -11.564340  0.000000>  1.400000 }
  424. sphere { < 9.510560 -13.090170  0.000000>  1.400000 }
  425. sphere { < 8.910070 -14.539910  0.000000>  1.400000 }
  426. sphere { < 8.090170 -15.877850  0.000000>  1.400000 }
  427. sphere { < 7.071070 -17.071070  0.000000>  1.400000 }
  428. sphere { < 5.877850 -18.090170  0.000000>  1.400000 }
  429. sphere { < 4.539900 -18.910060  0.000000>  1.400000 }
  430. sphere { < 3.090170 -19.510560  0.000000>  1.400000 }
  431. sphere { < 1.564340 -19.876880  0.000000>  1.400000 }
  432. sphere { <-0.000000 -20.000000  0.000000>  1.400000 }
  433. sphere { <-1.564350 -20.123120  0.000000>  1.400000 }
  434. sphere { <-3.090170 -20.489440  0.000000>  1.400000 }
  435. sphere { <-4.539910 -21.089940  0.000000>  1.400000 }
  436. sphere { <-5.877850 -21.909830  0.000000>  1.400000 }
  437. sphere { <-7.071070 -22.928930  0.000000>  1.400000 }
  438. sphere { <-8.090170 -24.122150  0.000000>  1.400000 }
  439. sphere { <-8.910070 -25.460100  0.000000>  1.400000 }
  440. sphere { <-9.510570 -26.909830  0.000000>  1.400000 }
  441. sphere { <-9.876880 -28.435660  0.000000>  1.400000 }
  442. sphere { <-10.000000 -30.000000  0.000000>  1.400000 }
  443. sphere { <-9.994460 -31.503860  0.000000>  1.400000 }
  444. sphere { <-9.977830 -33.007630  0.000000>  1.400000 }
  445. sphere { <-9.950110 -34.511230  0.000000>  1.400000 }
  446. sphere { <-9.911320 -36.014580  0.000000>  1.400000 }
  447. sphere { <-9.861440 -37.517610  0.000000>  1.400000 }
  448. sphere { <-9.800480 -39.020230  0.000000>  1.400000 }
  449. sphere { <-9.728450 -40.522360  0.000000>  1.400000 }
  450. sphere { <-9.645340 -42.023910  0.000000>  1.400000 }
  451. sphere { <-9.551170 -43.524820  0.000000>  1.400000 }
  452. sphere { <-9.445940 -45.024990  0.000000>  1.400000 }
  453. sphere { <-9.329650 -46.524340  0.000000>  1.400000 }
  454. sphere { <-9.202310 -48.022790  0.000000>  1.400000 }
  455. sphere { <-9.063930 -49.520270  0.000000>  1.400000 }
  456. sphere { <-8.914510 -51.016680  0.000000>  1.400000 }
  457. sphere { <-8.754070 -52.511960  0.000000>  1.400000 }
  458. sphere { <-8.582600 -54.006000  0.000000>  1.400000 }
  459. sphere { <-8.400130 -55.498750  0.000000>  1.400000 }
  460. sphere { <-8.206660 -56.990100  0.000000>  1.400000 }
  461. sphere { <-8.002200 -58.480000  0.000000>  1.400000 }
  462. sphere { <-7.786770 -59.968340  0.000000>  1.400000 }
  463. }
  464.   texture { Wire_Texture }
  465.      bounded_by {
  466.      sphere { < 0.000000 -29.984170  0.000000>  36.761831 }
  467.      }
  468. }
  469.  
  470.  
  471. //  End Declares
  472. //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  473.  
  474.  
  475.  
  476.  
  477. //---- Complete Body
  478. #declare Body =
  479. composite {
  480.   //--- Complete Helmet
  481.   composite {
  482.     composite {
  483.      object {
  484.        union {
  485.         difference {
  486.           union {
  487.           quadric { Sphere scale <30 30 30> translate <-2 22.7 -14.7> }         
  488.           quadric { Sphere scale <30 30 30> translate <2 22.7 -14.7> }
  489.           quadric { Sphere scale <25 25 23.5> translate <0 0 -14.7> }
  490.           }
  491.           intersection { Disk_Z scale <12.2 12.2 20> translate <-13.4 23 -29.2> }
  492.           intersection { Disk_Z scale <12.2 12.2 20> translate <13.4 23 -29.2> }
  493.           intersection { Disk_Z scale <21 21 20> translate <0 0  -29.2> }
  494.           box { UnitBox scale <21 13 20> translate <0 10.4 -29.2> }
  495.           box { UnitBox scale <21 13 20> translate <0 -15.7 -29.2> }
  496.        }
  497.       }
  498.           texture { Helmet_Texture }
  499.          bounded_by {
  500.          box { UnitBox scale <33 55 33> translate <0 0 -14.7> }
  501.          }
  502.     }
  503.     //----- Chin Strap
  504.     object {
  505.       difference {
  506.        union {
  507.          intersection { quadric { Connector_2 }
  508.          plane {     < 1.000000  0.000000  0.000000>  16.387693 }
  509.          plane {     < 1.000000  0.000000  0.000000>  12.542536 inverse }
  510.          translate <-16.387693  0.000000  0.000000>
  511.          scale     < 2.275772  1.000000  1.000000>
  512.          translate <-7.200938  0.000000  0.000000>
  513.          rotate    < 0.000000  180.000000  0.000000>
  514.          rotate    < 0.000000  0.000000 -69.829347>
  515.          rotate    < 0.000000  90.000000  0.000000>
  516.          translate <-2.700000 -4.300000 -17.500000>
  517.         }
  518.   
  519.        quadric { Dot
  520.        scale     < 13.700000  13.700000  13.700000>
  521.        translate <-2.700000 -14.100000 -21.100000>
  522.        }
  523.  
  524.        intersection { quadric { Connector_2 }
  525.        plane {     < 1.000000  0.000000  0.000000>  11.978087 }
  526.        plane {     < 1.000000  0.000000  0.000000>  8.305973 inverse }
  527.         translate <-11.978087  0.000000  0.000000>
  528.         scale     < 1.801360  1.000000  1.000000>
  529.         translate <-6.649469  0.000000  0.000000>
  530.         rotate    < 0.000000  180.000000  0.000000>
  531.         rotate    < 0.000000  0.000000 -56.309932>
  532.         rotate    < 0.000000  90.000000  0.000000>
  533.         translate <-2.700000 -14.100000 -21.100000>
  534.        }
  535.  
  536.        quadric { Dot
  537.        scale     < 9.500000  9.500000  9.500000>
  538.        translate <-2.700000 -21.300000 -25.900000>
  539.        }
  540.  
  541.        intersection { quadric { Connector_2 }
  542.        plane {     < 1.000000  0.000000  0.000000>  8.764492 }
  543.        plane {     < 1.000000  0.000000  0.000000>  6.089016 inverse }
  544.         translate <-8.764492  0.000000  0.000000>
  545.         scale     < 2.391274  1.000000  1.000000>
  546.         translate <-3.665197  0.000000  0.000000>
  547.         rotate    < 0.000000  180.000000  0.000000>
  548.         rotate    < 0.000000  0.000000 -56.944177>
  549.         rotate    < 0.000000  90.000000  0.000000>
  550.         translate <-2.700000 -21.300000 -25.900000>
  551.        }
  552.   
  553.        quadric { Dot
  554.        scale     < 6.600000  6.600000  6.600000>
  555.        translate <-2.700000 -27.600000 -30.000000>
  556.        }
  557.  
  558.        intersection { quadric { Connector_2 }
  559.        plane {     < 1.000000  0.000000  0.000000>  16.387693 }
  560.        plane {     < 1.000000  0.000000  0.000000>  12.542536 inverse }
  561.         translate <-16.387693  0.000000  0.000000>
  562.         scale     < 2.275772  1.000000  1.000000>
  563.         translate <-7.200938  0.000000  0.000000>
  564.         rotate    < 0.000000  180.000000  0.000000>
  565.         rotate    < 0.000000  0.000000 -69.829347>
  566.         rotate    < 0.000000  90.000000  0.000000>
  567.         translate < 2.700000 -4.300000 -17.500000>
  568.        }
  569.  
  570.        quadric { Dot
  571.        scale     < 13.700000  13.700000  13.700000>
  572.        translate < 2.700000 -14.100000 -21.100000>
  573.        }
  574.  
  575.        intersection { quadric { Connector_2 }
  576.        plane {     < 1.000000  0.000000  0.000000>  11.978087 }
  577.        plane {     < 1.000000  0.000000  0.000000>  8.305973 inverse }
  578.         translate <-11.978087  0.000000  0.000000>
  579.         scale     < 1.801360  1.000000  1.000000>
  580.         translate <-6.649469  0.000000  0.000000>
  581.         rotate    < 0.000000  180.000000  0.000000>
  582.         rotate    < 0.000000  0.000000 -56.309932>
  583.         rotate    < 0.000000  90.000000  0.000000>
  584.         translate < 2.700000 -14.100000 -21.100000>
  585.        }
  586.  
  587.        quadric { Dot
  588.        scale     < 9.500000  9.500000  9.500000>
  589.        translate < 2.700000 -21.300000 -25.900000>
  590.        }
  591.  
  592.        intersection { quadric { Connector_2 }
  593.        plane {     < 1.000000  0.000000  0.000000>  8.764492 }
  594.        plane {     < 1.000000  0.000000  0.000000>  6.089016 inverse }
  595.         translate <-8.764492  0.000000  0.000000>
  596.         scale     < 2.391274  1.000000  1.000000>
  597.         translate <-3.665197  0.000000  0.000000>
  598.         rotate    < 0.000000  180.000000  0.000000>
  599.         rotate    < 0.000000  0.000000 -56.944177>
  600.         rotate    < 0.000000  90.000000  0.000000>
  601.         translate < 2.700000 -21.300000 -25.900000>
  602.        }
  603.  
  604.  
  605.        quadric { Dot
  606.        scale     < 6.600000  6.600000  6.600000>
  607.        translate < 2.700000 -27.600000 -30.000000>
  608.        }
  609.     }
  610.       //--- Cut out Mouth
  611.       quadric { MCut scale <1 2 1> translate <0 -15 0> }
  612.    }
  613.    texture { Helmet_Texture }
  614.     bounded_by {
  615.     box { UnitBox scale <32 45 32> translate <0 7.9 -14> }
  616.     }
  617.   scale <1.17 1.1 1> translate <0 0 1>
  618.   }
  619.   
  620.  
  621.   //--- Ear Comms
  622.   object { EarComm rotate <0 180 0> translate <-20 4.4 -15> }
  623.   object { EarComm translate <20 4.4 -15> }
  624.  
  625.   composite {
  626.   //--- Helmet Neck
  627.   object {
  628.    difference {
  629.     union {
  630.      quartic { T1 translate <0 -15 -11> }
  631.      quartic { T1 translate <0 -21 -11> }
  632.      quartic { T1 translate <0 -27 -11> }
  633.      quartic { T1 translate <0 -33 -11> }
  634.      quartic { T1 translate <0 -39 -11> }
  635.      quartic { T1 scale <1.1 1 1.1> translate <0 -45 -11> }
  636.     }
  637.     quadric { MCut scale <1 2.5 1> translate <0 -16 0> }
  638.    }   
  639.    texture { Neck_Texture }
  640.     bounded_by {
  641.     box { UnitBox scale <22 22 22> translate <0 -33 -11> }
  642.     } 
  643.   }
  644.  
  645.   //-- Neck Ring
  646.   object {
  647.     quartic { T2 translate <0 -50 -11> }
  648.       texture { NeckRing_Texture }
  649.   }
  650.  
  651.   //-- Shoulder Harness
  652.   object {
  653.    union {
  654.     difference {
  655.       quadric { Sphere scale <51 24 36> translate <0 -71 -11> }
  656.       quadric { Cylinder_Z scale <76 24 1> translate <0 -93.7 0> }
  657.       plane { <1 0 0> 40 inverse }
  658.       plane { <1 0 0> -40 }
  659.    }
  660.       quadric { Sphere scale <5 20 21> translate <0 -64.7 -25.5> }   
  661.       quadric { Sphere scale <5 20 21> translate <5 -64.7 -25.5> }   
  662.       quadric { Sphere scale <5 20 21> translate <10 -64.7 -25.5> }     
  663.       quadric { Sphere scale <5 20 21> translate <-5 -64.7 -25.5> }   
  664.       quadric { Sphere scale <5 20 21> translate <-10 -64.7 -25.5> }   
  665.     }
  666.        texture { Harness_Texture }
  667.      bounded_by {
  668.     box { UnitBox scale <43 16 40> translate <0 -59 -10.7> }
  669.     }
  670.   }
  671.      bounded_by {
  672.     box { UnitBox scale <43 33 40> translate <0 -42 -10.7> }
  673.     }
  674.   }
  675.      bounded_by {
  676.     box { UnitBox scale <43 66 40> translate <0 -10 -10.7> }
  677.     }
  678.   }
  679.  }
  680.   
  681.  
  682.  //---- Chest & Shoulder
  683.   composite {
  684.    composite { Shoulder translate <-38 -70 -11> }
  685.    composite { Shoulder rotate <0 180 0> translate <38 -70 -11> }
  686.     //--- Chest
  687.     object {
  688.      union {
  689.       quadric { Sphere scale <35 33 38> translate <-12.2 -84.2 -11> }
  690.       quadric { Sphere scale <35 33 38> translate <12.2 -84.2 -11> }
  691.       quadric { Sphere scale <30 38 33> translate <-17 -103.5 -11> }
  692.       quadric { Sphere scale <30 38 33> translate <17 -103.5 -11> }
  693.       intersection { Rib translate <17 -187.6 -11> }
  694.       intersection { Rib translate <-17 -187.6 -11> }
  695.      }
  696.       texture { Chest_Texture }
  697.     bounded_by {
  698.         box { UnitBox scale <51 72 40>  translate <0 -120 -11> }
  699.     }
  700.    }
  701.  
  702.  
  703.   //--- Stomach Musles
  704.   object {
  705.     union { 
  706.      quartic { M1 translate <-5 -180 -23> }
  707.      quartic { M1 translate <-5 -165 -23> }
  708.      quartic { M1 translate <-5 -150 -23> }
  709.      quartic { M1 translate <-5 -135 -23> }
  710.      quartic { M1 translate <5 -180 -23> }
  711.      quartic { M1 translate <5 -165 -23> }
  712.      quartic { M1 translate <5 -150 -23> }
  713.      quartic { M1 translate <5 -135 -23> }
  714.      quadric { Sphere scale <29 26 19> translate <0 -113 -26> }
  715.     }
  716.       texture { Stomach_Texture }
  717.     bounded_by {
  718.         box { UnitBox scale <30 53 24>  translate <0 -140 -23> }
  719.     }
  720.   }
  721.  }
  722.  object { EarWire translate <35 4.4 -15> }
  723.  object { EarWire rotate <0 180 0> translate <-35 4.4 -15> }
  724.     bounded_by {
  725.         box { UnitBox scale <155 175 155>  translate <0 -99 -11> }
  726.     }
  727. }
  728.  
  729.  
  730. //--- Rex 1
  731. composite {
  732.   composite { Head }
  733.   composite { Body }
  734.   composite { GArm_N rotate <50 0 0> rotate <0 0 10> translate <60 -70 -11> }
  735.   composite { LArm rotate <30 0 0> rotate <0 0 -15> translate <-60 -70 -11> }
  736.      bounded_by {
  737.      box { UnitBox scale <155 175 155> translate <0 -99 -11> }
  738.      }
  739. scale <1.8 1.8 1.8>
  740. rotate <0 40 0>
  741. translate <200 920 -3200>
  742. }
  743.  
  744.  
  745.  
  746. //--- Rex 2 the Slug Slayer
  747. composite {
  748.  composite {
  749.   composite { Head }
  750.   composite { Body }
  751.      bounded_by {
  752.      box { UnitBox scale <155 175 155> translate <0 -99 -11> }
  753.      }
  754.  }
  755.   composite { GArm rotate <50 0 0> rotate <0 0 10> translate <60 -70 -11> }
  756.   composite { LArm rotate <30 0 0> rotate <0 0 -15> translate <-60 -70 -11> }
  757. scale <1.8 1.8 1.8>
  758. rotate <0 140 0>
  759. translate <-100 920 -3000>
  760. }
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.