home *** CD-ROM | disk | FTP | other *** search
/ Using VRML (Special Edition) / Special_Edition_Using_VRML_CDROM_Que_1996.iso / webpages / objects / chap22 / rsibley / room.wrl < prev    next >
Text File  |  1995-12-21  |  13KB  |  582 lines

  1. #VRML V1.0 ascii
  2.  
  3. DEF Root Separator {
  4.     Transform {scaleFactor .01 .01 .01}
  5.     PerspectiveCamera { position 2 1 -3
  6.         orientation 0 1 0  3.14159}
  7.  
  8.  
  9.     PointLight {location 180 235 180
  10.         intensity 1}
  11.     DirectionalLight {direction -1 0 1
  12.         intensity  .5}
  13.     DirectionalLight {direction 1 0 1
  14.         intensity  .5}
  15.     SpotLight {location 180 60 180
  16.         intensity 1
  17.         direction 0 1 0
  18.         cutOffAngle 2}
  19. Separator {
  20.     DEF walls Separator {
  21.         Material {diffuseColor .1 .5 .5}
  22.         Texture2 {filename "d:\worlds\rsibley\wall2.bmp"}
  23.         Coordinate3 { point [-1 -1 361, 361 -1 361, 361 240 361, -1 240 361,
  24.                 -1 -1 -1, -1 240 -1, 361 240 -1, 361 -1 -1]}
  25.         IndexedFaceSet {
  26.             coordIndex [ 
  27.                 0,1,2,3,-1,
  28.                 0,3,2,1,-1,
  29.                 1,2,6,7,-1,
  30.                 1,7,6,2,-1,
  31.                 0,3,5,4,-1,
  32.                 0,4,5,3,-1,
  33.                 0,4,7,1,-1,
  34.                 0,1,7,4,-1,
  35.                 2,3,5,6,-1,
  36.                 2,6,5,3,-1]
  37.         }
  38.         Separator {
  39.             Texture2 {filename "d:\worlds\rsibley\cats.bmp"}
  40.             Transform {translation 280 140 360}
  41.             Cube {height 50 depth 0 width 50}
  42.         }
  43.         Separator {
  44.             Texture2 {filename "d:\worlds\rsibley\richard1.bmp"}
  45.             Transform {translation 70 140 360}
  46.             Cube {height 60 depth 0 width 60}
  47.         }
  48.         Separator {
  49.             Texture2 {filename "d:\worlds\rsibley\pv.bmp"}
  50.             Transform {translation 170 170 360}
  51.             Cube {height 70 depth 0 width 70}
  52.         }
  53.         Separator {
  54.             Texture2 {filename "d:\worlds\rsibley\def.bmp"}
  55.             Transform {translation 360 150 100
  56.                 rotation 0 1 0 1.57}
  57.             Cube {height 100 depth 0 width 100}
  58.         }
  59.         Separator {
  60.             Texture2 {filename "d:\worlds\rsibley\ski3.bmp"}
  61.             Transform {translation 360 160 230
  62.                 rotation 0 1 0 1.57}
  63.             Cube {height 80 depth 0 width 80}
  64.         }
  65.         Separator {
  66.             Texture2 {filename "d:\worlds\rsibley\vh.bmp"}
  67.             Transform {translation 0 150 240
  68.                 rotation 0 1 0 1.57}
  69.             Cube {height 80 depth 0 width 80}
  70.         }
  71.     }
  72.     DEF dresser Separator {
  73.         Material {diffuseColor 1 .5 0}
  74.         Translation {translation 18 30 185}
  75.         Cube {height 60 depth 40 width 36}
  76.     }
  77.     DEF wardrobe Separator {
  78.         Separator {
  79.             Material {diffuseColor .3 .05 0}
  80.             Translation {translation 23 85 110}
  81.             Cube {width 46 height 170 depth 100}
  82.         }
  83.         Separator {
  84.             Material {diffuseColor  .4  .05 0}
  85.             Translation {translation 45 85 134}
  86.             Cube {width 4 height 150 depth 44}
  87.             Translation {translation 0 0 -48}
  88.             Cube {width 4 height 150 depth 44}
  89.         }
  90.         Separator {
  91.             Material {diffuseColor  1 1 0}
  92.             Transform {translation 45 100 100
  93.                 rotation 0 0 1  1.57}
  94.             Cylinder {radius 3  height  5}
  95.             Translation {translation  0 0 20}
  96.             Cylinder {radius 3  height 5}
  97.         }
  98.     }
  99.     DEF Drawers Separator {
  100.         Separator {
  101.             Material {diffuseColor .1  .1  .5}
  102.             Translation {translation 75 35 340}
  103.             Cube {width 90 height 70 depth 40}
  104.         }
  105.         Separator {
  106.             Material {diffuseColor  .1  .1 .4}
  107.             Translation {translation  75  71.5  339}
  108.             Cube {width 96 height 3 depth 42}
  109.         }
  110.         DEF drawer Separator {
  111.             Material {diffuseColor 1 1 1}
  112.             Translation {translation 75  19  320}
  113.             Cube {width 86 height 18 depth 2}
  114.         }
  115.         Translation {translation 0 20 0}
  116.         USE drawer
  117.         Translation {translation 0 20 0}
  118.         USE drawer
  119.         DEF handles Separator {
  120.             Material {diffuseColor .1 .1 .4}
  121.             Translation {translation 50  19  321}
  122.             Cube {width 16 height 6 depth 6}
  123.             Translation {translation 50  0  0}
  124.             Cube {width 16 height 6 depth 6}
  125.         }
  126.         Translation {translation 0 -20 0}
  127.         USE handles
  128.         Translation {translation 0 -20 0}
  129.         USE handles
  130.         
  131.     }
  132.     DEF bed Separator {
  133.         Separator {
  134.             Material {diffuseColor .5 .05 0}
  135.             Translation {translation 172 45 350}
  136.             Cube {width 96 height 90 depth 20}
  137.         }
  138.         Separator {
  139.             Material {diffuseColor .5 .05 0}
  140.             Translation {translation 172 20 240}
  141.             Cube {width 96 height 40 depth 200}
  142.         }
  143.         Separator {
  144.             Texture2 {filename "d:\worlds\rsibley\surface5.bmp"}
  145.             Material {diffuseColor 0.15 0.15 .45}
  146.             Translation {translation  173 45 240}
  147.             Cube {width 90 height 10 depth 194}
  148.         }
  149.     }
  150.     Separator {
  151.         Transform {scaleFactor 1 2 1
  152.             translation 0 -60 0}
  153.         DEF pillow Separator {
  154.             Material {diffuseColor  0 0 .5}
  155.             Coordinate3 {point [
  156.                 132 60 300,
  157.                 132 60 340,
  158.                 212 60 340,
  159.                 212 60 300,
  160.                 136 63 304,
  161.                 136 63 336,
  162.                 208 63 336,
  163.                 208 63 304,
  164.                 144 65 312,
  165.                 144 65 328,
  166.                 200 65 328,
  167.                 200 65 312,
  168.                 136 57 304,
  169.                 136 57 336,
  170.                 208 57 336,
  171.                 208 57 304,
  172.                 144 55 312,
  173.                 144 55 328,
  174.                 200 55 328,
  175.                 200 55 312]}
  176.             IndexedFaceSet {
  177.                 coordIndex [
  178.                 0,1,5,4,-1,
  179.                 5,1,2,6,-1,
  180.                 6,2,3,7,-1,
  181.                 0,4,7,3,-1,
  182.                 4,5,9,8,-1,
  183.                 9,5,6,10,-1,
  184.                 11,10,6,7,-1,
  185.                 4,8,11,7,-1,
  186.                 8,9,10,11,-1,
  187.     
  188.                 0,12,13,1,-1,
  189.                 12,16,17,13,-1,
  190.                 0,3,15,12,-1,
  191.                 12,15,19,16,-1,
  192.                 16,19,18,17,-1,
  193.                 19,15,14,18,-1,
  194.                 15,3,2,14,-1,
  195.                 17,18,14,13,-1,
  196.                 13,14,2,1,-1]}
  197.         }
  198.     }
  199.     DEF desk Separator {
  200.         Material {diffuseColor .6 .2 0}
  201.         #Bottom part of desk
  202.         Separator {
  203.             Translation {translation 330  30  240}
  204.             Cube {width 60 height 60 depth 40}
  205.         }
  206.         Separator {
  207.             Translation {translation 330 70  290}
  208.             Cube {width 60 height 20 depth 140}
  209.         }
  210.         Separator {
  211.             Translation {translation 330  30  340}
  212.             Cube {width 60 height 60 depth 40}
  213.         }
  214.         #Top part of desk
  215.         Separator {
  216.             Translation {translation 357.5  85  290}
  217.             Cube {width 5 height 10 depth 140}
  218.         }
  219.     }
  220.     DEF couch Separator {
  221.         Texture2 {filename "d:\worlds\rsibley\wall1.bmp"}
  222.         Material {diffuseColor  .5  .3  .5}
  223.         Separator {
  224.             Translation {translation 345 40 100}
  225.             Cube {width 10 height 80 depth 200}
  226.         }
  227.         Separator {
  228.             Translation {translation 320  20  100}
  229.             Cube {width 60 height 40 depth 200}
  230.         }
  231.         Separator {
  232.             #arms of couch
  233.             Translation {translation 320  45  10}
  234.             Cube {width 60 height 10 depth 20}
  235.             Translation {translation 0 0 180}
  236.             Cube {width 60 height 10 depth 20}
  237.         }
  238.         Coordinate3 {point[
  239.             330 40 0,
  240.             330 40 200,
  241.             340 80 200,
  242.             340 80 0,
  243.             340 40 0,
  244.             340 40 200]
  245.         }
  246.         IndexedFaceSet {
  247.             coordIndex [0,1,2,3,-1,
  248.                 1,5,2,-1,
  249.                 0,3,4,-1]
  250.         }
  251.             
  252.     }
  253.     
  254.     DEF Guitar Separator {
  255.         Rotation {rotation 1 0 0  .349}
  256.         Separator {
  257.         Transform {rotation 0 1 0  3.14159
  258.             scaleFactor .75 .75 .75
  259.             translation 36 7 19}
  260.         Separator {
  261.             #body
  262.             #Material {diffuseColor .5 0 1}
  263.             Material {diffuseColor 1 0 0}
  264.             Texture2 {filename "d:\worlds\rsibley\marble2.bmp"}
  265.             Coordinate3 {point[
  266.             28 72 0,
  267.             17 69 0,
  268.             10 50 0,
  269.             15 40 0,
  270.             8 28 0,
  271.             14 0 0,
  272.             18 24 0,
  273.             30 30 0,
  274.             40 25 0,
  275.             35 10 0,
  276.             50 30 0,
  277.             40 50 0,
  278.             45 65 0,
  279.             35 81 0,
  280.             39 65 0,
  281.             32 59 0,
  282.     
  283.             28 72 -5,
  284.             17 69 -5,
  285.             10 50 -5,
  286.             15 40 -5,
  287.             8 28 -5,
  288.             14 0 -5,
  289.             18 24 -5,
  290.             30 30 -5,
  291.             40 25 -5,
  292.             35 10 -5,
  293.             50 30 -5,
  294.             40 50 -5,
  295.             45 65 -5,
  296.             35 81 -5,
  297.             39 65 -5,
  298.             32 59 -5,
  299.             ]}
  300.             IndexedFaceSet {
  301.                 coordIndex [
  302.                 0,1,2,15,-1,
  303.                 2,3,11,15,-1,
  304.                 3,4,6,7,11,-1,
  305.                 4,5,6,-1,
  306.                 11,7,8,10,-1,
  307.                 8,9,10,-1,
  308.                 14,15,11,12,-1,
  309.                 12,13,14,-1,
  310.     
  311.                 16,31,18,17,-1,
  312.                 18,31,27,19,-1,
  313.                 19,27,23,22,20,-1,
  314.                 20,22,21,-1,
  315.                 27,26,24,23,-1,
  316.                 26,25,24,-1,
  317.                 30,28,27,31,-1,
  318.                 29,28,30,-1,
  319.     
  320.                 15,14,30,31,-1,
  321.                 14,13,29,30,-1,
  322.                 13,12,28,29,-1,
  323.                 12,11,27,28,-1,
  324.                 11,10,26,27,-1,
  325.                 10,9,25,26,-1,
  326.                 9,8,24,25,-1,
  327.                 8,7,23,24,-1,
  328.                 7,6,22,23,-1,
  329.                 6,5,21,22,-1,
  330.                 5,4,20,21,-1,
  331.                 4,3,19,20,-1,
  332.                 3,2,18,19,-1,
  333.                 2,1,17,18,-1,
  334.                 1,0,16,17,-1,
  335.                 0,15,31,16,-1
  336.             ]}
  337.         }
  338.         Separator { 
  339.             #Pickups
  340.             Separator {
  341.             Material {diffuseColor .3 .3 .3}
  342.             Translation {translation 25 44.5 0}
  343.             Cube {width 10 height 7 depth 1}
  344.             }
  345.             Separator {
  346.                 Translation {translation 25 56 -.5}
  347.                 DEF Pickup Separator {
  348.                     Material {diffuseColor .75 .75 .75}
  349.                     Cube {width 8 height 2 depth 2}
  350.                 }
  351.             }
  352.             Separator {
  353.                 Translation {translation 25 52 -.5}
  354.                 USE Pickup
  355.             }
  356.             Separator {
  357.                 Translation {translation 25 46 0}
  358.                 USE Pickup
  359.             }
  360.             Separator {
  361.                 Translation {translation 25 43 0}
  362.                 USE Pickup
  363.             }
  364.             Separator {
  365.             Material {diffuseColor .3 .8 .8
  366.                 shininess 10}
  367.             Translation {translation 25 37.5 0}
  368.             Cube {width 10 height 5 depth 2}
  369.             }
  370.             Translation {translation 22.5 38 0}
  371.             DEF block Separator {
  372.                 Material {diffuseColor .4 .4 .4}
  373.                 Cube {width .8 height 2 depth 2.5}
  374.             }
  375.             Translation {translation 1 0 0}
  376.             USE block
  377.             Translation {translation 1 0 0}
  378.             USE block 
  379.             Translation {translation 1 0 0}
  380.             USE block
  381.             Translation {translation 1 0 0}
  382.             USE block
  383.             Translation {translation 1 0 0}
  384.             USE block        
  385.         }
  386.         Separator {
  387.             #Neck
  388.             Material {diffuseColor .75 .5 .5}
  389.             Coordinate3 { point[
  390.                 21 60 1,
  391.                 29 60 1,
  392.                 22 120 1,
  393.                 28 120 1,
  394.                 21 60 0,
  395.                 29 60 0,
  396.                 22 120 .5,
  397.                 28 120 .5,
  398.                 23 60 -1.5,
  399.                 26 60 -1.5,
  400.                 24 120 -1,
  401.                 26 120 -1
  402.             ]}
  403.             IndexedFaceSet {
  404.                 coordIndex [0,1,3,2,-1,
  405.                     0,4,5,1,-1,
  406.                     1,5,7,3,-1,
  407.                     3,7,6,2,-1,
  408.                     0,2,6,4,-1,
  409.                     6,10,8,4,-1,
  410.                     10,11,9,8,-1,
  411.                     5,9,11,7,-1,
  412.                     10,6,7,11,-1]
  413.             }
  414.         }
  415.         Separator {
  416.             #Head
  417.             Material {diffuseColor .2 .2 .2}
  418.             Coordinate3 { point[
  419.                 22 120 .5,
  420.                 28 120 .5,
  421.                 23 122 .25,
  422.                 27 122 .25,
  423.                 20 125 -.5,
  424.                 27 136 -2,
  425.                 33 139 -2.5,
  426.                 24 120 -1 ,
  427.                 26 120 -1,
  428.                 23 122 -1.25,
  429.                 27 122 -1.25,
  430.                 20 125 -2,
  431.                 27 136 -3.5,
  432.                 33 139 -4,
  433.             ]}
  434.             IndexedFaceSet {
  435.                 coordIndex [
  436.                     5,4,2,3,6,-1,
  437.                     2,0,1,3,-1,
  438.                     13,10,9,11,12,-1,
  439.                     9,10,8,7,-1,
  440.                     13,6,3,10,-1,
  441.                     10,3,1,-1,
  442.                     10,1,8,-1,
  443.                     0,7,8,1,-1,
  444.                     2,9,0,-1,
  445.                     0,9,7,-1,
  446.                     4,11,9,2,-1,
  447.                     5,12,11,4,-1,
  448.                     13,12,5,6,-1,
  449.                 ]
  450.             }
  451.             DEF tune1 Separator {
  452.                 Transform {translation 20.5 127 -1.5
  453.                     rotation 0 0 1 1}
  454.                 Separator {
  455.                     Material {diffuseColor 1 1 1
  456.                         shininess 10}
  457.                     Cube {width 1 depth .5 height 1}
  458.                     Translation {translation 0 -.5 0}
  459.                     Cylinder {radius .25 height .5}
  460.                 }            
  461.             }
  462.             Translation {translation .9 1.4 -.2}
  463.             USE tune1
  464.             Translation {translation .9 1.4 -.2}
  465.             USE tune1
  466.             Translation {translation .9 1.4 -.2}
  467.             USE tune1
  468.             Translation {translation .9 1.4 -.2}
  469.             USE tune1
  470.             Translation {translation .9 1.4 -.2}
  471.             USE tune1
  472.             DEF tune2 Separator {
  473.                 Transform {translation 17.5  119.25  .5
  474.                     rotation 1 0 0  1.413}
  475.                 Material {diffuseColor 0 0 0}
  476.                 Cylinder {radius .25 height 1}
  477.             }
  478.             Translation {translation .9 1.4 -.2}
  479.             USE tune2
  480.             Translation {translation .9 1.4 -.2}
  481.             USE tune2
  482.             Translation {translation .9 1.4 -.2}
  483.             USE tune2
  484.             Translation {translation .9 1.4 -.2}
  485.             USE tune2
  486.             Translation {translation .9 1.4 -.2}
  487.             USE tune2        
  488.         }
  489.         Separator {
  490.         #Volume\tone
  491.             Translation {translation 36 37 0}
  492.             DEF knob Separator {    
  493.                 Material {diffuseColor .3 .3 .3}
  494.                 Rotation {rotation 1 0 0 1.57}
  495.                 Cylinder {radius 1 height 2}
  496.             }
  497.             Translation {translation 4 -5 0}
  498.             USE knob
  499.         }
  500.         Separator {
  501.         #Strings
  502.               DEF string Separator {
  503.                 Material {diffuseColor 1 1 1
  504.                     shininess 10}
  505.                 Translation {translation 22.5 79.5 1}
  506.                 Cylinder {radius .08 height 81}
  507.             }
  508.             Translation {translation 1 0 0}
  509.             USE string
  510.             Translation {translation 1 0 0}
  511.             USE string
  512.             Translation {translation 1 0 0}
  513.             USE string
  514.             Translation {translation 1 0 0}
  515.             USE string
  516.             Translation {translation 1 0 0}
  517.             USE string
  518.         }
  519.     }
  520.     }
  521.     DEF garbage_pail Separator {
  522.         Translation {translation -10 0 0}
  523.         Material {diffuseColor .6 .6 .6}
  524.         Coordinate3 { point [280 40 340,
  525.                 280 40 360,
  526.                 240 40 360,
  527.                 240 40 340,
  528.                 275 0 342,
  529.                 275 0 358,
  530.                 245 0 358,
  531.                 245 0 342]}
  532.         IndexedFaceSet {
  533.             coordIndex [0,4,7,3,-1,
  534.                 3,7,6,2,-1,
  535.                 1,2,6,5,-1,
  536.                 0,1,5,4,-1,
  537.                 5,6,7,4,-1,
  538.  
  539.                 3,7,4,0,-1,
  540.                 2,6,7,3,-1,
  541.                 5,6,2,1,-1,
  542.                 4,5,1,0,-1,
  543.                 4,7,6,5,-1,]}
  544.     }
  545.     DEF chair Separator {
  546.         Material {diffuseColor  .4  .3  .3}
  547.         Separator {
  548.             #Legs
  549.             Transform {translation  300 20 275}
  550.             Cube {width 8 height 40 depth 8}
  551.             Transform {translation  0 0 30}
  552.             Cube {width 8 height 40 depth 8}
  553.             Transform {translation  -40 0 0}
  554.             Cube {width 8 height 40 depth 8}
  555.             Transform {translation  0 0 -30}
  556.             Cube {width 8 height 40 depth 8}
  557.         } 
  558.         Separator {
  559.             #Seat
  560.             Transform {translation 280 45 290}
  561.             Cube {width 48 height 10 depth 40}
  562.         }
  563.         Separator {
  564.             #back of chair
  565.             Separator {
  566.                 Transform {translation 260 60 276}
  567.                 Cube {width 8 height 20 depth 8}
  568.                 Transform {translation 0 0 28}
  569.                 Cube {width 8 height 20 depth 8}
  570.             }
  571.             Separator {
  572.                 Transform {translation 260 80 290}
  573.                 Cube {width 10 height 20 depth 48}
  574.             }
  575.         }
  576.     }
  577.     }
  578.  
  579.  
  580. }
  581. }
  582.