#VRML V2.0 utf8 WorldInfo { title "kelpTank2.9.wrl" info ["DTG of last update: 111400Jun98", "fog fix: 19 OCT 99" "Added: ", "Updated: windows and window sills of first right window", "Modeled by: Todd Gagnon and Mark A. Boyd", ] } Group { children[ Fog { # DEF DefaultBindingForNoFog visibilityRange 0 } DEF InsideTankFog Fog { color .1 .4 .4 fogType "LINEAR" visibilityRange 25 } DEF CameraInsideTankSensor ProximitySensor { center 0 -4 -5 size 25 10 20 } Transform { children [ Inline { url "surface1.4.wrl" #modeled by Todd Gagnon } ] } #lights on the top floor Transform{ children[ Inline{ url "externalLights1.4.wrl" } ] } #the Pump House Transform { translation -10.35 1 -.5 rotation 0.0 1.0 0.0 1.5785398 children [ Inline { url "pumpHouse1.4.wrl" #Pump used to generate water flow modeled by Todd Gagnon } ] }#end Pump House Transform #WINDOW AREA Shape{ appearance DEF wallAppearance Appearance{ material Material{ diffuseColor .251 .239 .212 } } geometry IndexedFaceSet{ coord DEF windowCoordinates Coordinate { point [ -2.5 -8.5344 0.7 # 0 -4.5 -8.5344 2.7 # 1 -4.5 -7.21 2.7 # 2 -2.5 -7.21 0.7 # 3 -2.5 -0.5 0.7 # 4 -4.5 -0.5 2.7 # 5 -4.5 0.9144 2.7 # 6 -2.5 0.9144 0.7 # 7 -4.5 -8.5344 3 # 8 -2.5 -8.5344 1 # 9 -2.5 -7.21 1 # 10 -4.5 -7.21 3 # 11 -4.5 -7.21 2.8 # 12 -2.5 -7.21 .8 # 13 -2.5 -0.5 .8 # 14 -4.5 -0.5 2.8 # 15 -4.5 -0.5 3 # 16 -2.5 -0.5 1 # 17 -2.5 0.9144 1 # 18 -4.5 0.9144 3 # 19 0 -8.5344 -0.3 # 20 0 -7.21 -0.3 # 21 0 -0.5 -0.3 # 22 0 .9144 -0.3 # 23 0 -8.5344 0 # 24 0 -7.21 0 # 25 0 -7.21 -0.2 # 26 0 -0.5 -0.2 # 27 0 -0.5 0 # 28 0 0.9144 0 # 29 2.5 -8.5344 0.7 # 30 2.5 -7.21 0.7 # 31 2.5 -0.5 0.7 # 32 2.5 0.9144 0.7 # 33 2.5 -8.5344 1 # 34 2.5 -7.21 1 # 35 2.5 -7.21 0.8 # 36 2.5 -0.5 0.8 # 37 2.5 -0.5 1 # 38 2.5 0.9144 1 # 39 4.5 -8.5344 2.7 # 40 4.5 -7.21 2.7 # 41 4.5 -0.5 2.7 # 42 4.5 0.9144 2.7 # 43 4.5 -8.5344 3 # 44 4.5 -7.21 3 # 45 4.5 -7.21 2.8 # 46 4.5 -0.5 2.8 # 47 4.5 -0.5 3 # 48 4.5 0.9144 3 # 49 ] } coordIndex[ #window 1 back wall 0, 1, 2, 3, -1, 4, 5, 6, 7, -1, #window 1 front wall 8, 9, 10, 11, -1, 16, 17, 18, 19, -1, #window 1 bottom vertical 11, 10, 3, 2, -1, #window 1 top vertical 5, 4, 17, 16, -1, #window 2 back wall 20, 0, 3, 21, -1, 22, 4, 7, 23, -1, #window 2 front wall 9, 24, 25, 10, -1, 17, 28, 29, 18, -1, #window 2 bottom vertical 10, 25, 21, 3, -1, #window 2 top vertical 4, 22, 28, 17, -1, #window 3 back wall 30, 20, 21, 31, -1, 32, 22, 23, 33, -1, #window 3 front wall 24, 34, 35, 25, -1, 28, 38, 39, 29, -1, #window 3 bottom vertical 25, 35, 31, 21, -1, #window 3 top vertical 22, 32, 38, 28, -1, #window 4 back wall 40, 30, 31, 41, -1, 42, 32, 33, 43, -1, #window 4 front wall 34, 44, 45, 35, -1, 38, 48, 49, 39, -1, #window 4 bottom vertical 35, 45, 41, 31, -1, #window 4 top vertical 32, 42, 48, 38, -1, ] }#end geometry IndexedFaceSet window }#end Shape window Transform{ children[ Shape{ appearance DEF Glass Appearance{ material Material{ diffuseColor .275 .655 .62 transparency 0.63 } } geometry IndexedFaceSet{ coord USE windowCoordinates coordIndex[ #window 1 glass 3, 2, 5, 4, -1, 12, 13, 14, 15, -1, #window 2 glass 21, 3, 4, 22, -1, 13, 26, 27, 14, -1, #window 3 glass 31, 21, 22, 32, -1, 26, 36, 37, 27, -1, #window 4 glass 41, 31, 32, 42, -1, 36, 46, 47, 37, -1, ] } } ] } #WALLS Shape{ appearance USE wallAppearance geometry IndexedFaceSet{ coord DEF wallCoordinates Coordinate { point [ # Outside Walls # X Y Z INDEX Wall Posit 4.5000 -8.5344 3.0000 #0 10 7.6250 -8.5344 3.0000 #1 11,20 7.6250 0.9144 3.0000 #2 12,23 4.5000 0.9144 3.0000 #3 13 10.2500 -8.5344 0.3750 #4 21,30 10.2500 0.9144 0.3750 #5 22,33 7.9834 -0.1024 2.6421 #6 24 9.8989 -0.1024 0.7328 #7 25 9.8989 -3.0484 0.7328 #8 26 7.9834 -3.0484 2.6421 #9 27 7.9834 -4.3684 2.6421 #10 28 9.8989 -4.3684 0.7328 #11 29 9.8989 -6.7054 0.7328 #12 210 7.9834 -6.7054 2.6421 #13 211 10.2500 -8.5344 -4.3750 #14 31,40 10.2500 0.9144 -4.3750 #15 32,43 10.2500 0.0000 -0.4250 #16 34 10.2500 0.0000 -3.5750 #17 35 10.2500 -2.7432 -3.5750 #18 36 10.2500 -2.7432 -0.4250 #19 37 10.2500 -4.5752 -0.4250 #20 38 10.2500 -4.5752 -3.5750 #21 39 10.2500 -7.3152 -3.5750 #21 310 10.2500 -7.3152 -0.4250 #23 311 6.3750 -8.5344 -8.0000 #24 41,50 6.3750 0.9144 -8.0000 #25 42,53 -5.5000 -8.5344 -8.0000 #26 51,60 -5.5000 0.9144 -8.0000 #27 52,63 -10.5000 -8.5344 -2.8750 #28 61,70 -10.5000 0.9144 -2.8750 #29 62,73 -10.5000 -8.5344 0.2500 #30 71,80 -10.5000 0.9144 0.2500 #31 72,83 -7.6250 -8.5344 3.0000 #32 81,90 -7.6250 0.9144 3.0000 #33 82,93 -4.5000 -8.5344 3.0000 #34 91 -4.5000 0.9144 3.0000 #35 92 # Inside Walls #X Y Z INDEX Wall Posit 4.5000 -8.5344 2.7 # 36 10 7.6250 -8.5344 2.7 # 37 11,20 7.6250 0.9144 2.7 # 38 12,23 4.5000 0.9144 2.7 # 39 13 9.9500 -8.5344 0.3750 # 40 21,30 9.9500 0.9144 0.3750 # 41 22,33 7.9420 -0.1024 2.3830 # 42 24 9.6330 -0.1024 0.6920 # 43 25 9.6330 -3.0484 0.6920 # 44 26 7.9420 -3.0484 2.3830 # 45 27 7.9420 -4.3684 2.3830 # 46 28 9.6330 -4.3684 0.6920 # 47 29 9.6330 -6.7054 0.6920 # 48 210 7.9420 -6.7054 2.3830 # 49 211 9.9500 -8.5344 -4.3750 # 50 31,40 9.9500 0.9144 -4.3750 # 51 32,43 9.9500 0.0000 -0.4250 # 52 34 9.9500 0.0000 -3.5750 # 53 35 9.9500 -2.7432 -3.5750 # 54 36 9.9500 -2.7432 -0.4250 # 55 37 9.9500 -4.5752 -0.4250 # 56 38 9.9500 -4.5752 -3.5750 # 57 39 9.9500 -7.3152 -3.5750 # 58 310 9.9500 -7.3152 -0.4250 # 59 311 6.3750 -8.5344 -7.7000 # 60 41,50 6.3750 0.9144 -7.7000 # 61 42,53 -5.5000 -8.5344 -7.7000 # 62 51,60 -5.5000 0.9144 -7.7000 # 63 52,63 -10.2000 -8.5344 -2.8750 # 64 61,70 -10.2000 0.9144 -2.8750 # 65 62,73 -10.2000 -8.5344 0.2500 # 66 71,80 -10.2000 0.9144 0.2500 # 67 72,83 -7.6250 -8.5344 2.7 # 68 81,90 -7.6250 0.9144 2.7 # 69 82,93 -4.5000 -8.5344 2.7 # 70 91 -4.5000 0.9144 2.7 # 71 #Wall 2 Window Front Coordinates 7.9556 -0.1024 2.4694 #72 9.7194 -0.1024 0.70562 #73 9.7194 -3.0484 0.70562 #74 7.9556 -3.048 2.4694 #75 7.9556 -4.3684 2.4694 #76 9.7194 -4.3684 0.70562 #77 9.7194 -6.7054 0.70562 #78 7.9556 -6.7054 2.4694 #79 #Wall 3 Window Front Coordinates 10.0500 0.0000 -0.4250 #80 10.0500 0.0000 -3.5750 #81 10.0500 -2.7432 -3.5750 #82 10.0500 -2.7432 -0.4250 #83 10.0500 -4.5752 -0.4250 #84 10.0500 -4.5752 -3.5750 #85 10.0500 -7.3152 -3.5750 #86 10.0500 -7.3152 -0.4250 #87 #Coordinates needed for windows in Wall 1 (Outside) 5.3025 -8.5344 3.000 # 88 6.8225 -8.5344 3.000 # 89 7.625 -6.5939 3.000 # 90 7.625 -5.9639 3.000 # 91 7.625 -2.2977 3.000 # 92 7.625 -1.6677 3.000 # 93 6.8225 0.9144 3.000 # 94 5.3025 0.9144 3.000 # 95 4.5 -1.6677 3.000 # 96 4.5 -2.2977 3.000 # 97 4.5 -5.9639 3.000 # 98 4.5 -6.5939 3.000 # 99 5.3025 -1.6677 3.000 # 100 5.7484 -1.2222 3.000 # 101 6.378 -1.2222 3.000 # 102 6.8225 -1.6677 3.000 # 103 6.8225 -2.2977 3.000 # 104 6.378 -2.7432 3.000 # 105 5.7484 -2.7432 3.000 # 106 5.3025 -2.2977 3.000 # 107 5.3025 -5.9639 3.000 # 108 5.7480 -5.5184 3.000 # 109 6.3780 -5.5184 3.000 # 110 6.8225 -5.9639 3.000 # 111 6.8225 -6.5939 3.000 # 112 6.3780 -7.0394 3.000 # 113 5.7480 -7.0394 3.000 # 114 5.3025 -6.5939 3.000 # 115 #Coordinates needed for windows in Wall 1(Inside) 5.3025 -8.5344 2.7 # 116 6.8225 -8.5344 2.700 # 117 7.625 -6.5939 2.700 # 118 7.625 -5.9639 2.700 # 119 7.625 -2.2977 2.700 # 120 7.625 -1.6677 2.700 # 121 6.8225 0.9144 2.700 # 122 5.3025 0.9144 2.700 # 123 4.5 -1.6677 2.700 # 124 4.5 -2.2977 2.700 # 125 4.5 -5.9639 2.700 # 126 4.5 -6.5939 2.700 # 127 5.3025 -1.6677 2.700 # 128 5.7484 -1.2222 2.700 # 129 6.378 -1.2222 2.700 # 130 6.8225 -1.6677 2.700 # 131 6.8225 -2.2977 2.700 # 132 6.378 -2.7432 2.700 # 133 5.7484 -2.7432 2.700 # 134 5.3025 -2.2977 2.700 # 135 5.3025 -5.9639 2.700 # 136 5.7480 -5.5184 2.700 # 137 6.3780 -5.5184 2.700 # 138 6.8225 -5.9639 2.700 # 139 6.8225 -6.5939 2.700 # 140 6.3780 -7.0394 2.700 # 141 5.7480 -7.0394 2.700 # 142 5.3025 -6.5939 2.700 # 143 #Coordinates need for glass window panes 5.3025 -1.6677 2.9 # 144 5.7484 -1.2222 2.9 # 145 6.378 -1.2222 2.9 # 146 6.8225 -1.6677 2.9 # 147 6.8225 -2.2977 2.9 # 148 6.378 -2.7432 2.9 # 149 5.7484 -2.7432 2.9 # 150 5.3025 -2.2977 2.9 # 151 5.3025 -5.9639 2.9 # 152 5.7480 -5.5184 2.9 # 153 6.3780 -5.5184 2.9 # 154 6.8225 -5.9639 2.9 # 155 6.8225 -6.5939 2.9 # 156 6.3780 -7.0394 2.9 # 157 5.7480 -7.0394 2.9 # 158 5.3025 -6.5939 2.9 # 159 ] } coordIndex[ #wall 1 #Outside 0, 88, 114, 115, 99, -1, 88, 89, 113, 114, -1, 89, 1, 90, 112, 113, -1, 90, 91, 111, 112, -1, 91, 92, 104, 105, 110, 111, -1, 92, 93, 103, 104, -1, 93, 2, 94, 102, 103, -1, 94, 95, 101, 102, -1, 95, 3, 96, 100, 101, -1, 96, 97, 107, 100, -1, 97, 98, 108, 109, 106, 107, -1, 98, 99, 115, 108, -1, 106, 109, 110, 105, -1, #Inside 118, 37, 117, 141, 140, -1, 117, 116, 142, 141, -1, 116, 36, 127, 143, 142, -1, 127, 126, 136, 143, -1, 126, 125, 135, 134, 137, 136, -1, 125, 124, 128, 135, -1, 124, 39, 123, 129, 128, -1, 123, 122, 130, 129, -1, 122, 38, 121, 131, 130, -1, 121, 120, 132, 131, -1, 120, 119, 139, 138, 133, 132, -1, 119, 118, 140, 139, -1, 133, 138, 137, 134, -1, #Side 0,3, 39, 36, -1, #top window sill 106, 105, 133, 134, -1, 105, 104, 132, 133, -1, 104, 103, 131, 132, -1, 103, 102, 130, 131, -1, 102, 101, 129, 130, -1, 101, 100, 128, 129, -1, 100, 107, 135, 128, -1, 107, 106, 134, 135, -1, #bottom window sill 115, 114, 142, 143, -1, 114, 113, 141, 142, -1, 113, 112, 140, 141, -1, 112, 111, 139, 140, -1, 111, 110, 138, 139, -1, 110, 109, 137, 138, -1, 109, 108, 136, 137, -1, 108, 115, 143, 136, -1, #wall 2 #Outside 1, 4, 12, 13, -1, 4, 5, 7, 12, -1, 5, 2, 6, 7, -1, 1, 13, 6, 2, -1, 8, 9, 10, 11, -1, #Inside 40, 37, 49, 48, -1, 37, 38, 42, 49, -1, 38, 41, 43, 42, -1, 40, 48, 43, 41, -1, 47, 46, 45, 44, -1, #top window sill 9, 8, 44, 45, -1, 8, 7, 43, 44, -1, 7, 6, 42, 43, -1, 6, 9, 45, 42, -1 #bottom window sill 13, 12, 48, 49, -1, 12, 11, 47, 48, -1, 11, 10, 46, 47, -1, 10, 13, 49, 46, -1, #wall 3 #Outside 4, 14, 22,23, -1, 14, 15, 17, 22 -1, 15, 5, 16, 17, -1, 4, 23, 16, 5, -1, 18, 19, 20, 21, -1, #Inside 50, 40, 59, 58, -1, 40, 41, 52, 59, -1, 51, 53, 52, 41, -1, 50, 58, 53, 51, -1, 54, 57, 56, 55, -1, #top window sill 19, 18, 54, 55, -1, 18, 17, 53, 54, -1, 17, 16, 52, 53, -1, 16, 19, 55, 52, -1, #bottom window sill 23, 22, 58, 59, -1, 22, 21, 57, 58, -1, 21, 20, 56, 57, -1, 20, 23, 59, 56, -1, #wall 4 14, 24, 25, 15, -1, 60, 50, 51, 61, -1, #wall 5 24, 26, 27, 25, -1, 62, 60, 61, 63, -1, #wall 6 26, 28, 29, 27, -1, 64, 62, 63, 65, -1, #wall 7 28, 30, 31, 29, -1, 66, 64, 65, 67, -1, #wall 8 30, 32, 33, 31, -1, 68, 66, 67, 69, -1, #wall 9 32, 34, 35, 33, -1, 70, 68, 69, 71, -1, #Side 35, 34, 70, 71, -1, ] }#end geometry IndexedFaceSet walls }#end Shape walls Transform{ children[ Shape{ appearance Appearance{ material Material { diffuseColor 1.0 0 0 } } geometry IndexedFaceSet{ coord USE wallCoordinates # coordIndex [ # 115, 114, 142, 143, -1, # 114, 113, 141, 142, -1, # 113, 112, 140, 141, -1, # 112, 111, 139, 140, -1, # 111, 110, 138, 139, -1, # 110, 109, 137, 138, -1, # 109, 108, 136, 137, -1, # 108, 115, 143, 136, -1, # ] } } ] } Transform{ children[ Shape{ appearance USE Glass geometry IndexedFaceSet{ coord USE wallCoordinates coordIndex[ #wall 1 upper/lower outside 151, 150, 149, 148, 147, 146, 145, 144, -1, 159, 158, 157, 156, 155, 154, 153, 152, -1, #wall 1 upper/lower inside 128, 129, 130, 131, 132, 133, 134, 135, -1, 136, 137, 138, 139, 140, 141, 142, 143, -1, #wall 2 upper/lower outside 75, 74, 73, 72, -1, 79, 78, 77, 76, -1, #wall 2 upper/lower inside 42, 43, 44, 45, -1, 46, 47, 48, 49, -1, #wall 3 upper/lower outside 83, 82, 81, 80, -1, 87, 86, 85, 84, -1, #wall 3 upper/lower inside 52, 53, 54, 55, -1, 56, 57, 58, 59, -1, ] } } ] } #BEAMS #middle beam DEF Beam Shape{ appearance DEF Beams Appearance{ material Material{ ambientIntensity 0 diffuseColor 0 0 0 shininess 0.19 } } geometry IndexedFaceSet{ coord Coordinate { point [ # Coordinates around top of middle beam -0.1 0.91 0.1, 0.1 0.91 0.1, 0.1 0.91 -0.1, -0.1 0.91 -0.1, # Coordinates around bottom of middle beam -0.1 -7.21 0.1, 0.1 -7.21 0.1, 0.1 -7.21 -0.1, -0.1 -7.21 -0.1, ] } coordIndex[ #middle beam top 0, 1, 2, 3, -1, #middle beam bottom 7, 6, 5, 4, -1, #front, left and back of beam 4, 5, 1, 0, -1, 5, 6, 2, 1, -1, 6, 7, 3, 2, -1, #right side of beam 0, 3, 7, 4, -1, ] } }#end middle beam #right beam DEF RightBeam Transform { translation 2.5 0.0 1.0 rotation 0.0 1.0 0.0 -.40 children USE Beam } #left beam DEF LeftBeam Transform { translation -2.5 0.0 1.0 rotation 0.0 1.0 0.0 .40 children USE Beam } #horizontal beam Shape{ appearance USE Beams geometry IndexedFaceSet{ coord Coordinate { point [ # New Coordinates around top front of horizontal beam -4.5 -2.8 3 #0 -2.5 -2.8 1 #1 0 -2.8 0 #2 2.5 -2.8 1 #3 4.5 -2.8 3 #4 # New Coordinates around bottom front of horizontal beam -4.5 -3 3 #5 -2.5 -3 1 #6 0 -3 0 #7 2.5 -3 1 #8 4.5 -3 3 #9 # New Coordinates around top back of horizontal beam -4.4 -2.8 2.875 #10 -2.5 -2.8 0.75 #11 0 -2.8 -0.25 #12 2.5 -2.8 0.75 #13 4.5 -2.8 2.875 #14 # New Coordinates around bottom back of horizontal beam -4.5 -3 2.875 #15 -2.5 -3 0.75 #16 0 -3 -0.25 #17 2.5 -3 0.75 #18 4.5 -3 2.875 #19 ] } coordIndex[ #front of horizontal beam 0, 5, 6, 1, -1, 1, 6, 7, 2, -1, 2, 7, 8, 3, -1, 3, 8, 9, 4, -1, #top of horizontal beam 10, 0, 1, 11, -1, 11, 1, 2, 12, -1, 12, 2, 3, 13, -1, 13, 3, 4, 14, -1, #back of horizontal beam 14, 19, 18, 13, -1, 13, 18, 17, 12, -1, 12, 17, 16, 11, -1, 11, 16, 15, 10, -1, #bottom of horizontal beam 9, 8, 18, 19, -1, 8, 7, 17, 18, -1, 7, 6, 16, 17, -1, 6, 5, 15, 16, -1, ] }#end geometry IndexedFaceSet horizontal beam }#end horizontal beam #FLOORS #Bottom Floor Transform { translation 0.0 -8.5344 0.0 children [ Shape{ appearance Appearance{ material Material{ diffuseColor .4 .2 .1 } } geometry Box { size 40 .1 40 } } ] }#end Bottom Floor Transform #Top floor LOD { range [ 10.0 ] level [ WorldInfo { } # null node at close range makes top floor disappear Shape{ appearance Appearance { material Material { diffuseColor 0.6 0.545 0.502 } } geometry IndexedFaceSet{ coord Coordinate { point [ #Coordinates around inside top tank 0 0.915 -.3 #0 2.5 0.915 .7 #1 4.5000 0.915 2.7 #2 7.6250 0.915 2.7 #3 9.95 0.915 0.3750 #4 9.95 0.915 -4.3750 #5 6.3750 0.915 -7.7 #6 -5.5000 0.915 -7.7 #7 -10.2000 0.915 -2.8750 #8 ???????????? -10.2000 0.915 0.2500 #9 ????????????? -7.6250 0.915 2.7 #10 -4.5000 0.915 2.7 #11 -2.5 0.915 .7 #12 # Coordinates around outside of top floor 0.0 1.01 10.0, #13 15.0 1.01 10.0, #14 15.0 1.01 0.0, #15 15.0 1.01 -15.0, #16 0.0 1.01 -15.0, #17 -15.0 1.01 -15.0, #18 -15.0 1.01 0.0, #19 -15.0 1.01 10.0, #20 ] } coordIndex [ 0, 13, 1, -1, 1, 13, 2, -1, 2, 13, 3, -1, 3, 13, 14, -1, 3, 14, 4, -1, 4, 14, 15, -1, 4, 15, 5, -1, 5, 15, 16, -1, 5, 16, 6, -1, 6, 16, 17, -1, 6, 17, 7, -1, 7, 17, 18, -1, 7, 18, 8, -1, 8, 18, 19, -1, 8, 19, 9, -1, 9, 19, 20, -1, 9, 20, 10, -1, 10, 20, 11, -1, 11, 20, 13, -1, 11, 13, 12, -1, 12, 13, 0, -1, ] solid FALSE } } ] }#end top floor LOD #AERATOR Transform { translation -5.125 .5 -6.875 children [ Shape{ appearance Appearance{ material Material{ diffuseColor 0.5451 0.5333 0.4745 shininess 0 } } geometry Cylinder { height 3 } } ] }#end column Transform ]#end children }#end group ROUTE CameraInsideTankSensor.isActive TO InsideTankFog.set_bind