├── .gitignore ├── 3d_print ├── BallCaster.scad ├── BallCaster.stl ├── sumobot.scad └── sumobot │ ├── bottom.stl │ ├── front-curved.stl │ ├── front-flat.stl │ ├── side.stl │ ├── top-arduino.stl │ ├── top-pinoccio.stl │ └── wheel.stl ├── README.md ├── assets ├── 3dprintsumo.png ├── amalgamation.png ├── sumobotjr.png └── synshop.png ├── code_example ├── .eslintrc ├── package.json ├── rover.js ├── spark-sumo.js ├── sumobot-sync.js ├── sumobot.js └── thriller.js ├── cutting_plans ├── Build 2015 Maker Robot.svg ├── SumoBot_Jr.psvg ├── pdf │ ├── SumoBot_Jr-3mm.pdf │ ├── SumoBot_Jr-5mm.pdf │ └── SumoBot_Jr-6mm.pdf ├── soccerbotjr-5mm_ponoko.eps ├── sumbotjr-3mm.eps ├── sumbotjr-3mm_ponoko.eps ├── sumbotjr-5mm.eps ├── sumbotjr-5mm_double_ponoko.eps ├── sumbotjr-5mm_double_ponoko_updated.eps └── sumbotjr-5mm_ponoko.eps ├── fun_stuff ├── SoccerBot │ ├── README.md │ ├── WheelHub.scad │ ├── WheelHub.stl │ ├── soccer-mods.eps │ └── soccerbot.png ├── kittytaim.ai └── kittytaim.pdf └── sumobot-instructions.pdf /.gitignore: -------------------------------------------------------------------------------- 1 | code_example/node_modules/ 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /3d_print/BallCaster.scad: -------------------------------------------------------------------------------- 1 | WallThickness = 2; 2 | BallSize = 15.88; 3 | Airgap = .5; 4 | Mount = 3; 5 | TotalHeight = 19.5; 6 | MountScrewRad = 1.5; //3mm screw 7 | BallProtrude = .33; //percentage of ball radius sticking out 8 | 9 | MountType = 1; //1=ears 2=center screw 10 | ScrewSpacing = 25; 11 | 12 | 13 | cylheight = TotalHeight; 14 | cylrad = (BallSize/2) + WallThickness + Airgap; 15 | echo (cylheight); 16 | difference () { 17 | cylinder(r1 = cylrad , r2 = cylrad, cylheight - (BallSize*BallProtrude)); 18 | 19 | translate([0,0,TotalHeight - BallSize/2]) { 20 | cube(size = [cylrad*2+5, cylrad/2, BallSize*1.25], center = true ); 21 | } 22 | 23 | translate([0,0,TotalHeight - (BallSize/2)]) { 24 | sphere (BallSize/2+Airgap, $fa=5, $fs=0.1); 25 | } 26 | } 27 | 28 | difference (){ 29 | linear_extrude(height=Mount) 30 | hull() { 31 | translate([ScrewSpacing/2,0,0]) { 32 | circle( MountScrewRad*3); 33 | } 34 | translate([1-ScrewSpacing/2,0,0]) { 35 | circle( MountScrewRad*3); 36 | } 37 | circle( cylrad); 38 | } 39 | 40 | translate([ScrewSpacing/2,0,0]) { 41 | cylinder(r1 = MountScrewRad, r2 = MountScrewRad, h= Mount+2); 42 | } 43 | translate([1-ScrewSpacing/2,0,0]) { 44 | cylinder(r1 = MountScrewRad, r2 = MountScrewRad, h= Mount+2); 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /3d_print/sumobot.scad: -------------------------------------------------------------------------------- 1 | /* 2 | * ============================================================================= 3 | * SumoBot Kit Master OpenSCAD File 4 | * ============================================================================= 5 | * All measurements are in mm, because go metric or go home. 6 | */ 7 | 8 | /* Build Flags - Variables to programatically select which part to output */ 9 | 10 | build_laser_sheet = 1; 11 | build_wheel = 0; 12 | build_top = 0; 13 | build_shovel = 0; 14 | build_bottom = 0; 15 | build_side = 0; 16 | 17 | /* Features Flags */ 18 | 19 | // For 3D printing, we can have a curved or flat shovel 20 | curved_shovel = 0; 21 | 22 | // For 3D printing, we can include a ball caster on the bottom 23 | built_in_caster = 0; 24 | 25 | // For 3D printing, we can have a built in wheel hub 26 | built_in_hub = 1; 27 | 28 | // For 3D printing, we can select a pinoccio mount for the top 29 | pinoccio_top = 0; 30 | 31 | /* Parameters */ 32 | 33 | // Kerf is the amount of space removed by a cutting tool. I use it 34 | // here to describe how much space to leave between tabs and space. 35 | // For laser cutters, I use 0.05, for 3D printers I use 0.375 36 | kerf = 0.05; 37 | 38 | // How thick is the material? This also is the tab height. 39 | material_thickness = 4.75; 40 | 41 | // How high is the battery case? 42 | battery_case_height = 16; 43 | 44 | // How large is our servo hole? 45 | servo_height = 21.5; 46 | servo_length = 42.5; 47 | 48 | // How long is the sumo bot? 49 | sled_length = 80.5; 50 | 51 | // How wide is the sumo bot? 52 | sled_width = 63.5; 53 | 54 | // How close to the edge of the material do we place a tab? 55 | tab_edge_distance = 5; 56 | 57 | // How long are our tabs? 58 | tab_length = 10; 59 | 60 | // What is the angle that the sumobot shovel? 61 | ramp_angle = 80; 62 | 63 | // How wide is the shovel? 64 | shovel_width = 100; 65 | 66 | // How high is the shovel? 67 | shovel_height = 45; 68 | 69 | // Only for a 3D printed, curved shovel, how tall is the side? 70 | shovel_side_height = 20; 71 | 72 | // How big are our ziptie holes? 73 | ziptie_height = 5; 74 | ziptie_width = 2.5; 75 | 76 | // How big are the screw holes? 2.25mm is good for #4 wood screws 77 | screw_diameter = 2.25; 78 | 79 | // How far apart are our ball caster holes? 80 | caster_screw_spacing = 25; 81 | 82 | // How far back from the front do we place the caster? 83 | caster_position = 12; 84 | 85 | // How big are our wheels? 86 | wheel_radius = 30; 87 | 88 | // Caster Settings 89 | Caster_WallThickness = 2; 90 | Caster_BallSize = 12.5; 91 | Caster_Airgap = .5; 92 | Caster_TotalHeight = 14; 93 | Caster_BallProtrude = .33; 94 | 95 | // Servo Wheel 96 | SERVO_HEAD_CLEAR = 0.2; 97 | FUTABA_3F_SPLINE = [ 98 | [6, 4, 1.1, 2.5], 99 | [25, 0.3, 0.7, 0.1] 100 | ]; 101 | FUTABA_3F_SPLINE_KERF = [ 102 | [6-(kerf/2), 4, 1.1, 2.5], 103 | [25, 0.3, 0.7, 0.1] 104 | ]; 105 | 106 | /* Calculated Values */ 107 | 108 | // Tab spacing account for kerf 109 | tab_spacing = kerf * 2; 110 | 111 | // We figure out the side based on a snug fit for the battery case 112 | sled_height = ((material_thickness + tab_edge_distance) * 2 ) + 113 | servo_height + battery_case_height; 114 | 115 | // Length of the ramp (bottom of the right triangle) depends on the angle 116 | ramp_length = cos( ramp_angle ) * sled_height; 117 | 118 | // We want to place the tab the correct tab distance on the bottom, so we need 119 | // to cut into the distance taken up by the ramp. 120 | ramp_tab_distance = cos(ramp_angle)*( tab_edge_distance + material_thickness); 121 | 122 | // The length of the sled plus the length of the ramp 123 | side_length = sled_length + ( cos( ramp_angle ) * (sled_height - tab_edge_distance) ); 124 | 125 | /* Utility Modules */ 126 | 127 | // A hole for a screw. 128 | module screw_hole() { 129 | circle(d=screw_diameter); 130 | } 131 | 132 | // Male side of the tab 133 | module tab() { 134 | square([tab_length, material_thickness]); 135 | } 136 | 137 | // Female side of the tab 138 | module tab_hole() { 139 | translate([tab_spacing/-2,tab_spacing/-2]) 140 | square([tab_length + tab_spacing, material_thickness +tab_spacing]); 141 | } 142 | 143 | // A ziptie hole 144 | module ziptie_hole() { 145 | square([ziptie_width,ziptie_height]); 146 | } 147 | 148 | // Built-in ball caster 149 | module caster() { 150 | cylheight = Caster_TotalHeight; 151 | cylrad = (Caster_BallSize/2) + Caster_WallThickness + Caster_Airgap; 152 | difference () { 153 | cylinder(r1 = cylrad , r2 = cylrad, cylheight - (Caster_BallSize*Caster_BallProtrude)); 154 | translate([0,0,Caster_TotalHeight - Caster_BallSize/2]) { 155 | cube(size = [cylrad*2+5, cylrad/2, Caster_BallSize*1.25], center = true ); 156 | } 157 | translate([0,0,Caster_TotalHeight - (Caster_BallSize/2)]) { 158 | sphere (Caster_BallSize/2+Caster_Airgap, $fa=5, $fs=0.1); 159 | } 160 | } 161 | } 162 | 163 | // Servo mounting hole including a circular cutout for the wires 164 | module servo_hole() { 165 | square([servo_length, servo_height]); 166 | // screw holes 167 | translate([-4.5,(servo_height/2)+5]) 168 | screw_hole(); 169 | translate([-4.5,(servo_height/2)-5]) 170 | screw_hole(); 171 | translate([servo_length+4.5,(servo_height/2)+5]) 172 | screw_hole(); 173 | translate([servo_length+4.5,(servo_height/2)-5]) 174 | screw_hole(); 175 | // wire hole 176 | hull() { 177 | translate([servo_length-1,servo_height/2]) 178 | square(6,center=true); 179 | translate([servo_length+2.5,servo_height/2]) 180 | circle(3,center=true); 181 | } 182 | 183 | } 184 | 185 | // Mounting holes for an arduino 186 | module arduino_holes() { 187 | translate([-26.05,-24.1]) { 188 | translate([0, 15.2]) screw_hole(); 189 | translate([0, 43.1]) screw_hole(); 190 | translate([50.8, 0]) screw_hole(); 191 | translate([52.1, 48.2]) screw_hole(); 192 | } 193 | } 194 | 195 | // A special pinoccio shaped mount for the top of the bot 196 | module pinoccio_mount() { 197 | height = 11; 198 | base_width = 26.5; 199 | base_length = 45.5; 200 | bevel_width = 11; 201 | bevel_length =8.5; 202 | wall_thickness = 2; 203 | plug_hole_size = 3.5; 204 | 205 | translate([base_length/-2-bevel_length/-2,-base_width/2]) 206 | difference() { 207 | linear_extrude(height) 208 | hull() { 209 | translate([0,-wall_thickness]) 210 | square([base_length + wall_thickness,base_width + wall_thickness*2]); 211 | translate([-bevel_length - wall_thickness,base_width/2-bevel_width/2]) 212 | square(bevel_width); 213 | } 214 | translate([0,0,-1]) 215 | linear_extrude(height+2) 216 | hull() { 217 | square([base_length,base_width]); 218 | translate([-bevel_length,base_width/2-bevel_width/2]) 219 | square(bevel_width); 220 | } 221 | translate([base_length-1, base_width/2,height]) 222 | rotate([0,90]) 223 | cylinder(r=plug_hole_size,h=wall_thickness+2); 224 | } 225 | } 226 | 227 | // The little curved part on the side of the curved shovel 228 | module sloped_support(size) { 229 | difference() { 230 | cube([size,material_thickness,size]); 231 | translate([size,material_thickness+1,size]) 232 | rotate([90]) 233 | cylinder(r=size-material_thickness,h=material_thickness+2); 234 | } 235 | } 236 | 237 | // Side for a curved shovel (___) 238 | module shovel_side() { 239 | cube([material_thickness,shovel_height,shovel_side_height]); 240 | sloped_support(shovel_side_height); 241 | translate([0,shovel_height-material_thickness]) 242 | sloped_support(shovel_side_height); 243 | } 244 | 245 | module servo_head_tooth(length, width, height, head_height) { 246 | linear_extrude(height = head_height) { 247 | polygon([[-length / 2, 0], [-width / 2, height], [width / 2, height], [length / 2,0]]); 248 | } 249 | } 250 | 251 | // The little part that you can attach servo hubs to on a servo, used for the 252 | // built in hub option of the wheel. 253 | module servo_head(params, clear = SERVO_HEAD_CLEAR) { 254 | 255 | head = params[0]; 256 | tooth = params[1]; 257 | 258 | head_diameter = head[0]; 259 | head_heigth = head[1]; 260 | 261 | tooth_count = tooth[0]; 262 | tooth_height = tooth[1]; 263 | tooth_length = tooth[2]; 264 | tooth_width = tooth[3]; 265 | 266 | union() { 267 | cylinder(r = head_diameter / 2 + 0.1, h = head_heigth + 1); 268 | 269 | cylinder(r = head_diameter / 2 - tooth_height + 0.03 + clear, h = head_heigth); 270 | 271 | for (i = [0 : tooth_count]) { 272 | rotate([0, 0, i * (360 / tooth_count)]) { 273 | translate([0, head_diameter / 2 - tooth_height + clear, 0]) { 274 | servo_head_tooth(tooth_length, tooth_width, tooth_height, head_heigth); 275 | } 276 | } 277 | } 278 | } 279 | } 280 | 281 | // The little screw slot in the side of the sumo bot - 282 | module wheel_screw_slot() { 283 | hull() { 284 | translate([0,0,-1]) 285 | cylinder(d=screw_diameter,h=material_thickness+2); 286 | translate([0,8,-1]) 287 | cylinder(d=screw_diameter,h=material_thickness+2); 288 | } 289 | } 290 | 291 | /* Parts */ 292 | 293 | // The side of the sumobot /___| 294 | module side() { 295 | linear_extrude(height=material_thickness) 296 | difference() { 297 | 298 | union() { 299 | square([sled_length, sled_height]); 300 | polygon([[0,0], [0,sled_height], [-ramp_length,0]] ); 301 | translate([-ramp_length/2,sled_height/2]) 302 | rotate(ramp_angle) 303 | translate([-tab_length/2,-0.1]) 304 | tab(); 305 | } 306 | 307 | // Servo hole 308 | translate([sled_length - servo_length - tab_length - tab_edge_distance - tab_edge_distance, 309 | material_thickness + tab_edge_distance]) 310 | servo_hole(); 311 | 312 | // Bottom right 313 | translate([sled_length - tab_length - tab_edge_distance, tab_edge_distance]) 314 | tab_hole(); 315 | 316 | // Bottom Left 317 | translate([-ramp_length + ramp_tab_distance + tab_edge_distance, 318 | tab_edge_distance]) 319 | tab_hole(); 320 | 321 | // Top left 322 | translate([tab_edge_distance, sled_height - material_thickness - tab_edge_distance]) 323 | tab_hole(); 324 | 325 | // Top right 326 | translate([sled_length - tab_length - tab_edge_distance, 327 | sled_height - material_thickness - tab_edge_distance]) 328 | tab_hole(); 329 | } 330 | } 331 | 332 | // The bottom of the sumobot [: ] 333 | module bottom(built_in_caster=built_in_caster) { 334 | bottom_offset = (ramp_length + sled_length) - side_length; 335 | translate([bottom_offset, 0]) 336 | linear_extrude(height=material_thickness) 337 | difference() { 338 | union() { 339 | square([side_length,sled_width]); 340 | translate([-bottom_offset + ramp_tab_distance + tab_edge_distance,-material_thickness]) 341 | tab(); 342 | translate([-bottom_offset + ramp_tab_distance + tab_edge_distance, sled_width]) 343 | tab(); 344 | translate([side_length-tab_length-tab_edge_distance,sled_width]) 345 | tab(); 346 | translate([side_length-tab_length-tab_edge_distance,-material_thickness]) 347 | tab(); 348 | } 349 | 350 | // Screw Holes 351 | if (!built_in_caster) { 352 | translate([caster_position, sled_width/2 + caster_screw_spacing/2]) screw_hole(); 353 | translate([caster_position, sled_width/2 - caster_screw_spacing/2]) screw_hole(); 354 | } 355 | 356 | // Ziptie Holes 357 | translate([side_length - servo_length - tab_length - tab_edge_distance - 358 | tab_edge_distance - ziptie_width, servo_height/2 - (ziptie_height/2)]) 359 | ziptie_hole(); // Bottom Left 360 | translate([side_length - servo_length - tab_length - tab_edge_distance - 361 | tab_edge_distance - ziptie_width, sled_width - ziptie_height - servo_height/2 + (ziptie_height/2)]) 362 | ziptie_hole(); // Top Left 363 | translate([side_length - tab_length - tab_edge_distance - tab_edge_distance, 364 | servo_height/2 - (ziptie_height/2)]) 365 | ziptie_hole(); // Bottom Right 366 | translate([side_length - tab_length - tab_edge_distance - tab_edge_distance, 367 | sled_width - ziptie_height - servo_height/2 + (ziptie_height/2)]) 368 | ziptie_hole(); // Top Right 369 | } 370 | // Caster 371 | if (built_in_caster) { 372 | rotate([0,0,90]) 373 | translate([sled_width/2, -caster_position, material_thickness]) 374 | caster(); 375 | } 376 | 377 | } 378 | 379 | // The top of the sumobot. [: ;] 380 | module top() { 381 | union() { 382 | linear_extrude(height=material_thickness) 383 | difference() { 384 | union() { 385 | square([sled_length,sled_width]); 386 | translate([tab_edge_distance,-material_thickness]) 387 | tab(); 388 | translate([tab_edge_distance,sled_width]) 389 | tab(); 390 | translate([sled_length-tab_length-tab_edge_distance,sled_width]) 391 | tab(); 392 | translate([sled_length-tab_length-tab_edge_distance,-material_thickness]) 393 | tab(); 394 | } 395 | translate([sled_length/2,sled_width/2]) arduino_holes(); 396 | } 397 | if ( pinoccio_top ) { 398 | translate([sled_length/2,sled_width/2,material_thickness]) 399 | pinoccio_mount(); 400 | } 401 | } 402 | } 403 | 404 | // The front of the sumobot [ ' '' ] 405 | module shovel(curved_shovel=curved_shovel) { 406 | union() { 407 | linear_extrude(height=material_thickness) 408 | difference() { 409 | square([shovel_width, shovel_height]); 410 | translate([ shovel_width/2 - sled_width/2, shovel_height/2 - tab_length/2]) 411 | rotate([0,0,90]) tab_hole(); 412 | translate([shovel_width/2 + sled_width/2 + material_thickness, shovel_height/2 - tab_length/2]) 413 | rotate([0,0,90]) tab_hole(); 414 | } 415 | if (curved_shovel) { 416 | shovel_side(); 417 | translate([shovel_width,shovel_height]) 418 | rotate([0,0,180]) 419 | shovel_side(); 420 | } 421 | } 422 | } 423 | 424 | // Sumobot wheel ( ) 425 | module wheel(built_in_hub=built_in_hub) { 426 | layer_height = material_thickness/3; 427 | difference() { 428 | union() { 429 | cylinder(r=wheel_radius,h=layer_height); 430 | cylinder(r=wheel_radius-0.5,h=material_thickness); 431 | translate([0,0,layer_height*2]) 432 | cylinder(r=wheel_radius,h=layer_height); 433 | if (built_in_hub) 434 | cylinder(r=5,h=4.5); 435 | } 436 | translate([0,0,-1]) 437 | cylinder(d=screw_diameter,h=material_thickness+2); 438 | if (built_in_hub) { 439 | translate([0,0,1]) 440 | servo_head(FUTABA_3F_SPLINE); 441 | } else { 442 | servo_head(FUTABA_3F_SPLINE_KERF); 443 | // screw hole 444 | translate([0,7]) 445 | wheel_screw_slot(); 446 | translate([0,-15]) 447 | wheel_screw_slot(); 448 | } 449 | } 450 | } 451 | 452 | // When we want to make a file for laser cutting, we can use this to keep 453 | // all components on one sheet. 454 | module laser_sheet(spacing=2) { 455 | 456 | // We want high resolution circles. 457 | $fn = 50; 458 | 459 | // Right Side 460 | translate([sled_length+spacing, sled_height+spacing]) mirror([1,0,0]) 461 | side(); 462 | translate([ramp_length+spacing,-shovel_height - spacing]) 463 | side(); 464 | translate([spacing-ramp_length,sled_height-shovel_height]) 465 | shovel(curved_shovel=0); 466 | translate([wheel_radius+spacing,-shovel_height-wheel_radius-spacing*2]) 467 | wheel(built_in_hub=0); 468 | 469 | 470 | // Left Side 471 | translate([0,-wheel_radius/2]) { 472 | translate([-wheel_radius,sled_width+wheel_radius+material_thickness]) 473 | wheel(built_in_hub=0); 474 | translate([-sled_length - ramp_length, 0]) 475 | top(); 476 | translate([-sled_length - ramp_length, -sled_width - material_thickness * 2 - spacing ]) 477 | bottom(built_in_caster=0); 478 | } 479 | 480 | } 481 | 482 | /* Part Output */ 483 | 484 | if ( build_laser_sheet ) { 485 | projection(cut=true) 486 | laser_sheet(2); 487 | } 488 | 489 | if ( build_wheel ) { 490 | wheel(); 491 | } 492 | 493 | if ( build_top ) { 494 | top(); 495 | } 496 | 497 | if ( build_shovel ) { 498 | shovel(); 499 | } 500 | 501 | if ( build_bottom ) { 502 | bottom(); 503 | } 504 | 505 | if ( build_side ) { 506 | side(); 507 | } 508 | -------------------------------------------------------------------------------- /3d_print/sumobot/front-curved.stl: -------------------------------------------------------------------------------- 1 | solid OpenSCAD_Model 2 | facet normal -1 0 0 3 | outer loop 4 | vertex 0 0 0 5 | vertex 0 0 20 6 | vertex 0 45 0 7 | endloop 8 | endfacet 9 | facet normal -1 0 0 10 | outer loop 11 | vertex 0 45 0 12 | vertex 0 0 20 13 | vertex 0 45 20 14 | endloop 15 | endfacet 16 | facet normal 0 -1 0 17 | outer loop 18 | vertex 20 0 4.75 19 | vertex 0 0 0 20 | vertex 100 0 0 21 | endloop 22 | endfacet 23 | facet normal 0 -1 0 24 | outer loop 25 | vertex 6.06843 0 13.7973 26 | vertex 5.08325 0 16.8293 27 | vertex 0 0 20 28 | endloop 29 | endfacet 30 | facet normal 0 -1 0 31 | outer loop 32 | vertex 18.4059 0 4.83354 33 | vertex 0 0 0 34 | vertex 20 0 4.75 35 | endloop 36 | endfacet 37 | facet normal 0 -1 0 38 | outer loop 39 | vertex 20 0 4.83354 40 | vertex 18.4059 0 4.83354 41 | vertex 20 0 4.75 42 | endloop 43 | endfacet 44 | facet normal 0 -1 0 45 | outer loop 46 | vertex 15.2875 0 5.49639 47 | vertex 0 0 0 48 | vertex 18.4059 0 4.83354 49 | endloop 50 | endfacet 51 | facet normal 0 -1 0 52 | outer loop 53 | vertex 5.08325 0 16.8293 54 | vertex 4.75 0 20 55 | vertex 0 0 20 56 | endloop 57 | endfacet 58 | facet normal 0 -1 0 59 | outer loop 60 | vertex 12.375 0 6.79311 61 | vertex 0 0 0 62 | vertex 15.2875 0 5.49639 63 | endloop 64 | endfacet 65 | facet normal 0 -1 0 66 | outer loop 67 | vertex 9.79576 0 8.66704 68 | vertex 0 0 0 69 | vertex 12.375 0 6.79311 70 | endloop 71 | endfacet 72 | facet normal 0 -1 0 73 | outer loop 74 | vertex 7.66249 0 11.0363 75 | vertex 0 0 0 76 | vertex 9.79576 0 8.66704 77 | endloop 78 | endfacet 79 | facet normal 0 -1 0 80 | outer loop 81 | vertex 0 0 20 82 | vertex 0 0 0 83 | vertex 7.66249 0 11.0363 84 | endloop 85 | endfacet 86 | facet normal 0 -1 0 87 | outer loop 88 | vertex 7.66249 0 11.0363 89 | vertex 6.06843 0 13.7973 90 | vertex 0 0 20 91 | endloop 92 | endfacet 93 | facet normal 0 -1 0 94 | outer loop 95 | vertex 100 0 4.75 96 | vertex 20 0 4.75 97 | vertex 100 0 0 98 | endloop 99 | endfacet 100 | facet normal 0 0 -1 101 | outer loop 102 | vertex 18.625 27.875 0 103 | vertex 0 45 0 104 | vertex 100 0 0 105 | endloop 106 | endfacet 107 | facet normal 0 0 -1 108 | outer loop 109 | vertex 81.375 27.875 0 110 | vertex 0 45 0 111 | vertex 80 45 0 112 | endloop 113 | endfacet 114 | facet normal 0 0 -1 115 | outer loop 116 | vertex 100 0 0 117 | vertex 80 45 0 118 | vertex 100 45 0 119 | endloop 120 | endfacet 121 | facet normal 0 0 -1 122 | outer loop 123 | vertex 0 0 0 124 | vertex 0 45 0 125 | vertex 13.125 27.875 0 126 | endloop 127 | endfacet 128 | facet normal 0 0 -1 129 | outer loop 130 | vertex 0 0 0 131 | vertex 13.125 27.875 0 132 | vertex 13.125 17.125 0 133 | endloop 134 | endfacet 135 | facet normal 0 0 -1 136 | outer loop 137 | vertex 0 0 0 138 | vertex 13.125 17.125 0 139 | vertex 100 0 0 140 | endloop 141 | endfacet 142 | facet normal 0 0 -1 143 | outer loop 144 | vertex 13.125 17.125 0 145 | vertex 18.625 17.125 0 146 | vertex 100 0 0 147 | endloop 148 | endfacet 149 | facet normal 0 0 -1 150 | outer loop 151 | vertex 13.125 27.875 0 152 | vertex 0 45 0 153 | vertex 18.625 27.875 0 154 | endloop 155 | endfacet 156 | facet normal 0 0 -1 157 | outer loop 158 | vertex 86.875 27.875 0 159 | vertex 100 0 0 160 | vertex 86.875 17.125 0 161 | endloop 162 | endfacet 163 | facet normal 0 0 -1 164 | outer loop 165 | vertex 81.375 17.125 0 166 | vertex 0 45 0 167 | vertex 81.375 27.875 0 168 | endloop 169 | endfacet 170 | facet normal 0 0 -1 171 | outer loop 172 | vertex 86.875 27.875 0 173 | vertex 81.375 27.875 0 174 | vertex 80 45 0 175 | endloop 176 | endfacet 177 | facet normal 0 0 -1 178 | outer loop 179 | vertex 100 0 0 180 | vertex 0 45 0 181 | vertex 81.375 17.125 0 182 | endloop 183 | endfacet 184 | facet normal 0 0 -1 185 | outer loop 186 | vertex 100 0 0 187 | vertex 81.375 17.125 0 188 | vertex 86.875 17.125 0 189 | endloop 190 | endfacet 191 | facet normal 0 0 -1 192 | outer loop 193 | vertex 100 0 0 194 | vertex 86.875 27.875 0 195 | vertex 80 45 0 196 | endloop 197 | endfacet 198 | facet normal 0 0 -1 199 | outer loop 200 | vertex 18.625 27.875 0 201 | vertex 100 0 0 202 | vertex 18.625 17.125 0 203 | endloop 204 | endfacet 205 | facet normal 0 1 0 206 | outer loop 207 | vertex 80 45 4.75 208 | vertex 80 45 0 209 | vertex 20 45 4.75 210 | endloop 211 | endfacet 212 | facet normal 0 1 0 213 | outer loop 214 | vertex 0 45 0 215 | vertex 0 45 20 216 | vertex 5.08325 45 16.8293 217 | endloop 218 | endfacet 219 | facet normal 0 1 0 220 | outer loop 221 | vertex 0 45 0 222 | vertex 5.08325 45 16.8293 223 | vertex 6.06843 45 13.7973 224 | endloop 225 | endfacet 226 | facet normal 0 1 0 227 | outer loop 228 | vertex 0 45 0 229 | vertex 6.06843 45 13.7973 230 | vertex 7.66249 45 11.0363 231 | endloop 232 | endfacet 233 | facet normal 0 1 0 234 | outer loop 235 | vertex 0 45 0 236 | vertex 7.66249 45 11.0363 237 | vertex 9.79576 45 8.66704 238 | endloop 239 | endfacet 240 | facet normal 0 1 0 241 | outer loop 242 | vertex 0 45 0 243 | vertex 9.79576 45 8.66704 244 | vertex 12.375 45 6.79311 245 | endloop 246 | endfacet 247 | facet normal 0 1 0 248 | outer loop 249 | vertex 0 45 0 250 | vertex 12.375 45 6.79311 251 | vertex 15.2875 45 5.49639 252 | endloop 253 | endfacet 254 | facet normal 0 1 0 255 | outer loop 256 | vertex 0 45 0 257 | vertex 15.2875 45 5.49639 258 | vertex 18.4059 45 4.83354 259 | endloop 260 | endfacet 261 | facet normal 0 1 0 262 | outer loop 263 | vertex 0 45 0 264 | vertex 18.4059 45 4.83354 265 | vertex 80 45 0 266 | endloop 267 | endfacet 268 | facet normal 0 1 0 269 | outer loop 270 | vertex 18.4059 45 4.83354 271 | vertex 20 45 4.83354 272 | vertex 20 45 4.75 273 | endloop 274 | endfacet 275 | facet normal 0 1 0 276 | outer loop 277 | vertex 18.4059 45 4.83354 278 | vertex 20 45 4.75 279 | vertex 80 45 0 280 | endloop 281 | endfacet 282 | facet normal 0 1 0 283 | outer loop 284 | vertex 5.08325 45 16.8293 285 | vertex 0 45 20 286 | vertex 4.75 45 20 287 | endloop 288 | endfacet 289 | facet normal 0 0 1 290 | outer loop 291 | vertex 0 45 20 292 | vertex 0 0 20 293 | vertex 4.75 0 20 294 | endloop 295 | endfacet 296 | facet normal 0 0 1 297 | outer loop 298 | vertex 4.75 4.75 20 299 | vertex 0 45 20 300 | vertex 4.75 0 20 301 | endloop 302 | endfacet 303 | facet normal 0 0 1 304 | outer loop 305 | vertex 4.75 45 20 306 | vertex 0 45 20 307 | vertex 4.75 40.25 20 308 | endloop 309 | endfacet 310 | facet normal 0 0 1 311 | outer loop 312 | vertex 4.75 4.75 20 313 | vertex 4.75 40.25 20 314 | vertex 0 45 20 315 | endloop 316 | endfacet 317 | facet normal 0.994522 2.321e-17 0.104528 318 | outer loop 319 | vertex 4.75 0 20 320 | vertex 5.08325 0 16.8293 321 | vertex 5.08325 4.75 16.8293 322 | endloop 323 | endfacet 324 | facet normal 0.994522 2.321e-17 0.104528 325 | outer loop 326 | vertex 4.75 4.75 20 327 | vertex 4.75 0 20 328 | vertex 5.08325 4.75 16.8293 329 | endloop 330 | endfacet 331 | facet normal 0.951057 6.86156e-17 0.309017 332 | outer loop 333 | vertex 6.06843 0 13.7973 334 | vertex 6.06843 4.75 13.7973 335 | vertex 5.08325 4.75 16.8293 336 | endloop 337 | endfacet 338 | facet normal 0.951057 6.86156e-17 0.309017 339 | outer loop 340 | vertex 5.08325 0 16.8293 341 | vertex 6.06843 0 13.7973 342 | vertex 5.08325 4.75 16.8293 343 | endloop 344 | endfacet 345 | facet normal 0.866025 1.11022e-16 0.5 346 | outer loop 347 | vertex 7.66249 0 11.0363 348 | vertex 7.66249 4.75 11.0363 349 | vertex 6.06843 4.75 13.7973 350 | endloop 351 | endfacet 352 | facet normal 0.866025 1.11022e-16 0.5 353 | outer loop 354 | vertex 6.06843 0 13.7973 355 | vertex 7.66249 0 11.0363 356 | vertex 6.06843 4.75 13.7973 357 | endloop 358 | endfacet 359 | facet normal 0.743145 1.48577e-16 0.66913 360 | outer loop 361 | vertex 9.79576 0 8.66704 362 | vertex 9.79576 4.75 8.66704 363 | vertex 7.66249 4.75 11.0363 364 | endloop 365 | endfacet 366 | facet normal 0.743145 1.48577e-16 0.66913 367 | outer loop 368 | vertex 7.66249 0 11.0363 369 | vertex 9.79576 0 8.66704 370 | vertex 7.66249 4.75 11.0363 371 | endloop 372 | endfacet 373 | facet normal 0.587785 1.79638e-16 0.809017 374 | outer loop 375 | vertex 12.375 0 6.79311 376 | vertex 12.375 4.75 6.79311 377 | vertex 9.79576 4.75 8.66704 378 | endloop 379 | endfacet 380 | facet normal 0.587785 1.79638e-16 0.809017 381 | outer loop 382 | vertex 9.79576 0 8.66704 383 | vertex 12.375 0 6.79311 384 | vertex 9.79576 4.75 8.66704 385 | endloop 386 | endfacet 387 | facet normal 0.406737 2.02848e-16 0.913545 388 | outer loop 389 | vertex 15.2875 0 5.49639 390 | vertex 15.2875 4.75 5.49639 391 | vertex 12.375 4.75 6.79311 392 | endloop 393 | endfacet 394 | facet normal 0.406737 2.02848e-16 0.913545 395 | outer loop 396 | vertex 12.375 0 6.79311 397 | vertex 15.2875 0 5.49639 398 | vertex 12.375 4.75 6.79311 399 | endloop 400 | endfacet 401 | facet normal 0.207912 2.17192e-16 0.978148 402 | outer loop 403 | vertex 18.4059 0 4.83354 404 | vertex 18.4059 4.75 4.83354 405 | vertex 15.2875 4.75 5.49639 406 | endloop 407 | endfacet 408 | facet normal 0.207912 2.17192e-16 0.978148 409 | outer loop 410 | vertex 15.2875 0 5.49639 411 | vertex 18.4059 0 4.83354 412 | vertex 15.2875 4.75 5.49639 413 | endloop 414 | endfacet 415 | facet normal 0 2.22045e-16 1 416 | outer loop 417 | vertex 20 0 4.83354 418 | vertex 20 4.75 4.83354 419 | vertex 18.4059 4.75 4.83354 420 | endloop 421 | endfacet 422 | facet normal 0 2.22045e-16 1 423 | outer loop 424 | vertex 18.4059 0 4.83354 425 | vertex 20 0 4.83354 426 | vertex 18.4059 4.75 4.83354 427 | endloop 428 | endfacet 429 | facet normal 1 0 0 430 | outer loop 431 | vertex 20 0 4.83354 432 | vertex 20 0 4.75 433 | vertex 20 4.75 4.75 434 | endloop 435 | endfacet 436 | facet normal 1 0 0 437 | outer loop 438 | vertex 20 4.75 4.83354 439 | vertex 20 0 4.83354 440 | vertex 20 4.75 4.75 441 | endloop 442 | endfacet 443 | facet normal 0 0 1 444 | outer loop 445 | vertex 13.125 17.125 4.75 446 | vertex 13.125 27.875 4.75 447 | vertex 4.75 40.25 4.75 448 | endloop 449 | endfacet 450 | facet normal 0 0 1 451 | outer loop 452 | vertex 13.125 17.125 4.75 453 | vertex 4.75 4.75 4.75 454 | vertex 20 4.75 4.75 455 | endloop 456 | endfacet 457 | facet normal 0 0 1 458 | outer loop 459 | vertex 18.625 27.875 4.75 460 | vertex 18.625 17.125 4.75 461 | vertex 80 4.75 4.75 462 | endloop 463 | endfacet 464 | facet normal 0 0 1 465 | outer loop 466 | vertex 80 4.75 4.75 467 | vertex 95.25 4.75 4.75 468 | vertex 4.75 40.25 4.75 469 | endloop 470 | endfacet 471 | facet normal 0 0 1 472 | outer loop 473 | vertex 20 0 4.75 474 | vertex 80 2.44929e-15 4.75 475 | vertex 20 4.75 4.75 476 | endloop 477 | endfacet 478 | facet normal 0 0 1 479 | outer loop 480 | vertex 20 0 4.75 481 | vertex 100 0 4.75 482 | vertex 80 2.44929e-15 4.75 483 | endloop 484 | endfacet 485 | facet normal 0 0 1 486 | outer loop 487 | vertex 20 45 4.75 488 | vertex 80 40.25 4.75 489 | vertex 80 45 4.75 490 | endloop 491 | endfacet 492 | facet normal 0 0 1 493 | outer loop 494 | vertex 18.625 17.125 4.75 495 | vertex 13.125 17.125 4.75 496 | vertex 20 4.75 4.75 497 | endloop 498 | endfacet 499 | facet normal 0 0 1 500 | outer loop 501 | vertex 95.25 4.75 4.75 502 | vertex 20 40.25 4.75 503 | vertex 4.75 40.25 4.75 504 | endloop 505 | endfacet 506 | facet normal 0 0 1 507 | outer loop 508 | vertex 81.375 27.875 4.75 509 | vertex 95.25 40.25 4.75 510 | vertex 20 40.25 4.75 511 | endloop 512 | endfacet 513 | facet normal 0 0 1 514 | outer loop 515 | vertex 4.75 40.25 4.75 516 | vertex 4.75 4.75 4.75 517 | vertex 13.125 17.125 4.75 518 | endloop 519 | endfacet 520 | facet normal 0 0 1 521 | outer loop 522 | vertex 18.625 27.875 4.75 523 | vertex 4.75 40.25 4.75 524 | vertex 13.125 27.875 4.75 525 | endloop 526 | endfacet 527 | facet normal 0 0 1 528 | outer loop 529 | vertex 86.875 27.875 4.75 530 | vertex 86.875 17.125 4.75 531 | vertex 95.25 40.25 4.75 532 | endloop 533 | endfacet 534 | facet normal 0 0 1 535 | outer loop 536 | vertex 80 4.75 4.75 537 | vertex 4.75 40.25 4.75 538 | vertex 18.625 27.875 4.75 539 | endloop 540 | endfacet 541 | facet normal 0 0 1 542 | outer loop 543 | vertex 80 4.75 4.75 544 | vertex 18.625 17.125 4.75 545 | vertex 20 4.75 4.75 546 | endloop 547 | endfacet 548 | facet normal 0 0 1 549 | outer loop 550 | vertex 95.25 4.75 4.75 551 | vertex 81.375 17.125 4.75 552 | vertex 20 40.25 4.75 553 | endloop 554 | endfacet 555 | facet normal 0 0 1 556 | outer loop 557 | vertex 81.375 17.125 4.75 558 | vertex 81.375 27.875 4.75 559 | vertex 20 40.25 4.75 560 | endloop 561 | endfacet 562 | facet normal 0 0 1 563 | outer loop 564 | vertex 86.875 27.875 4.75 565 | vertex 95.25 40.25 4.75 566 | vertex 81.375 27.875 4.75 567 | endloop 568 | endfacet 569 | facet normal 0 0 1 570 | outer loop 571 | vertex 95.25 4.75 4.75 572 | vertex 86.875 17.125 4.75 573 | vertex 81.375 17.125 4.75 574 | endloop 575 | endfacet 576 | facet normal 0 0 1 577 | outer loop 578 | vertex 95.25 4.75 4.75 579 | vertex 95.25 40.25 4.75 580 | vertex 86.875 17.125 4.75 581 | endloop 582 | endfacet 583 | facet normal 0 0 1 584 | outer loop 585 | vertex 80 2.44929e-15 4.75 586 | vertex 80 4.75 4.75 587 | vertex 20 4.75 4.75 588 | endloop 589 | endfacet 590 | facet normal 0 0 1 591 | outer loop 592 | vertex 80 40.25 4.75 593 | vertex 20 40.25 4.75 594 | vertex 95.25 40.25 4.75 595 | endloop 596 | endfacet 597 | facet normal 0 0 1 598 | outer loop 599 | vertex 20 45 4.75 600 | vertex 20 40.25 4.75 601 | vertex 80 40.25 4.75 602 | endloop 603 | endfacet 604 | facet normal -1.22465e-16 -1 0 605 | outer loop 606 | vertex 80 2.44929e-15 4.83354 607 | vertex 80 2.44929e-15 4.75 608 | vertex 100 0 4.75 609 | endloop 610 | endfacet 611 | facet normal -1.22465e-16 -1 0 612 | outer loop 613 | vertex 81.5941 2.25408e-15 4.83354 614 | vertex 80 2.44929e-15 4.83354 615 | vertex 100 0 4.75 616 | endloop 617 | endfacet 618 | facet normal -1.22465e-16 -1 0 619 | outer loop 620 | vertex 95.25 5.81707e-16 20 621 | vertex 94.9168 6.22518e-16 16.8293 622 | vertex 100 0 20 623 | endloop 624 | endfacet 625 | facet normal -1.22465e-16 -1 0 626 | outer loop 627 | vertex 100 0 20 628 | vertex 93.9316 7.43169e-16 13.7973 629 | vertex 100 0 4.75 630 | endloop 631 | endfacet 632 | facet normal -1.22465e-16 -1 0 633 | outer loop 634 | vertex 93.9316 7.43169e-16 13.7973 635 | vertex 92.3375 9.38385e-16 11.0363 636 | vertex 100 0 4.75 637 | endloop 638 | endfacet 639 | facet normal -1.22465e-16 -1 0 640 | outer loop 641 | vertex 92.3375 9.38385e-16 11.0363 642 | vertex 90.2042 1.19963e-15 8.66704 643 | vertex 100 0 4.75 644 | endloop 645 | endfacet 646 | facet normal -1.22465e-16 -1 0 647 | outer loop 648 | vertex 90.2042 1.19963e-15 8.66704 649 | vertex 87.625 1.5155e-15 6.79311 650 | vertex 100 0 4.75 651 | endloop 652 | endfacet 653 | facet normal -1.22465e-16 -1 0 654 | outer loop 655 | vertex 87.625 1.5155e-15 6.79311 656 | vertex 84.7125 1.87218e-15 5.49639 657 | vertex 100 0 4.75 658 | endloop 659 | endfacet 660 | facet normal -1.22465e-16 -1 0 661 | outer loop 662 | vertex 84.7125 1.87218e-15 5.49639 663 | vertex 81.5941 2.25408e-15 4.83354 664 | vertex 100 0 4.75 665 | endloop 666 | endfacet 667 | facet normal -1.22465e-16 -1 0 668 | outer loop 669 | vertex 94.9168 6.22518e-16 16.8293 670 | vertex 93.9316 7.43169e-16 13.7973 671 | vertex 100 0 20 672 | endloop 673 | endfacet 674 | facet normal 1 -1.22465e-16 0 675 | outer loop 676 | vertex 100 0 20 677 | vertex 100 0 4.75 678 | vertex 100 45 4.75 679 | endloop 680 | endfacet 681 | facet normal 1 -1.22465e-16 0 682 | outer loop 683 | vertex 100 45 20 684 | vertex 100 0 20 685 | vertex 100 45 4.75 686 | endloop 687 | endfacet 688 | facet normal 1 0 0 689 | outer loop 690 | vertex 100 0 4.75 691 | vertex 100 0 0 692 | vertex 100 45 0 693 | endloop 694 | endfacet 695 | facet normal 1 0 0 696 | outer loop 697 | vertex 100 45 4.75 698 | vertex 100 0 4.75 699 | vertex 100 45 0 700 | endloop 701 | endfacet 702 | facet normal 1.22465e-16 1 0 703 | outer loop 704 | vertex 80 45 0 705 | vertex 80 45 4.83354 706 | vertex 100 45 0 707 | endloop 708 | endfacet 709 | facet normal 1.22465e-16 1 0 710 | outer loop 711 | vertex 100 45 0 712 | vertex 80 45 4.83354 713 | vertex 81.5941 45 4.83354 714 | endloop 715 | endfacet 716 | facet normal 1.22465e-16 1 0 717 | outer loop 718 | vertex 100 45 0 719 | vertex 81.5941 45 4.83354 720 | vertex 84.7125 45 5.49639 721 | endloop 722 | endfacet 723 | facet normal 1.22465e-16 1 0 724 | outer loop 725 | vertex 84.7125 45 5.49639 726 | vertex 87.625 45 6.79311 727 | vertex 100 45 0 728 | endloop 729 | endfacet 730 | facet normal 1.22465e-16 1 0 731 | outer loop 732 | vertex 87.625 45 6.79311 733 | vertex 90.2042 45 8.66704 734 | vertex 100 45 0 735 | endloop 736 | endfacet 737 | facet normal 1.22465e-16 1 0 738 | outer loop 739 | vertex 90.2042 45 8.66704 740 | vertex 92.3375 45 11.0363 741 | vertex 100 45 0 742 | endloop 743 | endfacet 744 | facet normal 1.22465e-16 1 0 745 | outer loop 746 | vertex 92.3375 45 11.0363 747 | vertex 93.9316 45 13.7973 748 | vertex 100 45 0 749 | endloop 750 | endfacet 751 | facet normal 1.22465e-16 1 0 752 | outer loop 753 | vertex 93.9316 45 13.7973 754 | vertex 94.9168 45 16.8293 755 | vertex 100 45 0 756 | endloop 757 | endfacet 758 | facet normal 1.22465e-16 1 0 759 | outer loop 760 | vertex 94.9168 45 16.8293 761 | vertex 95.25 45 20 762 | vertex 100 45 0 763 | endloop 764 | endfacet 765 | facet normal 1.22465e-16 1 0 766 | outer loop 767 | vertex 100 45 4.75 768 | vertex 95.25 45 20 769 | vertex 100 45 20 770 | endloop 771 | endfacet 772 | facet normal 1.22465e-16 1 0 773 | outer loop 774 | vertex 100 45 0 775 | vertex 95.25 45 20 776 | vertex 100 45 4.75 777 | endloop 778 | endfacet 779 | facet normal -1 1.22465e-16 0 780 | outer loop 781 | vertex 80 40.25 4.75 782 | vertex 80 40.25 4.83354 783 | vertex 80 45 4.75 784 | endloop 785 | endfacet 786 | facet normal -1 1.22465e-16 0 787 | outer loop 788 | vertex 80 45 4.75 789 | vertex 80 40.25 4.83354 790 | vertex 80 45 4.83354 791 | endloop 792 | endfacet 793 | facet normal -1 1.22465e-16 0 794 | outer loop 795 | vertex 80 45 4.75 796 | vertex 80 45 4.83354 797 | vertex 80 45 0 798 | endloop 799 | endfacet 800 | facet normal 0 -1 0 801 | outer loop 802 | vertex 13.125 27.875 4.75 803 | vertex 13.125 27.875 0 804 | vertex 18.625 27.875 0 805 | endloop 806 | endfacet 807 | facet normal 0 -1 0 808 | outer loop 809 | vertex 18.625 27.875 4.75 810 | vertex 13.125 27.875 4.75 811 | vertex 18.625 27.875 0 812 | endloop 813 | endfacet 814 | facet normal 1 0 0 815 | outer loop 816 | vertex 13.125 17.125 4.75 817 | vertex 13.125 17.125 0 818 | vertex 13.125 27.875 0 819 | endloop 820 | endfacet 821 | facet normal 1 0 0 822 | outer loop 823 | vertex 13.125 27.875 4.75 824 | vertex 13.125 17.125 4.75 825 | vertex 13.125 27.875 0 826 | endloop 827 | endfacet 828 | facet normal -1 0 0 829 | outer loop 830 | vertex 18.625 17.125 0 831 | vertex 18.625 17.125 4.75 832 | vertex 18.625 27.875 0 833 | endloop 834 | endfacet 835 | facet normal -1 0 0 836 | outer loop 837 | vertex 18.625 27.875 0 838 | vertex 18.625 17.125 4.75 839 | vertex 18.625 27.875 4.75 840 | endloop 841 | endfacet 842 | facet normal 0 1 0 843 | outer loop 844 | vertex 13.125 17.125 0 845 | vertex 13.125 17.125 4.75 846 | vertex 18.625 17.125 0 847 | endloop 848 | endfacet 849 | facet normal 0 1 0 850 | outer loop 851 | vertex 18.625 17.125 0 852 | vertex 13.125 17.125 4.75 853 | vertex 18.625 17.125 4.75 854 | endloop 855 | endfacet 856 | facet normal 0 -1 0 857 | outer loop 858 | vertex 81.375 27.875 4.75 859 | vertex 81.375 27.875 0 860 | vertex 86.875 27.875 0 861 | endloop 862 | endfacet 863 | facet normal 0 -1 0 864 | outer loop 865 | vertex 86.875 27.875 4.75 866 | vertex 81.375 27.875 4.75 867 | vertex 86.875 27.875 0 868 | endloop 869 | endfacet 870 | facet normal 1 0 0 871 | outer loop 872 | vertex 81.375 17.125 4.75 873 | vertex 81.375 17.125 0 874 | vertex 81.375 27.875 0 875 | endloop 876 | endfacet 877 | facet normal 1 0 0 878 | outer loop 879 | vertex 81.375 27.875 4.75 880 | vertex 81.375 17.125 4.75 881 | vertex 81.375 27.875 0 882 | endloop 883 | endfacet 884 | facet normal -1 0 0 885 | outer loop 886 | vertex 86.875 17.125 0 887 | vertex 86.875 17.125 4.75 888 | vertex 86.875 27.875 0 889 | endloop 890 | endfacet 891 | facet normal -1 0 0 892 | outer loop 893 | vertex 86.875 27.875 0 894 | vertex 86.875 17.125 4.75 895 | vertex 86.875 27.875 4.75 896 | endloop 897 | endfacet 898 | facet normal 0 1 0 899 | outer loop 900 | vertex 81.375 17.125 0 901 | vertex 81.375 17.125 4.75 902 | vertex 86.875 17.125 0 903 | endloop 904 | endfacet 905 | facet normal 0 1 0 906 | outer loop 907 | vertex 86.875 17.125 0 908 | vertex 81.375 17.125 4.75 909 | vertex 86.875 17.125 4.75 910 | endloop 911 | endfacet 912 | facet normal 1 0 0 913 | outer loop 914 | vertex 20 40.25 4.83354 915 | vertex 20 40.25 4.75 916 | vertex 20 45 4.75 917 | endloop 918 | endfacet 919 | facet normal 1 0 0 920 | outer loop 921 | vertex 20 45 4.83354 922 | vertex 20 40.25 4.83354 923 | vertex 20 45 4.75 924 | endloop 925 | endfacet 926 | facet normal 0 2.22045e-16 1 927 | outer loop 928 | vertex 20 40.25 4.83354 929 | vertex 20 45 4.83354 930 | vertex 18.4059 45 4.83354 931 | endloop 932 | endfacet 933 | facet normal 0 2.22045e-16 1 934 | outer loop 935 | vertex 18.4059 40.25 4.83354 936 | vertex 20 40.25 4.83354 937 | vertex 18.4059 45 4.83354 938 | endloop 939 | endfacet 940 | facet normal 0.207912 2.17192e-16 0.978148 941 | outer loop 942 | vertex 18.4059 40.25 4.83354 943 | vertex 18.4059 45 4.83354 944 | vertex 15.2875 45 5.49639 945 | endloop 946 | endfacet 947 | facet normal 0.207912 2.17192e-16 0.978148 948 | outer loop 949 | vertex 15.2875 40.25 5.49639 950 | vertex 18.4059 40.25 4.83354 951 | vertex 15.2875 45 5.49639 952 | endloop 953 | endfacet 954 | facet normal 0.406737 2.02848e-16 0.913545 955 | outer loop 956 | vertex 15.2875 40.25 5.49639 957 | vertex 15.2875 45 5.49639 958 | vertex 12.375 45 6.79311 959 | endloop 960 | endfacet 961 | facet normal 0.406737 2.02848e-16 0.913545 962 | outer loop 963 | vertex 12.375 40.25 6.79311 964 | vertex 15.2875 40.25 5.49639 965 | vertex 12.375 45 6.79311 966 | endloop 967 | endfacet 968 | facet normal 0.587785 1.79638e-16 0.809017 969 | outer loop 970 | vertex 12.375 40.25 6.79311 971 | vertex 12.375 45 6.79311 972 | vertex 9.79576 45 8.66704 973 | endloop 974 | endfacet 975 | facet normal 0.587785 1.79638e-16 0.809017 976 | outer loop 977 | vertex 9.79576 40.25 8.66704 978 | vertex 12.375 40.25 6.79311 979 | vertex 9.79576 45 8.66704 980 | endloop 981 | endfacet 982 | facet normal 0.743145 1.48577e-16 0.66913 983 | outer loop 984 | vertex 9.79576 40.25 8.66704 985 | vertex 9.79576 45 8.66704 986 | vertex 7.66249 45 11.0363 987 | endloop 988 | endfacet 989 | facet normal 0.743145 1.48577e-16 0.66913 990 | outer loop 991 | vertex 7.66249 40.25 11.0363 992 | vertex 9.79576 40.25 8.66704 993 | vertex 7.66249 45 11.0363 994 | endloop 995 | endfacet 996 | facet normal 0.866025 1.11022e-16 0.5 997 | outer loop 998 | vertex 7.66249 40.25 11.0363 999 | vertex 7.66249 45 11.0363 1000 | vertex 6.06843 45 13.7973 1001 | endloop 1002 | endfacet 1003 | facet normal 0.866025 1.11022e-16 0.5 1004 | outer loop 1005 | vertex 6.06843 40.25 13.7973 1006 | vertex 7.66249 40.25 11.0363 1007 | vertex 6.06843 45 13.7973 1008 | endloop 1009 | endfacet 1010 | facet normal 0.951057 6.86156e-17 0.309017 1011 | outer loop 1012 | vertex 6.06843 40.25 13.7973 1013 | vertex 6.06843 45 13.7973 1014 | vertex 5.08325 45 16.8293 1015 | endloop 1016 | endfacet 1017 | facet normal 0.951057 6.86156e-17 0.309017 1018 | outer loop 1019 | vertex 5.08325 40.25 16.8293 1020 | vertex 6.06843 40.25 13.7973 1021 | vertex 5.08325 45 16.8293 1022 | endloop 1023 | endfacet 1024 | facet normal 0.994522 2.321e-17 0.104528 1025 | outer loop 1026 | vertex 4.75 40.25 20 1027 | vertex 5.08325 40.25 16.8293 1028 | vertex 5.08325 45 16.8293 1029 | endloop 1030 | endfacet 1031 | facet normal 0.994522 2.321e-17 0.104528 1032 | outer loop 1033 | vertex 4.75 45 20 1034 | vertex 4.75 40.25 20 1035 | vertex 5.08325 45 16.8293 1036 | endloop 1037 | endfacet 1038 | facet normal 0 -1 0 1039 | outer loop 1040 | vertex 18.4059 40.25 4.83354 1041 | vertex 4.75 40.25 4.75 1042 | vertex 20 40.25 4.75 1043 | endloop 1044 | endfacet 1045 | facet normal 0 -1 0 1046 | outer loop 1047 | vertex 15.2875 40.25 5.49639 1048 | vertex 4.75 40.25 4.75 1049 | vertex 18.4059 40.25 4.83354 1050 | endloop 1051 | endfacet 1052 | facet normal 0 -1 0 1053 | outer loop 1054 | vertex 12.375 40.25 6.79311 1055 | vertex 4.75 40.25 4.75 1056 | vertex 15.2875 40.25 5.49639 1057 | endloop 1058 | endfacet 1059 | facet normal 0 -1 0 1060 | outer loop 1061 | vertex 9.79576 40.25 8.66704 1062 | vertex 4.75 40.25 4.75 1063 | vertex 12.375 40.25 6.79311 1064 | endloop 1065 | endfacet 1066 | facet normal 0 -1 0 1067 | outer loop 1068 | vertex 7.66249 40.25 11.0363 1069 | vertex 4.75 40.25 4.75 1070 | vertex 9.79576 40.25 8.66704 1071 | endloop 1072 | endfacet 1073 | facet normal 0 -1 0 1074 | outer loop 1075 | vertex 6.06843 40.25 13.7973 1076 | vertex 4.75 40.25 4.75 1077 | vertex 7.66249 40.25 11.0363 1078 | endloop 1079 | endfacet 1080 | facet normal 0 -1 0 1081 | outer loop 1082 | vertex 5.08325 40.25 16.8293 1083 | vertex 4.75 40.25 4.75 1084 | vertex 6.06843 40.25 13.7973 1085 | endloop 1086 | endfacet 1087 | facet normal 0 -1 0 1088 | outer loop 1089 | vertex 4.75 40.25 20 1090 | vertex 4.75 40.25 4.75 1091 | vertex 5.08325 40.25 16.8293 1092 | endloop 1093 | endfacet 1094 | facet normal 0 -1 0 1095 | outer loop 1096 | vertex 20 40.25 4.83354 1097 | vertex 18.4059 40.25 4.83354 1098 | vertex 20 40.25 4.75 1099 | endloop 1100 | endfacet 1101 | facet normal 1 0 0 1102 | outer loop 1103 | vertex 4.75 4.75 20 1104 | vertex 4.75 4.75 4.75 1105 | vertex 4.75 40.25 4.75 1106 | endloop 1107 | endfacet 1108 | facet normal 1 0 0 1109 | outer loop 1110 | vertex 4.75 40.25 20 1111 | vertex 4.75 4.75 20 1112 | vertex 4.75 40.25 4.75 1113 | endloop 1114 | endfacet 1115 | facet normal 0 1 0 1116 | outer loop 1117 | vertex 20 4.75 4.83354 1118 | vertex 20 4.75 4.75 1119 | vertex 18.4059 4.75 4.83354 1120 | endloop 1121 | endfacet 1122 | facet normal 0 1 0 1123 | outer loop 1124 | vertex 4.75 4.75 4.75 1125 | vertex 4.75 4.75 20 1126 | vertex 5.08325 4.75 16.8293 1127 | endloop 1128 | endfacet 1129 | facet normal 0 1 0 1130 | outer loop 1131 | vertex 4.75 4.75 4.75 1132 | vertex 5.08325 4.75 16.8293 1133 | vertex 6.06843 4.75 13.7973 1134 | endloop 1135 | endfacet 1136 | facet normal 0 1 0 1137 | outer loop 1138 | vertex 4.75 4.75 4.75 1139 | vertex 6.06843 4.75 13.7973 1140 | vertex 7.66249 4.75 11.0363 1141 | endloop 1142 | endfacet 1143 | facet normal 0 1 0 1144 | outer loop 1145 | vertex 4.75 4.75 4.75 1146 | vertex 7.66249 4.75 11.0363 1147 | vertex 9.79576 4.75 8.66704 1148 | endloop 1149 | endfacet 1150 | facet normal 0 1 0 1151 | outer loop 1152 | vertex 4.75 4.75 4.75 1153 | vertex 9.79576 4.75 8.66704 1154 | vertex 12.375 4.75 6.79311 1155 | endloop 1156 | endfacet 1157 | facet normal 0 1 0 1158 | outer loop 1159 | vertex 4.75 4.75 4.75 1160 | vertex 12.375 4.75 6.79311 1161 | vertex 15.2875 4.75 5.49639 1162 | endloop 1163 | endfacet 1164 | facet normal 0 1 0 1165 | outer loop 1166 | vertex 4.75 4.75 4.75 1167 | vertex 15.2875 4.75 5.49639 1168 | vertex 18.4059 4.75 4.83354 1169 | endloop 1170 | endfacet 1171 | facet normal 0 1 0 1172 | outer loop 1173 | vertex 4.75 4.75 4.75 1174 | vertex 18.4059 4.75 4.83354 1175 | vertex 20 4.75 4.75 1176 | endloop 1177 | endfacet 1178 | facet normal -1.22465e-16 -1 0 1179 | outer loop 1180 | vertex 80 40.25 4.83354 1181 | vertex 80 40.25 4.75 1182 | vertex 95.25 40.25 4.75 1183 | endloop 1184 | endfacet 1185 | facet normal -1.22465e-16 -1 0 1186 | outer loop 1187 | vertex 81.5941 40.25 4.83354 1188 | vertex 80 40.25 4.83354 1189 | vertex 95.25 40.25 4.75 1190 | endloop 1191 | endfacet 1192 | facet normal -1.22465e-16 -1 0 1193 | outer loop 1194 | vertex 95.25 40.25 20 1195 | vertex 94.9168 40.25 16.8293 1196 | vertex 95.25 40.25 4.75 1197 | endloop 1198 | endfacet 1199 | facet normal -1.22465e-16 -1 0 1200 | outer loop 1201 | vertex 94.9168 40.25 16.8293 1202 | vertex 93.9316 40.25 13.7973 1203 | vertex 95.25 40.25 4.75 1204 | endloop 1205 | endfacet 1206 | facet normal -1.22465e-16 -1 0 1207 | outer loop 1208 | vertex 93.9316 40.25 13.7973 1209 | vertex 92.3375 40.25 11.0363 1210 | vertex 95.25 40.25 4.75 1211 | endloop 1212 | endfacet 1213 | facet normal -1.22465e-16 -1 0 1214 | outer loop 1215 | vertex 92.3375 40.25 11.0363 1216 | vertex 90.2042 40.25 8.66704 1217 | vertex 95.25 40.25 4.75 1218 | endloop 1219 | endfacet 1220 | facet normal -1.22465e-16 -1 0 1221 | outer loop 1222 | vertex 90.2042 40.25 8.66704 1223 | vertex 87.625 40.25 6.79311 1224 | vertex 95.25 40.25 4.75 1225 | endloop 1226 | endfacet 1227 | facet normal -1.22465e-16 -1 0 1228 | outer loop 1229 | vertex 87.625 40.25 6.79311 1230 | vertex 84.7125 40.25 5.49639 1231 | vertex 95.25 40.25 4.75 1232 | endloop 1233 | endfacet 1234 | facet normal -1.22465e-16 -1 0 1235 | outer loop 1236 | vertex 84.7125 40.25 5.49639 1237 | vertex 81.5941 40.25 4.83354 1238 | vertex 95.25 40.25 4.75 1239 | endloop 1240 | endfacet 1241 | facet normal -1 1.22465e-16 0 1242 | outer loop 1243 | vertex 95.25 4.75 4.75 1244 | vertex 95.25 4.75 20 1245 | vertex 95.25 40.25 4.75 1246 | endloop 1247 | endfacet 1248 | facet normal -1 1.22465e-16 0 1249 | outer loop 1250 | vertex 95.25 40.25 4.75 1251 | vertex 95.25 4.75 20 1252 | vertex 95.25 40.25 20 1253 | endloop 1254 | endfacet 1255 | facet normal 1.22465e-16 1 0 1256 | outer loop 1257 | vertex 80 4.75 4.75 1258 | vertex 80 4.75 4.83354 1259 | vertex 95.25 4.75 4.75 1260 | endloop 1261 | endfacet 1262 | facet normal 1.22465e-16 1 0 1263 | outer loop 1264 | vertex 95.25 4.75 4.75 1265 | vertex 80 4.75 4.83354 1266 | vertex 81.5941 4.75 4.83354 1267 | endloop 1268 | endfacet 1269 | facet normal 1.22465e-16 1 0 1270 | outer loop 1271 | vertex 95.25 4.75 4.75 1272 | vertex 81.5941 4.75 4.83354 1273 | vertex 84.7125 4.75 5.49639 1274 | endloop 1275 | endfacet 1276 | facet normal 1.22465e-16 1 0 1277 | outer loop 1278 | vertex 84.7125 4.75 5.49639 1279 | vertex 87.625 4.75 6.79311 1280 | vertex 95.25 4.75 4.75 1281 | endloop 1282 | endfacet 1283 | facet normal 1.22465e-16 1 0 1284 | outer loop 1285 | vertex 87.625 4.75 6.79311 1286 | vertex 90.2042 4.75 8.66704 1287 | vertex 95.25 4.75 4.75 1288 | endloop 1289 | endfacet 1290 | facet normal 1.22465e-16 1 0 1291 | outer loop 1292 | vertex 90.2042 4.75 8.66704 1293 | vertex 92.3375 4.75 11.0363 1294 | vertex 95.25 4.75 4.75 1295 | endloop 1296 | endfacet 1297 | facet normal 1.22465e-16 1 0 1298 | outer loop 1299 | vertex 92.3375 4.75 11.0363 1300 | vertex 93.9316 4.75 13.7973 1301 | vertex 95.25 4.75 4.75 1302 | endloop 1303 | endfacet 1304 | facet normal 1.22465e-16 1 0 1305 | outer loop 1306 | vertex 93.9316 4.75 13.7973 1307 | vertex 94.9168 4.75 16.8293 1308 | vertex 95.25 4.75 4.75 1309 | endloop 1310 | endfacet 1311 | facet normal 1.22465e-16 1 0 1312 | outer loop 1313 | vertex 94.9168 4.75 16.8293 1314 | vertex 95.25 4.75 20 1315 | vertex 95.25 4.75 4.75 1316 | endloop 1317 | endfacet 1318 | facet normal -1 1.22465e-16 0 1319 | outer loop 1320 | vertex 80 2.44929e-15 4.75 1321 | vertex 80 2.44929e-15 4.83354 1322 | vertex 80 4.75 4.75 1323 | endloop 1324 | endfacet 1325 | facet normal -1 1.22465e-16 0 1326 | outer loop 1327 | vertex 80 4.75 4.75 1328 | vertex 80 2.44929e-15 4.83354 1329 | vertex 80 4.75 4.83354 1330 | endloop 1331 | endfacet 1332 | facet normal -2.71926e-32 -2.22045e-16 1 1333 | outer loop 1334 | vertex 81.5941 2.25408e-15 4.83354 1335 | vertex 81.5941 4.75 4.83354 1336 | vertex 80 4.75 4.83354 1337 | endloop 1338 | endfacet 1339 | facet normal -2.71926e-32 -2.22045e-16 1 1340 | outer loop 1341 | vertex 80 2.44929e-15 4.83354 1342 | vertex 81.5941 2.25408e-15 4.83354 1343 | vertex 80 4.75 4.83354 1344 | endloop 1345 | endfacet 1346 | facet normal -0.207912 -1.91731e-16 0.978148 1347 | outer loop 1348 | vertex 84.7125 1.87218e-15 5.49639 1349 | vertex 84.7125 4.75 5.49639 1350 | vertex 81.5941 4.75 4.83354 1351 | endloop 1352 | endfacet 1353 | facet normal -0.207912 -1.91731e-16 0.978148 1354 | outer loop 1355 | vertex 81.5941 2.25408e-15 4.83354 1356 | vertex 84.7125 1.87218e-15 5.49639 1357 | vertex 81.5941 4.75 4.83354 1358 | endloop 1359 | endfacet 1360 | facet normal -0.406737 -1.53037e-16 0.913545 1361 | outer loop 1362 | vertex 87.625 1.5155e-15 6.79311 1363 | vertex 87.625 4.75 6.79311 1364 | vertex 84.7125 4.75 5.49639 1365 | endloop 1366 | endfacet 1367 | facet normal -0.406737 -1.53037e-16 0.913545 1368 | outer loop 1369 | vertex 84.7125 1.87218e-15 5.49639 1370 | vertex 87.625 1.5155e-15 6.79311 1371 | vertex 84.7125 4.75 5.49639 1372 | endloop 1373 | endfacet 1374 | facet normal -0.587785 -1.07655e-16 0.809017 1375 | outer loop 1376 | vertex 90.2042 1.19963e-15 8.66704 1377 | vertex 90.2042 4.75 8.66704 1378 | vertex 87.625 4.75 6.79311 1379 | endloop 1380 | endfacet 1381 | facet normal -0.587785 -1.07655e-16 0.809017 1382 | outer loop 1383 | vertex 87.625 1.5155e-15 6.79311 1384 | vertex 90.2042 1.19963e-15 8.66704 1385 | vertex 87.625 4.75 6.79311 1386 | endloop 1387 | endfacet 1388 | facet normal -0.743145 -5.75678e-17 0.66913 1389 | outer loop 1390 | vertex 92.3375 4.75 11.0363 1391 | vertex 90.2042 4.75 8.66704 1392 | vertex 92.3375 9.38385e-16 11.0363 1393 | endloop 1394 | endfacet 1395 | facet normal -0.743145 -5.75678e-17 0.66913 1396 | outer loop 1397 | vertex 92.3375 9.38385e-16 11.0363 1398 | vertex 90.2042 4.75 8.66704 1399 | vertex 90.2042 1.19963e-15 8.66704 1400 | endloop 1401 | endfacet 1402 | facet normal -0.866025 -4.96479e-18 0.5 1403 | outer loop 1404 | vertex 93.9316 4.75 13.7973 1405 | vertex 92.3375 4.75 11.0363 1406 | vertex 93.9316 7.43169e-16 13.7973 1407 | endloop 1408 | endfacet 1409 | facet normal -0.866025 -4.96479e-18 0.5 1410 | outer loop 1411 | vertex 93.9316 7.43169e-16 13.7973 1412 | vertex 92.3375 4.75 11.0363 1413 | vertex 92.3375 9.38385e-16 11.0363 1414 | endloop 1415 | endfacet 1416 | facet normal -0.951057 4.78553e-17 0.309017 1417 | outer loop 1418 | vertex 94.9168 4.75 16.8293 1419 | vertex 93.9316 4.75 13.7973 1420 | vertex 94.9168 6.22518e-16 16.8293 1421 | endloop 1422 | endfacet 1423 | facet normal -0.951057 4.78553e-17 0.309017 1424 | outer loop 1425 | vertex 94.9168 6.22518e-16 16.8293 1426 | vertex 93.9316 4.75 13.7973 1427 | vertex 93.9316 7.43169e-16 13.7973 1428 | endloop 1429 | endfacet 1430 | facet normal -0.994522 9.85838e-17 0.104528 1431 | outer loop 1432 | vertex 95.25 4.75 20 1433 | vertex 94.9168 4.75 16.8293 1434 | vertex 95.25 5.81707e-16 20 1435 | endloop 1436 | endfacet 1437 | facet normal -0.994522 9.85838e-17 0.104528 1438 | outer loop 1439 | vertex 95.25 5.81707e-16 20 1440 | vertex 94.9168 4.75 16.8293 1441 | vertex 94.9168 6.22518e-16 16.8293 1442 | endloop 1443 | endfacet 1444 | facet normal 0 0 1 1445 | outer loop 1446 | vertex 95.25 4.75 20 1447 | vertex 95.25 5.81707e-16 20 1448 | vertex 100 0 20 1449 | endloop 1450 | endfacet 1451 | facet normal 0 0 1 1452 | outer loop 1453 | vertex 95.25 45 20 1454 | vertex 95.25 40.25 20 1455 | vertex 100 45 20 1456 | endloop 1457 | endfacet 1458 | facet normal 0 0 1 1459 | outer loop 1460 | vertex 100 45 20 1461 | vertex 95.25 4.75 20 1462 | vertex 100 0 20 1463 | endloop 1464 | endfacet 1465 | facet normal 0 0 1 1466 | outer loop 1467 | vertex 95.25 40.25 20 1468 | vertex 95.25 4.75 20 1469 | vertex 100 45 20 1470 | endloop 1471 | endfacet 1472 | facet normal -0.994522 9.85838e-17 0.104528 1473 | outer loop 1474 | vertex 95.25 45 20 1475 | vertex 94.9168 45 16.8293 1476 | vertex 95.25 40.25 20 1477 | endloop 1478 | endfacet 1479 | facet normal -0.994522 9.85838e-17 0.104528 1480 | outer loop 1481 | vertex 95.25 40.25 20 1482 | vertex 94.9168 45 16.8293 1483 | vertex 94.9168 40.25 16.8293 1484 | endloop 1485 | endfacet 1486 | facet normal -0.951057 4.78553e-17 0.309017 1487 | outer loop 1488 | vertex 94.9168 45 16.8293 1489 | vertex 93.9316 45 13.7973 1490 | vertex 94.9168 40.25 16.8293 1491 | endloop 1492 | endfacet 1493 | facet normal -0.951057 4.78553e-17 0.309017 1494 | outer loop 1495 | vertex 94.9168 40.25 16.8293 1496 | vertex 93.9316 45 13.7973 1497 | vertex 93.9316 40.25 13.7973 1498 | endloop 1499 | endfacet 1500 | facet normal -0.866025 -4.96479e-18 0.5 1501 | outer loop 1502 | vertex 93.9316 45 13.7973 1503 | vertex 92.3375 45 11.0363 1504 | vertex 93.9316 40.25 13.7973 1505 | endloop 1506 | endfacet 1507 | facet normal -0.866025 -4.96479e-18 0.5 1508 | outer loop 1509 | vertex 93.9316 40.25 13.7973 1510 | vertex 92.3375 45 11.0363 1511 | vertex 92.3375 40.25 11.0363 1512 | endloop 1513 | endfacet 1514 | facet normal -0.743145 -5.75678e-17 0.66913 1515 | outer loop 1516 | vertex 92.3375 45 11.0363 1517 | vertex 90.2042 45 8.66704 1518 | vertex 92.3375 40.25 11.0363 1519 | endloop 1520 | endfacet 1521 | facet normal -0.743145 -5.75678e-17 0.66913 1522 | outer loop 1523 | vertex 92.3375 40.25 11.0363 1524 | vertex 90.2042 45 8.66704 1525 | vertex 90.2042 40.25 8.66704 1526 | endloop 1527 | endfacet 1528 | facet normal -0.587785 -1.07655e-16 0.809017 1529 | outer loop 1530 | vertex 90.2042 40.25 8.66704 1531 | vertex 90.2042 45 8.66704 1532 | vertex 87.625 45 6.79311 1533 | endloop 1534 | endfacet 1535 | facet normal -0.587785 -1.07655e-16 0.809017 1536 | outer loop 1537 | vertex 87.625 40.25 6.79311 1538 | vertex 90.2042 40.25 8.66704 1539 | vertex 87.625 45 6.79311 1540 | endloop 1541 | endfacet 1542 | facet normal -0.406737 -1.53037e-16 0.913545 1543 | outer loop 1544 | vertex 87.625 40.25 6.79311 1545 | vertex 87.625 45 6.79311 1546 | vertex 84.7125 45 5.49639 1547 | endloop 1548 | endfacet 1549 | facet normal -0.406737 -1.53037e-16 0.913545 1550 | outer loop 1551 | vertex 84.7125 40.25 5.49639 1552 | vertex 87.625 40.25 6.79311 1553 | vertex 84.7125 45 5.49639 1554 | endloop 1555 | endfacet 1556 | facet normal -0.207912 -1.91731e-16 0.978148 1557 | outer loop 1558 | vertex 84.7125 40.25 5.49639 1559 | vertex 84.7125 45 5.49639 1560 | vertex 81.5941 45 4.83354 1561 | endloop 1562 | endfacet 1563 | facet normal -0.207912 -1.91731e-16 0.978148 1564 | outer loop 1565 | vertex 81.5941 40.25 4.83354 1566 | vertex 84.7125 40.25 5.49639 1567 | vertex 81.5941 45 4.83354 1568 | endloop 1569 | endfacet 1570 | facet normal -2.71926e-32 -2.22045e-16 1 1571 | outer loop 1572 | vertex 81.5941 40.25 4.83354 1573 | vertex 81.5941 45 4.83354 1574 | vertex 80 45 4.83354 1575 | endloop 1576 | endfacet 1577 | facet normal -2.71926e-32 -2.22045e-16 1 1578 | outer loop 1579 | vertex 80 40.25 4.83354 1580 | vertex 81.5941 40.25 4.83354 1581 | vertex 80 45 4.83354 1582 | endloop 1583 | endfacet 1584 | endsolid OpenSCAD_Model 1585 | -------------------------------------------------------------------------------- /3d_print/sumobot/front-flat.stl: -------------------------------------------------------------------------------- 1 | solid OpenSCAD_Model 2 | facet normal 0 -1 0 3 | outer loop 4 | vertex 13.125 27.875 0 5 | vertex 18.625 27.875 0 6 | vertex 18.625 27.875 4.75 7 | endloop 8 | endfacet 9 | facet normal 0 -1 0 10 | outer loop 11 | vertex 13.125 27.875 4.75 12 | vertex 13.125 27.875 0 13 | vertex 18.625 27.875 4.75 14 | endloop 15 | endfacet 16 | facet normal 0 0 -1 17 | outer loop 18 | vertex 18.625 17.125 0 19 | vertex 100 45 0 20 | vertex 0 0 0 21 | endloop 22 | endfacet 23 | facet normal 0 0 -1 24 | outer loop 25 | vertex 86.875 17.125 0 26 | vertex 100 45 0 27 | vertex 100 0 0 28 | endloop 29 | endfacet 30 | facet normal 0 0 -1 31 | outer loop 32 | vertex 81.375 17.125 0 33 | vertex 0 0 0 34 | vertex 81.375 27.875 0 35 | endloop 36 | endfacet 37 | facet normal 0 0 -1 38 | outer loop 39 | vertex 0 45 0 40 | vertex 13.125 17.125 0 41 | vertex 0 0 0 42 | endloop 43 | endfacet 44 | facet normal 0 0 -1 45 | outer loop 46 | vertex 13.125 17.125 0 47 | vertex 18.625 17.125 0 48 | vertex 0 0 0 49 | endloop 50 | endfacet 51 | facet normal 0 0 -1 52 | outer loop 53 | vertex 0 45 0 54 | vertex 100 45 0 55 | vertex 18.625 27.875 0 56 | endloop 57 | endfacet 58 | facet normal 0 0 -1 59 | outer loop 60 | vertex 0 45 0 61 | vertex 18.625 27.875 0 62 | vertex 13.125 27.875 0 63 | endloop 64 | endfacet 65 | facet normal 0 0 -1 66 | outer loop 67 | vertex 0 45 0 68 | vertex 13.125 27.875 0 69 | vertex 13.125 17.125 0 70 | endloop 71 | endfacet 72 | facet normal 0 0 -1 73 | outer loop 74 | vertex 0 0 0 75 | vertex 81.375 17.125 0 76 | vertex 100 0 0 77 | endloop 78 | endfacet 79 | facet normal 0 0 -1 80 | outer loop 81 | vertex 81.375 17.125 0 82 | vertex 86.875 17.125 0 83 | vertex 100 0 0 84 | endloop 85 | endfacet 86 | facet normal 0 0 -1 87 | outer loop 88 | vertex 81.375 27.875 0 89 | vertex 100 45 0 90 | vertex 86.875 27.875 0 91 | endloop 92 | endfacet 93 | facet normal 0 0 -1 94 | outer loop 95 | vertex 86.875 27.875 0 96 | vertex 100 45 0 97 | vertex 86.875 17.125 0 98 | endloop 99 | endfacet 100 | facet normal 0 0 -1 101 | outer loop 102 | vertex 0 0 0 103 | vertex 100 45 0 104 | vertex 81.375 27.875 0 105 | endloop 106 | endfacet 107 | facet normal 0 0 -1 108 | outer loop 109 | vertex 18.625 27.875 0 110 | vertex 100 45 0 111 | vertex 18.625 17.125 0 112 | endloop 113 | endfacet 114 | facet normal 1 0 0 115 | outer loop 116 | vertex 13.125 17.125 0 117 | vertex 13.125 27.875 0 118 | vertex 13.125 27.875 4.75 119 | endloop 120 | endfacet 121 | facet normal 1 0 0 122 | outer loop 123 | vertex 13.125 17.125 4.75 124 | vertex 13.125 17.125 0 125 | vertex 13.125 27.875 4.75 126 | endloop 127 | endfacet 128 | facet normal 0 0 1 129 | outer loop 130 | vertex 86.875 17.125 4.75 131 | vertex 100 0 4.75 132 | vertex 100 45 4.75 133 | endloop 134 | endfacet 135 | facet normal 0 0 1 136 | outer loop 137 | vertex 18.625 17.125 4.75 138 | vertex 0 0 4.75 139 | vertex 100 45 4.75 140 | endloop 141 | endfacet 142 | facet normal 0 0 1 143 | outer loop 144 | vertex 86.875 27.875 4.75 145 | vertex 86.875 17.125 4.75 146 | vertex 100 45 4.75 147 | endloop 148 | endfacet 149 | facet normal 0 0 1 150 | outer loop 151 | vertex 0 45 4.75 152 | vertex 0 0 4.75 153 | vertex 13.125 17.125 4.75 154 | endloop 155 | endfacet 156 | facet normal 0 0 1 157 | outer loop 158 | vertex 0 45 4.75 159 | vertex 13.125 27.875 4.75 160 | vertex 100 45 4.75 161 | endloop 162 | endfacet 163 | facet normal 0 0 1 164 | outer loop 165 | vertex 0 45 4.75 166 | vertex 13.125 17.125 4.75 167 | vertex 13.125 27.875 4.75 168 | endloop 169 | endfacet 170 | facet normal 0 0 1 171 | outer loop 172 | vertex 13.125 27.875 4.75 173 | vertex 18.625 27.875 4.75 174 | vertex 100 45 4.75 175 | endloop 176 | endfacet 177 | facet normal 0 0 1 178 | outer loop 179 | vertex 13.125 17.125 4.75 180 | vertex 0 0 4.75 181 | vertex 18.625 17.125 4.75 182 | endloop 183 | endfacet 184 | facet normal 0 0 1 185 | outer loop 186 | vertex 0 0 4.75 187 | vertex 100 0 4.75 188 | vertex 81.375 17.125 4.75 189 | endloop 190 | endfacet 191 | facet normal 0 0 1 192 | outer loop 193 | vertex 0 0 4.75 194 | vertex 81.375 27.875 4.75 195 | vertex 100 45 4.75 196 | endloop 197 | endfacet 198 | facet normal 0 0 1 199 | outer loop 200 | vertex 0 0 4.75 201 | vertex 81.375 17.125 4.75 202 | vertex 81.375 27.875 4.75 203 | endloop 204 | endfacet 205 | facet normal 0 0 1 206 | outer loop 207 | vertex 81.375 27.875 4.75 208 | vertex 86.875 27.875 4.75 209 | vertex 100 45 4.75 210 | endloop 211 | endfacet 212 | facet normal 0 0 1 213 | outer loop 214 | vertex 81.375 17.125 4.75 215 | vertex 100 0 4.75 216 | vertex 86.875 17.125 4.75 217 | endloop 218 | endfacet 219 | facet normal 0 0 1 220 | outer loop 221 | vertex 18.625 27.875 4.75 222 | vertex 18.625 17.125 4.75 223 | vertex 100 45 4.75 224 | endloop 225 | endfacet 226 | facet normal -1 0 0 227 | outer loop 228 | vertex 18.625 17.125 4.75 229 | vertex 18.625 27.875 4.75 230 | vertex 18.625 17.125 0 231 | endloop 232 | endfacet 233 | facet normal -1 0 0 234 | outer loop 235 | vertex 18.625 17.125 0 236 | vertex 18.625 27.875 4.75 237 | vertex 18.625 27.875 0 238 | endloop 239 | endfacet 240 | facet normal 0 -1 0 241 | outer loop 242 | vertex 0 0 0 243 | vertex 100 0 0 244 | vertex 100 0 4.75 245 | endloop 246 | endfacet 247 | facet normal 0 -1 0 248 | outer loop 249 | vertex 0 0 4.75 250 | vertex 0 0 0 251 | vertex 100 0 4.75 252 | endloop 253 | endfacet 254 | facet normal -1 0 0 255 | outer loop 256 | vertex 0 0 4.75 257 | vertex 0 45 4.75 258 | vertex 0 0 0 259 | endloop 260 | endfacet 261 | facet normal -1 0 0 262 | outer loop 263 | vertex 0 0 0 264 | vertex 0 45 4.75 265 | vertex 0 45 0 266 | endloop 267 | endfacet 268 | facet normal 1 0 0 269 | outer loop 270 | vertex 100 0 0 271 | vertex 100 45 0 272 | vertex 100 45 4.75 273 | endloop 274 | endfacet 275 | facet normal 1 0 0 276 | outer loop 277 | vertex 100 0 4.75 278 | vertex 100 0 0 279 | vertex 100 45 4.75 280 | endloop 281 | endfacet 282 | facet normal 0 1 0 283 | outer loop 284 | vertex 0 45 4.75 285 | vertex 100 45 4.75 286 | vertex 0 45 0 287 | endloop 288 | endfacet 289 | facet normal 0 1 0 290 | outer loop 291 | vertex 0 45 0 292 | vertex 100 45 4.75 293 | vertex 100 45 0 294 | endloop 295 | endfacet 296 | facet normal 0 1 0 297 | outer loop 298 | vertex 13.125 17.125 4.75 299 | vertex 18.625 17.125 4.75 300 | vertex 13.125 17.125 0 301 | endloop 302 | endfacet 303 | facet normal 0 1 0 304 | outer loop 305 | vertex 13.125 17.125 0 306 | vertex 18.625 17.125 4.75 307 | vertex 18.625 17.125 0 308 | endloop 309 | endfacet 310 | facet normal 0 1 0 311 | outer loop 312 | vertex 81.375 17.125 4.75 313 | vertex 86.875 17.125 4.75 314 | vertex 81.375 17.125 0 315 | endloop 316 | endfacet 317 | facet normal 0 1 0 318 | outer loop 319 | vertex 81.375 17.125 0 320 | vertex 86.875 17.125 4.75 321 | vertex 86.875 17.125 0 322 | endloop 323 | endfacet 324 | facet normal 1 0 0 325 | outer loop 326 | vertex 81.375 17.125 0 327 | vertex 81.375 27.875 0 328 | vertex 81.375 27.875 4.75 329 | endloop 330 | endfacet 331 | facet normal 1 0 0 332 | outer loop 333 | vertex 81.375 17.125 4.75 334 | vertex 81.375 17.125 0 335 | vertex 81.375 27.875 4.75 336 | endloop 337 | endfacet 338 | facet normal 0 -1 0 339 | outer loop 340 | vertex 81.375 27.875 0 341 | vertex 86.875 27.875 0 342 | vertex 86.875 27.875 4.75 343 | endloop 344 | endfacet 345 | facet normal 0 -1 0 346 | outer loop 347 | vertex 81.375 27.875 4.75 348 | vertex 81.375 27.875 0 349 | vertex 86.875 27.875 4.75 350 | endloop 351 | endfacet 352 | facet normal -1 0 0 353 | outer loop 354 | vertex 86.875 17.125 4.75 355 | vertex 86.875 27.875 4.75 356 | vertex 86.875 17.125 0 357 | endloop 358 | endfacet 359 | facet normal -1 0 0 360 | outer loop 361 | vertex 86.875 17.125 0 362 | vertex 86.875 27.875 4.75 363 | vertex 86.875 27.875 0 364 | endloop 365 | endfacet 366 | endsolid OpenSCAD_Model 367 | -------------------------------------------------------------------------------- /3d_print/sumobot/side.stl: -------------------------------------------------------------------------------- 1 | solid OpenSCAD_Model 2 | facet normal 0.17336 0.984859 0 3 | outer loop 4 | vertex -7.792 33.351 4 5 | vertex -3.963 32.677 4 6 | vertex -7.792 33.351 0 7 | endloop 8 | endfacet 9 | facet normal 0.17336 0.984859 0 10 | outer loop 11 | vertex -7.792 33.351 0 12 | vertex -3.963 32.677 4 13 | vertex -3.963 32.677 0 14 | endloop 15 | endfacet 16 | facet normal 0 0 -1 17 | outer loop 18 | vertex -5.674 22.824 0 19 | vertex -9.528 23.503 0 20 | vertex -7.792 33.351 0 21 | endloop 22 | endfacet 23 | facet normal 0 0 -1 24 | outer loop 25 | vertex -5.674 22.824 0 26 | vertex -7.792 33.351 0 27 | vertex -3.963 32.677 0 28 | endloop 29 | endfacet 30 | facet normal 0 0 -1 31 | outer loop 32 | vertex -5.674 22.824 0 33 | vertex -3.963 32.677 0 34 | vertex -9.637 0 0 35 | endloop 36 | endfacet 37 | facet normal 0 0 -1 38 | outer loop 39 | vertex -3.963 32.677 0 40 | vertex 0 55.5 0 41 | vertex -9.637 0 0 42 | endloop 43 | endfacet 44 | facet normal 0 0 -1 45 | outer loop 46 | vertex 7.3 4.625 0 47 | vertex 80.5 0 0 48 | vertex -9.637 0 0 49 | endloop 50 | endfacet 51 | facet normal 0 0 -1 52 | outer loop 53 | vertex 0 55.5 0 54 | vertex 13.964 16.177 0 55 | vertex 12.286 15.632 0 56 | endloop 57 | endfacet 58 | facet normal 0 0 -1 59 | outer loop 60 | vertex 0 55.5 0 61 | vertex 12.286 15.632 0 62 | vertex 12.286 13.868 0 63 | endloop 64 | endfacet 65 | facet normal 0 0 -1 66 | outer loop 67 | vertex 7.3 4.625 0 68 | vertex -9.637 0 0 69 | vertex -3.45 4.625 0 70 | endloop 71 | endfacet 72 | facet normal 0 0 -1 73 | outer loop 74 | vertex 0 55.5 0 75 | vertex 12.286 23.868 0 76 | vertex 13.964 16.177 0 77 | endloop 78 | endfacet 79 | facet normal 0 0 -1 80 | outer loop 81 | vertex 12.286 23.868 0 82 | vertex 13.964 23.323 0 83 | vertex 13.964 16.177 0 84 | endloop 85 | endfacet 86 | facet normal 0 0 -1 87 | outer loop 88 | vertex 18 9 0 89 | vertex 15 14.75 0 90 | vertex 13.964 23.323 0 91 | endloop 92 | endfacet 93 | facet normal 0 0 -1 94 | outer loop 95 | vertex 0 55.5 0 96 | vertex 13.964 26.177 0 97 | vertex 12.286 25.632 0 98 | endloop 99 | endfacet 100 | facet normal 0 0 -1 101 | outer loop 102 | vertex 0 55.5 0 103 | vertex 12.286 25.632 0 104 | vertex 12.286 23.868 0 105 | endloop 106 | endfacet 107 | facet normal 0 0 -1 108 | outer loop 109 | vertex 15 14.75 0 110 | vertex 13.964 16.177 0 111 | vertex 13.964 23.323 0 112 | endloop 113 | endfacet 114 | facet normal 0 0 -1 115 | outer loop 116 | vertex -3.45 9.375 0 117 | vertex -3.45 4.625 0 118 | vertex -9.637 0 0 119 | endloop 120 | endfacet 121 | facet normal 0 0 -1 122 | outer loop 123 | vertex 18 9 0 124 | vertex 80.5 0 0 125 | vertex 7.3 4.625 0 126 | endloop 127 | endfacet 128 | facet normal 0 0 -1 129 | outer loop 130 | vertex -3.45 9.375 0 131 | vertex 0 55.5 0 132 | vertex 12.286 13.868 0 133 | endloop 134 | endfacet 135 | facet normal 0 0 -1 136 | outer loop 137 | vertex 13.964 13.323 0 138 | vertex 7.3 4.625 0 139 | vertex 7.3 9.375 0 140 | endloop 141 | endfacet 142 | facet normal 0 0 -1 143 | outer loop 144 | vertex -3.45 9.375 0 145 | vertex 12.286 13.868 0 146 | vertex 13.964 13.323 0 147 | endloop 148 | endfacet 149 | facet normal 0 0 -1 150 | outer loop 151 | vertex 18 9 0 152 | vertex 13.964 13.323 0 153 | vertex 15 14.75 0 154 | endloop 155 | endfacet 156 | facet normal 0 0 -1 157 | outer loop 158 | vertex 0 55.5 0 159 | vertex -3.45 9.375 0 160 | vertex -9.637 0 0 161 | endloop 162 | endfacet 163 | facet normal 0 0 -1 164 | outer loop 165 | vertex 60.5 9 0 166 | vertex 65.125 4.625 0 167 | vertex 18 9 0 168 | endloop 169 | endfacet 170 | facet normal 0 0 -1 171 | outer loop 172 | vertex 13.964 13.323 0 173 | vertex 18 9 0 174 | vertex 7.3 4.625 0 175 | endloop 176 | endfacet 177 | facet normal 0 0 -1 178 | outer loop 179 | vertex 65.125 9.375 0 180 | vertex 63.786 13.868 0 181 | vertex 65.464 13.323 0 182 | endloop 183 | endfacet 184 | facet normal 0 0 -1 185 | outer loop 186 | vertex 63.927 22.603 0 187 | vertex 65.464 23.323 0 188 | vertex 65.427 21.513 0 189 | endloop 190 | endfacet 191 | facet normal 0 0 -1 192 | outer loop 193 | vertex 62.5 16.75 0 194 | vertex 60.5 9 0 195 | vertex 60.5 16.75 0 196 | endloop 197 | endfacet 198 | facet normal 0 0 -1 199 | outer loop 200 | vertex 65.464 23.323 0 201 | vertex 66.5 24.75 0 202 | vertex 65.427 21.513 0 203 | endloop 204 | endfacet 205 | facet normal 0 0 -1 206 | outer loop 207 | vertex 63.786 15.632 0 208 | vertex 63.927 16.897 0 209 | vertex 65.464 16.177 0 210 | endloop 211 | endfacet 212 | facet normal 0 0 -1 213 | outer loop 214 | vertex 65.427 21.513 0 215 | vertex 80.5 55.5 0 216 | vertex 66 19.75 0 217 | endloop 218 | endfacet 219 | facet normal 0 0 -1 220 | outer loop 221 | vertex 65.125 9.375 0 222 | vertex 65.464 13.323 0 223 | vertex 66.5 14.75 0 224 | endloop 225 | endfacet 226 | facet normal 0 0 -1 227 | outer loop 228 | vertex 80.5 55.5 0 229 | vertex 65.427 17.987 0 230 | vertex 66 19.75 0 231 | endloop 232 | endfacet 233 | facet normal 0 0 -1 234 | outer loop 235 | vertex 75.875 46.125 0 236 | vertex 63.786 25.632 0 237 | vertex 60.5 22.75 0 238 | endloop 239 | endfacet 240 | facet normal 0 0 -1 241 | outer loop 242 | vertex 63.786 25.632 0 243 | vertex 75.875 46.125 0 244 | vertex 65.464 26.177 0 245 | endloop 246 | endfacet 247 | facet normal 0 0 -1 248 | outer loop 249 | vertex 65.125 46.125 0 250 | vertex 18 30.5 0 251 | vertex 65.125 50.875 0 252 | endloop 253 | endfacet 254 | facet normal 0 0 -1 255 | outer loop 256 | vertex 75.875 46.125 0 257 | vertex 60.5 22.75 0 258 | vertex 60.5 30.5 0 259 | endloop 260 | endfacet 261 | facet normal 0 0 -1 262 | outer loop 263 | vertex 63.786 25.632 0 264 | vertex 62.5 22.75 0 265 | vertex 60.5 22.75 0 266 | endloop 267 | endfacet 268 | facet normal 0 0 -1 269 | outer loop 270 | vertex 75.875 46.125 0 271 | vertex 60.5 30.5 0 272 | vertex 65.125 46.125 0 273 | endloop 274 | endfacet 275 | facet normal 0 0 -1 276 | outer loop 277 | vertex 75.875 50.875 0 278 | vertex 80.5 55.5 0 279 | vertex 75.875 46.125 0 280 | endloop 281 | endfacet 282 | facet normal 0 0 -1 283 | outer loop 284 | vertex 4.625 46.125 0 285 | vertex 18 30.5 0 286 | vertex 13.964 26.177 0 287 | endloop 288 | endfacet 289 | facet normal 0 0 -1 290 | outer loop 291 | vertex 62.5 22.75 0 292 | vertex 63.786 23.868 0 293 | vertex 63.927 22.603 0 294 | endloop 295 | endfacet 296 | facet normal 0 0 -1 297 | outer loop 298 | vertex 65.125 50.875 0 299 | vertex 80.5 55.5 0 300 | vertex 75.875 50.875 0 301 | endloop 302 | endfacet 303 | facet normal 0 0 -1 304 | outer loop 305 | vertex 0 55.5 0 306 | vertex 80.5 55.5 0 307 | vertex 65.125 50.875 0 308 | endloop 309 | endfacet 310 | facet normal 0 0 -1 311 | outer loop 312 | vertex 15.375 46.125 0 313 | vertex 65.125 50.875 0 314 | vertex 18 30.5 0 315 | endloop 316 | endfacet 317 | facet normal 0 0 -1 318 | outer loop 319 | vertex 15.375 46.125 0 320 | vertex 18 30.5 0 321 | vertex 4.625 46.125 0 322 | endloop 323 | endfacet 324 | facet normal 0 0 -1 325 | outer loop 326 | vertex 0 55.5 0 327 | vertex 4.625 46.125 0 328 | vertex 13.964 26.177 0 329 | endloop 330 | endfacet 331 | facet normal 0 0 -1 332 | outer loop 333 | vertex 15.375 50.875 0 334 | vertex 65.125 50.875 0 335 | vertex 15.375 46.125 0 336 | endloop 337 | endfacet 338 | facet normal 0 0 -1 339 | outer loop 340 | vertex 4.625 50.875 0 341 | vertex 0 55.5 0 342 | vertex 15.375 50.875 0 343 | endloop 344 | endfacet 345 | facet normal 0 0 -1 346 | outer loop 347 | vertex 0 55.5 0 348 | vertex 65.125 50.875 0 349 | vertex 15.375 50.875 0 350 | endloop 351 | endfacet 352 | facet normal 0 0 -1 353 | outer loop 354 | vertex 65.125 9.375 0 355 | vertex 66.5 14.75 0 356 | vertex 75.875 9.375 0 357 | endloop 358 | endfacet 359 | facet normal 0 0 -1 360 | outer loop 361 | vertex 63.786 23.868 0 362 | vertex 62.5 22.75 0 363 | vertex 63.786 25.632 0 364 | endloop 365 | endfacet 366 | facet normal 0 0 -1 367 | outer loop 368 | vertex 4.625 46.125 0 369 | vertex 0 55.5 0 370 | vertex 4.625 50.875 0 371 | endloop 372 | endfacet 373 | facet normal 0 0 -1 374 | outer loop 375 | vertex 75.875 46.125 0 376 | vertex 80.5 55.5 0 377 | vertex 66.5 24.75 0 378 | endloop 379 | endfacet 380 | facet normal 0 0 -1 381 | outer loop 382 | vertex 80.5 55.5 0 383 | vertex 65.427 21.513 0 384 | vertex 66.5 24.75 0 385 | endloop 386 | endfacet 387 | facet normal 0 0 -1 388 | outer loop 389 | vertex 65.464 23.323 0 390 | vertex 63.927 22.603 0 391 | vertex 63.786 23.868 0 392 | endloop 393 | endfacet 394 | facet normal 0 0 -1 395 | outer loop 396 | vertex 63.786 15.632 0 397 | vertex 63.786 13.868 0 398 | vertex 60.5 9 0 399 | endloop 400 | endfacet 401 | facet normal 0 0 -1 402 | outer loop 403 | vertex 75.875 9.375 0 404 | vertex 80.5 0 0 405 | vertex 75.875 4.625 0 406 | endloop 407 | endfacet 408 | facet normal 0 0 -1 409 | outer loop 410 | vertex 66.5 14.75 0 411 | vertex 65.427 17.987 0 412 | vertex 75.875 9.375 0 413 | endloop 414 | endfacet 415 | facet normal 0 0 -1 416 | outer loop 417 | vertex 65.427 17.987 0 418 | vertex 66.5 14.75 0 419 | vertex 65.464 16.177 0 420 | endloop 421 | endfacet 422 | facet normal 0 0 -1 423 | outer loop 424 | vertex 65.427 17.987 0 425 | vertex 65.464 16.177 0 426 | vertex 63.927 16.897 0 427 | endloop 428 | endfacet 429 | facet normal 0 0 -1 430 | outer loop 431 | vertex 65.125 4.625 0 432 | vertex 60.5 9 0 433 | vertex 65.125 9.375 0 434 | endloop 435 | endfacet 436 | facet normal 0 0 -1 437 | outer loop 438 | vertex 63.927 16.897 0 439 | vertex 63.786 15.632 0 440 | vertex 60.5 9 0 441 | endloop 442 | endfacet 443 | facet normal 0 0 -1 444 | outer loop 445 | vertex 75.875 4.625 0 446 | vertex 80.5 0 0 447 | vertex 65.125 4.625 0 448 | endloop 449 | endfacet 450 | facet normal 0 0 -1 451 | outer loop 452 | vertex 80.5 55.5 0 453 | vertex 80.5 0 0 454 | vertex 75.875 9.375 0 455 | endloop 456 | endfacet 457 | facet normal 0 0 -1 458 | outer loop 459 | vertex 80.5 55.5 0 460 | vertex 75.875 9.375 0 461 | vertex 65.427 17.987 0 462 | endloop 463 | endfacet 464 | facet normal 0 0 -1 465 | outer loop 466 | vertex 63.786 13.868 0 467 | vertex 65.125 9.375 0 468 | vertex 60.5 9 0 469 | endloop 470 | endfacet 471 | facet normal 0 0 -1 472 | outer loop 473 | vertex -3.45 9.375 0 474 | vertex 13.964 13.323 0 475 | vertex 7.3 9.375 0 476 | endloop 477 | endfacet 478 | facet normal 0 0 -1 479 | outer loop 480 | vertex 18 9 0 481 | vertex 13.964 23.323 0 482 | vertex 15 24.75 0 483 | endloop 484 | endfacet 485 | facet normal 0 0 -1 486 | outer loop 487 | vertex 15 24.75 0 488 | vertex 13.964 26.177 0 489 | vertex 18 30.5 0 490 | endloop 491 | endfacet 492 | facet normal 0 0 -1 493 | outer loop 494 | vertex 18 9 0 495 | vertex 15 24.75 0 496 | vertex 18 30.5 0 497 | endloop 498 | endfacet 499 | facet normal 0 0 -1 500 | outer loop 501 | vertex 65.464 26.177 0 502 | vertex 75.875 46.125 0 503 | vertex 66.5 24.75 0 504 | endloop 505 | endfacet 506 | facet normal 0 0 -1 507 | outer loop 508 | vertex 18 30.5 0 509 | vertex 65.125 46.125 0 510 | vertex 60.5 30.5 0 511 | endloop 512 | endfacet 513 | facet normal 0 0 -1 514 | outer loop 515 | vertex 63.927 16.897 0 516 | vertex 60.5 9 0 517 | vertex 62.5 16.75 0 518 | endloop 519 | endfacet 520 | facet normal 0 0 -1 521 | outer loop 522 | vertex 65.125 4.625 0 523 | vertex 80.5 0 0 524 | vertex 18 9 0 525 | endloop 526 | endfacet 527 | facet normal -0.985257 0.171081 0 528 | outer loop 529 | vertex -3.963 32.677 4 530 | vertex 0 55.5 4 531 | vertex -3.963 32.677 0 532 | endloop 533 | endfacet 534 | facet normal -0.985257 0.171081 0 535 | outer loop 536 | vertex -3.963 32.677 0 537 | vertex 0 55.5 4 538 | vertex 0 55.5 0 539 | endloop 540 | endfacet 541 | facet normal -0.984816 0.173603 0 542 | outer loop 543 | vertex -9.528 23.503 4 544 | vertex -7.792 33.351 4 545 | vertex -9.528 23.503 0 546 | endloop 547 | endfacet 548 | facet normal -0.984816 0.173603 0 549 | outer loop 550 | vertex -9.528 23.503 0 551 | vertex -7.792 33.351 4 552 | vertex -7.792 33.351 0 553 | endloop 554 | endfacet 555 | facet normal 0 0 1 556 | outer loop 557 | vertex 75.875 46.125 4 558 | vertex 80.5 0 4 559 | vertex 80.5 55.5 4 560 | endloop 561 | endfacet 562 | facet normal 0 0 1 563 | outer loop 564 | vertex -3.963 32.677 4 565 | vertex -9.637 0 4 566 | vertex 0 55.5 4 567 | endloop 568 | endfacet 569 | facet normal 0 0 1 570 | outer loop 571 | vertex -5.674 22.824 4 572 | vertex -9.637 0 4 573 | vertex -3.963 32.677 4 574 | endloop 575 | endfacet 576 | facet normal 0 0 1 577 | outer loop 578 | vertex -3.45 9.375 4 579 | vertex 12.286 15.632 4 580 | vertex 13.964 23.323 4 581 | endloop 582 | endfacet 583 | facet normal 0 0 1 584 | outer loop 585 | vertex -7.792 33.351 4 586 | vertex -5.674 22.824 4 587 | vertex -3.963 32.677 4 588 | endloop 589 | endfacet 590 | facet normal 0 0 1 591 | outer loop 592 | vertex 0 55.5 4 593 | vertex 12.286 23.868 4 594 | vertex 12.286 25.632 4 595 | endloop 596 | endfacet 597 | facet normal 0 0 1 598 | outer loop 599 | vertex 65.125 4.625 4 600 | vertex 18 9 4 601 | vertex 80.5 0 4 602 | endloop 603 | endfacet 604 | facet normal 0 0 1 605 | outer loop 606 | vertex 65.464 23.323 4 607 | vertex 63.786 23.868 4 608 | vertex 65.427 21.513 4 609 | endloop 610 | endfacet 611 | facet normal 0 0 1 612 | outer loop 613 | vertex 65.427 17.987 4 614 | vertex 63.927 16.897 4 615 | vertex 65.464 16.177 4 616 | endloop 617 | endfacet 618 | facet normal 0 0 1 619 | outer loop 620 | vertex 66.5 14.75 4 621 | vertex 65.427 17.987 4 622 | vertex 65.464 16.177 4 623 | endloop 624 | endfacet 625 | facet normal 0 0 1 626 | outer loop 627 | vertex -3.45 9.375 4 628 | vertex 13.964 23.323 4 629 | vertex 12.286 23.868 4 630 | endloop 631 | endfacet 632 | facet normal 0 0 1 633 | outer loop 634 | vertex 12.286 15.632 4 635 | vertex 13.964 16.177 4 636 | vertex 13.964 23.323 4 637 | endloop 638 | endfacet 639 | facet normal 0 0 1 640 | outer loop 641 | vertex 63.786 23.868 4 642 | vertex 63.786 25.632 4 643 | vertex 60.5 30.5 4 644 | endloop 645 | endfacet 646 | facet normal 0 0 1 647 | outer loop 648 | vertex 65.125 9.375 4 649 | vertex 66.5 14.75 4 650 | vertex 65.464 13.323 4 651 | endloop 652 | endfacet 653 | facet normal 0 0 1 654 | outer loop 655 | vertex 65.125 50.875 4 656 | vertex 75.875 50.875 4 657 | vertex 80.5 55.5 4 658 | endloop 659 | endfacet 660 | facet normal 0 0 1 661 | outer loop 662 | vertex 60.5 9 4 663 | vertex 18 9 4 664 | vertex 65.125 4.625 4 665 | endloop 666 | endfacet 667 | facet normal 0 0 1 668 | outer loop 669 | vertex -3.45 9.375 4 670 | vertex 12.286 13.868 4 671 | vertex 12.286 15.632 4 672 | endloop 673 | endfacet 674 | facet normal 0 0 1 675 | outer loop 676 | vertex 0 55.5 4 677 | vertex -3.45 9.375 4 678 | vertex 12.286 23.868 4 679 | endloop 680 | endfacet 681 | facet normal 0 0 1 682 | outer loop 683 | vertex 0 55.5 4 684 | vertex -9.637 0 4 685 | vertex -3.45 9.375 4 686 | endloop 687 | endfacet 688 | facet normal 0 0 1 689 | outer loop 690 | vertex -3.45 9.375 4 691 | vertex 13.964 13.323 4 692 | vertex 12.286 13.868 4 693 | endloop 694 | endfacet 695 | facet normal 0 0 1 696 | outer loop 697 | vertex 7.3 4.625 4 698 | vertex 80.5 0 4 699 | vertex 7.3 9.375 4 700 | endloop 701 | endfacet 702 | facet normal 0 0 1 703 | outer loop 704 | vertex -3.45 9.375 4 705 | vertex 7.3 9.375 4 706 | vertex 13.964 13.323 4 707 | endloop 708 | endfacet 709 | facet normal 0 0 1 710 | outer loop 711 | vertex -9.637 0 4 712 | vertex 80.5 0 4 713 | vertex 7.3 4.625 4 714 | endloop 715 | endfacet 716 | facet normal 0 0 1 717 | outer loop 718 | vertex 7.3 9.375 4 719 | vertex 18 9 4 720 | vertex 13.964 13.323 4 721 | endloop 722 | endfacet 723 | facet normal 0 0 1 724 | outer loop 725 | vertex 7.3 9.375 4 726 | vertex 80.5 0 4 727 | vertex 18 9 4 728 | endloop 729 | endfacet 730 | facet normal 0 0 1 731 | outer loop 732 | vertex 4.625 46.125 4 733 | vertex 12.286 25.632 4 734 | vertex 18 30.5 4 735 | endloop 736 | endfacet 737 | facet normal 0 0 1 738 | outer loop 739 | vertex 65.125 46.125 4 740 | vertex 65.125 50.875 4 741 | vertex 18 30.5 4 742 | endloop 743 | endfacet 744 | facet normal 0 0 1 745 | outer loop 746 | vertex 63.786 13.868 4 747 | vertex 63.786 15.632 4 748 | vertex 62.5 16.75 4 749 | endloop 750 | endfacet 751 | facet normal 0 0 1 752 | outer loop 753 | vertex 66 19.75 4 754 | vertex 66.5 24.75 4 755 | vertex 65.464 23.323 4 756 | endloop 757 | endfacet 758 | facet normal 0 0 1 759 | outer loop 760 | vertex 60.5 22.75 4 761 | vertex 62.5 22.75 4 762 | vertex 60.5 30.5 4 763 | endloop 764 | endfacet 765 | facet normal 0 0 1 766 | outer loop 767 | vertex 62.5 22.75 4 768 | vertex 63.927 22.603 4 769 | vertex 60.5 30.5 4 770 | endloop 771 | endfacet 772 | facet normal 0 0 1 773 | outer loop 774 | vertex 15.375 46.125 4 775 | vertex 4.625 46.125 4 776 | vertex 18 30.5 4 777 | endloop 778 | endfacet 779 | facet normal 0 0 1 780 | outer loop 781 | vertex 65.125 9.375 4 782 | vertex 75.875 9.375 4 783 | vertex 66.5 14.75 4 784 | endloop 785 | endfacet 786 | facet normal 0 0 1 787 | outer loop 788 | vertex 66.5 14.75 4 789 | vertex 66.5 24.75 4 790 | vertex 66 19.75 4 791 | endloop 792 | endfacet 793 | facet normal 0 0 1 794 | outer loop 795 | vertex 66.5 14.75 4 796 | vertex 75.875 9.375 4 797 | vertex 66.5 24.75 4 798 | endloop 799 | endfacet 800 | facet normal 0 0 1 801 | outer loop 802 | vertex 75.875 9.375 4 803 | vertex 75.875 4.625 4 804 | vertex 80.5 0 4 805 | endloop 806 | endfacet 807 | facet normal 0 0 1 808 | outer loop 809 | vertex 75.875 50.875 4 810 | vertex 75.875 46.125 4 811 | vertex 80.5 55.5 4 812 | endloop 813 | endfacet 814 | facet normal 0 0 1 815 | outer loop 816 | vertex 0 55.5 4 817 | vertex 12.286 25.632 4 818 | vertex 4.625 46.125 4 819 | endloop 820 | endfacet 821 | facet normal 0 0 1 822 | outer loop 823 | vertex 0 55.5 4 824 | vertex 4.625 50.875 4 825 | vertex 80.5 55.5 4 826 | endloop 827 | endfacet 828 | facet normal 0 0 1 829 | outer loop 830 | vertex 4.625 50.875 4 831 | vertex 15.375 50.875 4 832 | vertex 80.5 55.5 4 833 | endloop 834 | endfacet 835 | facet normal 0 0 1 836 | outer loop 837 | vertex 15.375 46.125 4 838 | vertex 18 30.5 4 839 | vertex 15.375 50.875 4 840 | endloop 841 | endfacet 842 | facet normal 0 0 1 843 | outer loop 844 | vertex 75.875 46.125 4 845 | vertex 65.125 46.125 4 846 | vertex 60.5 30.5 4 847 | endloop 848 | endfacet 849 | facet normal 0 0 1 850 | outer loop 851 | vertex 75.875 4.625 4 852 | vertex 65.125 4.625 4 853 | vertex 80.5 0 4 854 | endloop 855 | endfacet 856 | facet normal 0 0 1 857 | outer loop 858 | vertex 18 9 4 859 | vertex 15 14.75 4 860 | vertex 13.964 13.323 4 861 | endloop 862 | endfacet 863 | facet normal 0 0 1 864 | outer loop 865 | vertex 15.375 50.875 4 866 | vertex 65.125 50.875 4 867 | vertex 80.5 55.5 4 868 | endloop 869 | endfacet 870 | facet normal 0 0 1 871 | outer loop 872 | vertex 15.375 50.875 4 873 | vertex 18 30.5 4 874 | vertex 65.125 50.875 4 875 | endloop 876 | endfacet 877 | facet normal 0 0 1 878 | outer loop 879 | vertex 66.5 14.75 4 880 | vertex 66 19.75 4 881 | vertex 65.427 17.987 4 882 | endloop 883 | endfacet 884 | facet normal 0 0 1 885 | outer loop 886 | vertex 66 19.75 4 887 | vertex 65.464 23.323 4 888 | vertex 65.427 21.513 4 889 | endloop 890 | endfacet 891 | facet normal 0 0 1 892 | outer loop 893 | vertex 63.786 15.632 4 894 | vertex 65.464 16.177 4 895 | vertex 63.927 16.897 4 896 | endloop 897 | endfacet 898 | facet normal 0 0 1 899 | outer loop 900 | vertex 75.875 9.375 4 901 | vertex 80.5 0 4 902 | vertex 75.875 46.125 4 903 | endloop 904 | endfacet 905 | facet normal 0 0 1 906 | outer loop 907 | vertex 63.927 22.603 4 908 | vertex 63.786 23.868 4 909 | vertex 60.5 30.5 4 910 | endloop 911 | endfacet 912 | facet normal 0 0 1 913 | outer loop 914 | vertex 63.927 22.603 4 915 | vertex 65.427 21.513 4 916 | vertex 63.786 23.868 4 917 | endloop 918 | endfacet 919 | facet normal 0 0 1 920 | outer loop 921 | vertex 60.5 30.5 4 922 | vertex 63.786 25.632 4 923 | vertex 75.875 46.125 4 924 | endloop 925 | endfacet 926 | facet normal 0 0 1 927 | outer loop 928 | vertex 63.786 25.632 4 929 | vertex 65.464 26.177 4 930 | vertex 75.875 46.125 4 931 | endloop 932 | endfacet 933 | facet normal 0 0 1 934 | outer loop 935 | vertex 65.125 4.625 4 936 | vertex 65.125 9.375 4 937 | vertex 60.5 9 4 938 | endloop 939 | endfacet 940 | facet normal 0 0 1 941 | outer loop 942 | vertex 65.464 26.177 4 943 | vertex 66.5 24.75 4 944 | vertex 75.875 46.125 4 945 | endloop 946 | endfacet 947 | facet normal 0 0 1 948 | outer loop 949 | vertex 65.125 9.375 4 950 | vertex 65.464 13.323 4 951 | vertex 63.786 13.868 4 952 | endloop 953 | endfacet 954 | facet normal 0 0 1 955 | outer loop 956 | vertex 18 30.5 4 957 | vertex 60.5 30.5 4 958 | vertex 65.125 46.125 4 959 | endloop 960 | endfacet 961 | facet normal 0 0 1 962 | outer loop 963 | vertex 60.5 9 4 964 | vertex 65.125 9.375 4 965 | vertex 62.5 16.75 4 966 | endloop 967 | endfacet 968 | facet normal 0 0 1 969 | outer loop 970 | vertex 66.5 24.75 4 971 | vertex 75.875 9.375 4 972 | vertex 75.875 46.125 4 973 | endloop 974 | endfacet 975 | facet normal 0 0 1 976 | outer loop 977 | vertex 65.125 9.375 4 978 | vertex 63.786 13.868 4 979 | vertex 62.5 16.75 4 980 | endloop 981 | endfacet 982 | facet normal 0 0 1 983 | outer loop 984 | vertex 62.5 16.75 4 985 | vertex 63.786 15.632 4 986 | vertex 63.927 16.897 4 987 | endloop 988 | endfacet 989 | facet normal 0 0 1 990 | outer loop 991 | vertex 4.625 46.125 4 992 | vertex 4.625 50.875 4 993 | vertex 0 55.5 4 994 | endloop 995 | endfacet 996 | facet normal 0 0 1 997 | outer loop 998 | vertex -9.528 23.503 4 999 | vertex -5.674 22.824 4 1000 | vertex -7.792 33.351 4 1001 | endloop 1002 | endfacet 1003 | facet normal 0 0 1 1004 | outer loop 1005 | vertex -3.45 4.625 4 1006 | vertex -3.45 9.375 4 1007 | vertex -9.637 0 4 1008 | endloop 1009 | endfacet 1010 | facet normal 0 0 1 1011 | outer loop 1012 | vertex 7.3 4.625 4 1013 | vertex -3.45 4.625 4 1014 | vertex -9.637 0 4 1015 | endloop 1016 | endfacet 1017 | facet normal 0 0 1 1018 | outer loop 1019 | vertex 60.5 16.75 4 1020 | vertex 60.5 9 4 1021 | vertex 62.5 16.75 4 1022 | endloop 1023 | endfacet 1024 | facet normal 0 0 1 1025 | outer loop 1026 | vertex 15 14.75 4 1027 | vertex 13.964 23.323 4 1028 | vertex 13.964 16.177 4 1029 | endloop 1030 | endfacet 1031 | facet normal 0 0 1 1032 | outer loop 1033 | vertex 18 9 4 1034 | vertex 13.964 23.323 4 1035 | vertex 15 14.75 4 1036 | endloop 1037 | endfacet 1038 | facet normal 0 0 1 1039 | outer loop 1040 | vertex 18 9 4 1041 | vertex 15 24.75 4 1042 | vertex 13.964 23.323 4 1043 | endloop 1044 | endfacet 1045 | facet normal 0 0 1 1046 | outer loop 1047 | vertex 13.964 26.177 4 1048 | vertex 18 30.5 4 1049 | vertex 12.286 25.632 4 1050 | endloop 1051 | endfacet 1052 | facet normal 0 0 1 1053 | outer loop 1054 | vertex 15 24.75 4 1055 | vertex 18 30.5 4 1056 | vertex 13.964 26.177 4 1057 | endloop 1058 | endfacet 1059 | facet normal 0 0 1 1060 | outer loop 1061 | vertex 18 9 4 1062 | vertex 18 30.5 4 1063 | vertex 15 24.75 4 1064 | endloop 1065 | endfacet 1066 | facet normal 0 -1 0 1067 | outer loop 1068 | vertex -9.637 0 0 1069 | vertex 80.5 0 0 1070 | vertex 80.5 0 4 1071 | endloop 1072 | endfacet 1073 | facet normal 0 -1 0 1074 | outer loop 1075 | vertex -9.637 0 4 1076 | vertex -9.637 0 0 1077 | vertex 80.5 0 4 1078 | endloop 1079 | endfacet 1080 | facet normal -0.985258 0.171073 0 1081 | outer loop 1082 | vertex -9.637 0 4 1083 | vertex -5.674 22.824 4 1084 | vertex -9.637 0 0 1085 | endloop 1086 | endfacet 1087 | facet normal -0.985258 0.171073 0 1088 | outer loop 1089 | vertex -9.637 0 0 1090 | vertex -5.674 22.824 4 1091 | vertex -5.674 22.824 0 1092 | endloop 1093 | endfacet 1094 | facet normal 1 0 0 1095 | outer loop 1096 | vertex 80.5 0 0 1097 | vertex 80.5 55.5 0 1098 | vertex 80.5 55.5 4 1099 | endloop 1100 | endfacet 1101 | facet normal 1 0 0 1102 | outer loop 1103 | vertex 80.5 0 4 1104 | vertex 80.5 0 0 1105 | vertex 80.5 55.5 4 1106 | endloop 1107 | endfacet 1108 | facet normal 0 1 0 1109 | outer loop 1110 | vertex 0 55.5 4 1111 | vertex 80.5 55.5 4 1112 | vertex 0 55.5 0 1113 | endloop 1114 | endfacet 1115 | facet normal 0 1 0 1116 | outer loop 1117 | vertex 0 55.5 0 1118 | vertex 80.5 55.5 4 1119 | vertex 80.5 55.5 0 1120 | endloop 1121 | endfacet 1122 | facet normal -0.173508 -0.984832 0 1123 | outer loop 1124 | vertex -9.528 23.503 0 1125 | vertex -5.674 22.824 0 1126 | vertex -5.674 22.824 4 1127 | endloop 1128 | endfacet 1129 | facet normal -0.173508 -0.984832 0 1130 | outer loop 1131 | vertex -9.528 23.503 4 1132 | vertex -9.528 23.503 0 1133 | vertex -5.674 22.824 4 1134 | endloop 1135 | endfacet 1136 | facet normal 0.308907 0.951092 0 1137 | outer loop 1138 | vertex 12.286 13.868 4 1139 | vertex 13.964 13.323 4 1140 | vertex 12.286 13.868 0 1141 | endloop 1142 | endfacet 1143 | facet normal 0.308907 0.951092 0 1144 | outer loop 1145 | vertex 12.286 13.868 0 1146 | vertex 13.964 13.323 4 1147 | vertex 13.964 13.323 0 1148 | endloop 1149 | endfacet 1150 | facet normal 1 0 0 1151 | outer loop 1152 | vertex 12.286 13.868 0 1153 | vertex 12.286 15.632 0 1154 | vertex 12.286 15.632 4 1155 | endloop 1156 | endfacet 1157 | facet normal 1 0 0 1158 | outer loop 1159 | vertex 12.286 13.868 4 1160 | vertex 12.286 13.868 0 1161 | vertex 12.286 15.632 4 1162 | endloop 1163 | endfacet 1164 | facet normal 0.308907 -0.951092 0 1165 | outer loop 1166 | vertex 12.286 15.632 0 1167 | vertex 13.964 16.177 0 1168 | vertex 13.964 16.177 4 1169 | endloop 1170 | endfacet 1171 | facet normal 0.308907 -0.951092 0 1172 | outer loop 1173 | vertex 12.286 15.632 4 1174 | vertex 12.286 15.632 0 1175 | vertex 13.964 16.177 4 1176 | endloop 1177 | endfacet 1178 | facet normal -0.809226 -0.587497 0 1179 | outer loop 1180 | vertex 15 14.75 0 1181 | vertex 15 14.75 4 1182 | vertex 13.964 16.177 0 1183 | endloop 1184 | endfacet 1185 | facet normal -0.809226 -0.587497 0 1186 | outer loop 1187 | vertex 13.964 16.177 0 1188 | vertex 15 14.75 4 1189 | vertex 13.964 16.177 4 1190 | endloop 1191 | endfacet 1192 | facet normal -0.809226 0.587497 0 1193 | outer loop 1194 | vertex 13.964 13.323 4 1195 | vertex 15 14.75 4 1196 | vertex 13.964 13.323 0 1197 | endloop 1198 | endfacet 1199 | facet normal -0.809226 0.587497 0 1200 | outer loop 1201 | vertex 13.964 13.323 0 1202 | vertex 15 14.75 4 1203 | vertex 15 14.75 0 1204 | endloop 1205 | endfacet 1206 | facet normal 0.308907 0.951092 0 1207 | outer loop 1208 | vertex 12.286 23.868 4 1209 | vertex 13.964 23.323 4 1210 | vertex 12.286 23.868 0 1211 | endloop 1212 | endfacet 1213 | facet normal 0.308907 0.951092 0 1214 | outer loop 1215 | vertex 12.286 23.868 0 1216 | vertex 13.964 23.323 4 1217 | vertex 13.964 23.323 0 1218 | endloop 1219 | endfacet 1220 | facet normal 1 0 0 1221 | outer loop 1222 | vertex 12.286 23.868 0 1223 | vertex 12.286 25.632 0 1224 | vertex 12.286 25.632 4 1225 | endloop 1226 | endfacet 1227 | facet normal 1 0 0 1228 | outer loop 1229 | vertex 12.286 23.868 4 1230 | vertex 12.286 23.868 0 1231 | vertex 12.286 25.632 4 1232 | endloop 1233 | endfacet 1234 | facet normal 0.308907 -0.951092 0 1235 | outer loop 1236 | vertex 12.286 25.632 0 1237 | vertex 13.964 26.177 0 1238 | vertex 13.964 26.177 4 1239 | endloop 1240 | endfacet 1241 | facet normal 0.308907 -0.951092 0 1242 | outer loop 1243 | vertex 12.286 25.632 4 1244 | vertex 12.286 25.632 0 1245 | vertex 13.964 26.177 4 1246 | endloop 1247 | endfacet 1248 | facet normal -0.809226 -0.587497 0 1249 | outer loop 1250 | vertex 15 24.75 0 1251 | vertex 15 24.75 4 1252 | vertex 13.964 26.177 0 1253 | endloop 1254 | endfacet 1255 | facet normal -0.809226 -0.587497 0 1256 | outer loop 1257 | vertex 13.964 26.177 0 1258 | vertex 15 24.75 4 1259 | vertex 13.964 26.177 4 1260 | endloop 1261 | endfacet 1262 | facet normal -0.809226 0.587497 0 1263 | outer loop 1264 | vertex 13.964 23.323 4 1265 | vertex 15 24.75 4 1266 | vertex 13.964 23.323 0 1267 | endloop 1268 | endfacet 1269 | facet normal -0.809226 0.587497 0 1270 | outer loop 1271 | vertex 13.964 23.323 0 1272 | vertex 15 24.75 4 1273 | vertex 15 24.75 0 1274 | endloop 1275 | endfacet 1276 | facet normal 0 1 0 1277 | outer loop 1278 | vertex -3.45 4.625 4 1279 | vertex 7.3 4.625 4 1280 | vertex -3.45 4.625 0 1281 | endloop 1282 | endfacet 1283 | facet normal 0 1 0 1284 | outer loop 1285 | vertex -3.45 4.625 0 1286 | vertex 7.3 4.625 4 1287 | vertex 7.3 4.625 0 1288 | endloop 1289 | endfacet 1290 | facet normal 1 0 0 1291 | outer loop 1292 | vertex -3.45 4.625 0 1293 | vertex -3.45 9.375 0 1294 | vertex -3.45 9.375 4 1295 | endloop 1296 | endfacet 1297 | facet normal 1 0 0 1298 | outer loop 1299 | vertex -3.45 4.625 4 1300 | vertex -3.45 4.625 0 1301 | vertex -3.45 9.375 4 1302 | endloop 1303 | endfacet 1304 | facet normal 0 -1 0 1305 | outer loop 1306 | vertex -3.45 9.375 0 1307 | vertex 7.3 9.375 0 1308 | vertex 7.3 9.375 4 1309 | endloop 1310 | endfacet 1311 | facet normal 0 -1 0 1312 | outer loop 1313 | vertex -3.45 9.375 4 1314 | vertex -3.45 9.375 0 1315 | vertex 7.3 9.375 4 1316 | endloop 1317 | endfacet 1318 | facet normal -1 0 0 1319 | outer loop 1320 | vertex 7.3 4.625 4 1321 | vertex 7.3 9.375 4 1322 | vertex 7.3 4.625 0 1323 | endloop 1324 | endfacet 1325 | facet normal -1 0 0 1326 | outer loop 1327 | vertex 7.3 4.625 0 1328 | vertex 7.3 9.375 4 1329 | vertex 7.3 9.375 0 1330 | endloop 1331 | endfacet 1332 | facet normal 0 1 0 1333 | outer loop 1334 | vertex 18 9 4 1335 | vertex 60.5 9 4 1336 | vertex 18 9 0 1337 | endloop 1338 | endfacet 1339 | facet normal 0 1 0 1340 | outer loop 1341 | vertex 18 9 0 1342 | vertex 60.5 9 4 1343 | vertex 60.5 9 0 1344 | endloop 1345 | endfacet 1346 | facet normal 1 0 0 1347 | outer loop 1348 | vertex 18 9 0 1349 | vertex 18 30.5 0 1350 | vertex 18 30.5 4 1351 | endloop 1352 | endfacet 1353 | facet normal 1 0 0 1354 | outer loop 1355 | vertex 18 9 4 1356 | vertex 18 9 0 1357 | vertex 18 30.5 4 1358 | endloop 1359 | endfacet 1360 | facet normal 0 -1 0 1361 | outer loop 1362 | vertex 18 30.5 0 1363 | vertex 60.5 30.5 0 1364 | vertex 60.5 30.5 4 1365 | endloop 1366 | endfacet 1367 | facet normal 0 -1 0 1368 | outer loop 1369 | vertex 18 30.5 4 1370 | vertex 18 30.5 0 1371 | vertex 60.5 30.5 4 1372 | endloop 1373 | endfacet 1374 | facet normal -1 0 0 1375 | outer loop 1376 | vertex 60.5 22.75 4 1377 | vertex 60.5 30.5 4 1378 | vertex 60.5 22.75 0 1379 | endloop 1380 | endfacet 1381 | facet normal -1 0 0 1382 | outer loop 1383 | vertex 60.5 22.75 0 1384 | vertex 60.5 30.5 4 1385 | vertex 60.5 30.5 0 1386 | endloop 1387 | endfacet 1388 | facet normal 0 -1 0 1389 | outer loop 1390 | vertex 60.5 22.75 0 1391 | vertex 62.5 22.75 0 1392 | vertex 62.5 22.75 4 1393 | endloop 1394 | endfacet 1395 | facet normal 0 -1 0 1396 | outer loop 1397 | vertex 60.5 22.75 4 1398 | vertex 60.5 22.75 0 1399 | vertex 62.5 22.75 4 1400 | endloop 1401 | endfacet 1402 | facet normal -0.102471 -0.994736 0 1403 | outer loop 1404 | vertex 62.5 22.75 0 1405 | vertex 63.927 22.603 0 1406 | vertex 63.927 22.603 4 1407 | endloop 1408 | endfacet 1409 | facet normal -0.102471 -0.994736 0 1410 | outer loop 1411 | vertex 62.5 22.75 4 1412 | vertex 62.5 22.75 0 1413 | vertex 63.927 22.603 4 1414 | endloop 1415 | endfacet 1416 | facet normal -0.587851 -0.808969 0 1417 | outer loop 1418 | vertex 63.927 22.603 0 1419 | vertex 65.427 21.513 0 1420 | vertex 65.427 21.513 4 1421 | endloop 1422 | endfacet 1423 | facet normal -0.587851 -0.808969 0 1424 | outer loop 1425 | vertex 63.927 22.603 4 1426 | vertex 63.927 22.603 0 1427 | vertex 65.427 21.513 4 1428 | endloop 1429 | endfacet 1430 | facet normal -0.95103 -0.309098 0 1431 | outer loop 1432 | vertex 66 19.75 0 1433 | vertex 66 19.75 4 1434 | vertex 65.427 21.513 0 1435 | endloop 1436 | endfacet 1437 | facet normal -0.95103 -0.309098 0 1438 | outer loop 1439 | vertex 65.427 21.513 0 1440 | vertex 66 19.75 4 1441 | vertex 65.427 21.513 4 1442 | endloop 1443 | endfacet 1444 | facet normal -0.95103 0.309098 0 1445 | outer loop 1446 | vertex 65.427 17.987 4 1447 | vertex 66 19.75 4 1448 | vertex 65.427 17.987 0 1449 | endloop 1450 | endfacet 1451 | facet normal -0.95103 0.309098 0 1452 | outer loop 1453 | vertex 65.427 17.987 0 1454 | vertex 66 19.75 4 1455 | vertex 66 19.75 0 1456 | endloop 1457 | endfacet 1458 | facet normal -0.587851 0.808969 0 1459 | outer loop 1460 | vertex 63.927 16.897 4 1461 | vertex 65.427 17.987 4 1462 | vertex 63.927 16.897 0 1463 | endloop 1464 | endfacet 1465 | facet normal -0.587851 0.808969 0 1466 | outer loop 1467 | vertex 63.927 16.897 0 1468 | vertex 65.427 17.987 4 1469 | vertex 65.427 17.987 0 1470 | endloop 1471 | endfacet 1472 | facet normal -0.102471 0.994736 0 1473 | outer loop 1474 | vertex 62.5 16.75 4 1475 | vertex 63.927 16.897 4 1476 | vertex 62.5 16.75 0 1477 | endloop 1478 | endfacet 1479 | facet normal -0.102471 0.994736 0 1480 | outer loop 1481 | vertex 62.5 16.75 0 1482 | vertex 63.927 16.897 4 1483 | vertex 63.927 16.897 0 1484 | endloop 1485 | endfacet 1486 | facet normal 0 1 0 1487 | outer loop 1488 | vertex 60.5 16.75 4 1489 | vertex 62.5 16.75 4 1490 | vertex 60.5 16.75 0 1491 | endloop 1492 | endfacet 1493 | facet normal 0 1 0 1494 | outer loop 1495 | vertex 60.5 16.75 0 1496 | vertex 62.5 16.75 4 1497 | vertex 62.5 16.75 0 1498 | endloop 1499 | endfacet 1500 | facet normal -1 0 0 1501 | outer loop 1502 | vertex 60.5 9 4 1503 | vertex 60.5 16.75 4 1504 | vertex 60.5 9 0 1505 | endloop 1506 | endfacet 1507 | facet normal -1 0 0 1508 | outer loop 1509 | vertex 60.5 9 0 1510 | vertex 60.5 16.75 4 1511 | vertex 60.5 16.75 0 1512 | endloop 1513 | endfacet 1514 | facet normal 0 1 0 1515 | outer loop 1516 | vertex 65.125 46.125 4 1517 | vertex 75.875 46.125 4 1518 | vertex 65.125 46.125 0 1519 | endloop 1520 | endfacet 1521 | facet normal 0 1 0 1522 | outer loop 1523 | vertex 65.125 46.125 0 1524 | vertex 75.875 46.125 4 1525 | vertex 75.875 46.125 0 1526 | endloop 1527 | endfacet 1528 | facet normal 1 0 0 1529 | outer loop 1530 | vertex 65.125 46.125 0 1531 | vertex 65.125 50.875 0 1532 | vertex 65.125 50.875 4 1533 | endloop 1534 | endfacet 1535 | facet normal 1 0 0 1536 | outer loop 1537 | vertex 65.125 46.125 4 1538 | vertex 65.125 46.125 0 1539 | vertex 65.125 50.875 4 1540 | endloop 1541 | endfacet 1542 | facet normal 0 -1 0 1543 | outer loop 1544 | vertex 65.125 50.875 0 1545 | vertex 75.875 50.875 0 1546 | vertex 75.875 50.875 4 1547 | endloop 1548 | endfacet 1549 | facet normal 0 -1 0 1550 | outer loop 1551 | vertex 65.125 50.875 4 1552 | vertex 65.125 50.875 0 1553 | vertex 75.875 50.875 4 1554 | endloop 1555 | endfacet 1556 | facet normal -1 0 0 1557 | outer loop 1558 | vertex 75.875 46.125 4 1559 | vertex 75.875 50.875 4 1560 | vertex 75.875 46.125 0 1561 | endloop 1562 | endfacet 1563 | facet normal -1 0 0 1564 | outer loop 1565 | vertex 75.875 46.125 0 1566 | vertex 75.875 50.875 4 1567 | vertex 75.875 50.875 0 1568 | endloop 1569 | endfacet 1570 | facet normal 0 1 0 1571 | outer loop 1572 | vertex 4.625 46.125 4 1573 | vertex 15.375 46.125 4 1574 | vertex 4.625 46.125 0 1575 | endloop 1576 | endfacet 1577 | facet normal 0 1 0 1578 | outer loop 1579 | vertex 4.625 46.125 0 1580 | vertex 15.375 46.125 4 1581 | vertex 15.375 46.125 0 1582 | endloop 1583 | endfacet 1584 | facet normal 1 0 0 1585 | outer loop 1586 | vertex 4.625 46.125 0 1587 | vertex 4.625 50.875 0 1588 | vertex 4.625 50.875 4 1589 | endloop 1590 | endfacet 1591 | facet normal 1 0 0 1592 | outer loop 1593 | vertex 4.625 46.125 4 1594 | vertex 4.625 46.125 0 1595 | vertex 4.625 50.875 4 1596 | endloop 1597 | endfacet 1598 | facet normal 0 -1 0 1599 | outer loop 1600 | vertex 4.625 50.875 0 1601 | vertex 15.375 50.875 0 1602 | vertex 15.375 50.875 4 1603 | endloop 1604 | endfacet 1605 | facet normal 0 -1 0 1606 | outer loop 1607 | vertex 4.625 50.875 4 1608 | vertex 4.625 50.875 0 1609 | vertex 15.375 50.875 4 1610 | endloop 1611 | endfacet 1612 | facet normal -1 0 0 1613 | outer loop 1614 | vertex 15.375 46.125 4 1615 | vertex 15.375 50.875 4 1616 | vertex 15.375 46.125 0 1617 | endloop 1618 | endfacet 1619 | facet normal -1 0 0 1620 | outer loop 1621 | vertex 15.375 46.125 0 1622 | vertex 15.375 50.875 4 1623 | vertex 15.375 50.875 0 1624 | endloop 1625 | endfacet 1626 | facet normal 0.308907 0.951092 0 1627 | outer loop 1628 | vertex 63.786 23.868 4 1629 | vertex 65.464 23.323 4 1630 | vertex 63.786 23.868 0 1631 | endloop 1632 | endfacet 1633 | facet normal 0.308907 0.951092 0 1634 | outer loop 1635 | vertex 63.786 23.868 0 1636 | vertex 65.464 23.323 4 1637 | vertex 65.464 23.323 0 1638 | endloop 1639 | endfacet 1640 | facet normal 1 0 0 1641 | outer loop 1642 | vertex 63.786 23.868 0 1643 | vertex 63.786 25.632 0 1644 | vertex 63.786 25.632 4 1645 | endloop 1646 | endfacet 1647 | facet normal 1 0 0 1648 | outer loop 1649 | vertex 63.786 23.868 4 1650 | vertex 63.786 23.868 0 1651 | vertex 63.786 25.632 4 1652 | endloop 1653 | endfacet 1654 | facet normal 0.308907 -0.951092 0 1655 | outer loop 1656 | vertex 63.786 25.632 0 1657 | vertex 65.464 26.177 0 1658 | vertex 65.464 26.177 4 1659 | endloop 1660 | endfacet 1661 | facet normal 0.308907 -0.951092 0 1662 | outer loop 1663 | vertex 63.786 25.632 4 1664 | vertex 63.786 25.632 0 1665 | vertex 65.464 26.177 4 1666 | endloop 1667 | endfacet 1668 | facet normal -0.809226 -0.587497 0 1669 | outer loop 1670 | vertex 66.5 24.75 0 1671 | vertex 66.5 24.75 4 1672 | vertex 65.464 26.177 0 1673 | endloop 1674 | endfacet 1675 | facet normal -0.809226 -0.587497 0 1676 | outer loop 1677 | vertex 65.464 26.177 0 1678 | vertex 66.5 24.75 4 1679 | vertex 65.464 26.177 4 1680 | endloop 1681 | endfacet 1682 | facet normal -0.809226 0.587497 0 1683 | outer loop 1684 | vertex 65.464 23.323 4 1685 | vertex 66.5 24.75 4 1686 | vertex 65.464 23.323 0 1687 | endloop 1688 | endfacet 1689 | facet normal -0.809226 0.587497 0 1690 | outer loop 1691 | vertex 65.464 23.323 0 1692 | vertex 66.5 24.75 4 1693 | vertex 66.5 24.75 0 1694 | endloop 1695 | endfacet 1696 | facet normal 0.308907 0.951092 0 1697 | outer loop 1698 | vertex 63.786 13.868 4 1699 | vertex 65.464 13.323 4 1700 | vertex 63.786 13.868 0 1701 | endloop 1702 | endfacet 1703 | facet normal 0.308907 0.951092 0 1704 | outer loop 1705 | vertex 63.786 13.868 0 1706 | vertex 65.464 13.323 4 1707 | vertex 65.464 13.323 0 1708 | endloop 1709 | endfacet 1710 | facet normal 1 0 0 1711 | outer loop 1712 | vertex 63.786 13.868 0 1713 | vertex 63.786 15.632 0 1714 | vertex 63.786 15.632 4 1715 | endloop 1716 | endfacet 1717 | facet normal 1 0 0 1718 | outer loop 1719 | vertex 63.786 13.868 4 1720 | vertex 63.786 13.868 0 1721 | vertex 63.786 15.632 4 1722 | endloop 1723 | endfacet 1724 | facet normal 0.308907 -0.951092 0 1725 | outer loop 1726 | vertex 63.786 15.632 0 1727 | vertex 65.464 16.177 0 1728 | vertex 65.464 16.177 4 1729 | endloop 1730 | endfacet 1731 | facet normal 0.308907 -0.951092 0 1732 | outer loop 1733 | vertex 63.786 15.632 4 1734 | vertex 63.786 15.632 0 1735 | vertex 65.464 16.177 4 1736 | endloop 1737 | endfacet 1738 | facet normal -0.809226 -0.587497 0 1739 | outer loop 1740 | vertex 66.5 14.75 0 1741 | vertex 66.5 14.75 4 1742 | vertex 65.464 16.177 0 1743 | endloop 1744 | endfacet 1745 | facet normal -0.809226 -0.587497 0 1746 | outer loop 1747 | vertex 65.464 16.177 0 1748 | vertex 66.5 14.75 4 1749 | vertex 65.464 16.177 4 1750 | endloop 1751 | endfacet 1752 | facet normal -0.809226 0.587497 0 1753 | outer loop 1754 | vertex 65.464 13.323 4 1755 | vertex 66.5 14.75 4 1756 | vertex 65.464 13.323 0 1757 | endloop 1758 | endfacet 1759 | facet normal -0.809226 0.587497 0 1760 | outer loop 1761 | vertex 65.464 13.323 0 1762 | vertex 66.5 14.75 4 1763 | vertex 66.5 14.75 0 1764 | endloop 1765 | endfacet 1766 | facet normal 0 1 0 1767 | outer loop 1768 | vertex 65.125 4.625 4 1769 | vertex 75.875 4.625 4 1770 | vertex 65.125 4.625 0 1771 | endloop 1772 | endfacet 1773 | facet normal 0 1 0 1774 | outer loop 1775 | vertex 65.125 4.625 0 1776 | vertex 75.875 4.625 4 1777 | vertex 75.875 4.625 0 1778 | endloop 1779 | endfacet 1780 | facet normal 1 0 0 1781 | outer loop 1782 | vertex 65.125 4.625 0 1783 | vertex 65.125 9.375 0 1784 | vertex 65.125 9.375 4 1785 | endloop 1786 | endfacet 1787 | facet normal 1 0 0 1788 | outer loop 1789 | vertex 65.125 4.625 4 1790 | vertex 65.125 4.625 0 1791 | vertex 65.125 9.375 4 1792 | endloop 1793 | endfacet 1794 | facet normal 0 -1 0 1795 | outer loop 1796 | vertex 65.125 9.375 0 1797 | vertex 75.875 9.375 0 1798 | vertex 75.875 9.375 4 1799 | endloop 1800 | endfacet 1801 | facet normal 0 -1 0 1802 | outer loop 1803 | vertex 65.125 9.375 4 1804 | vertex 65.125 9.375 0 1805 | vertex 75.875 9.375 4 1806 | endloop 1807 | endfacet 1808 | facet normal -1 0 0 1809 | outer loop 1810 | vertex 75.875 4.625 4 1811 | vertex 75.875 9.375 4 1812 | vertex 75.875 4.625 0 1813 | endloop 1814 | endfacet 1815 | facet normal -1 0 0 1816 | outer loop 1817 | vertex 75.875 4.625 0 1818 | vertex 75.875 9.375 4 1819 | vertex 75.875 9.375 0 1820 | endloop 1821 | endfacet 1822 | endsolid OpenSCAD_Model 1823 | -------------------------------------------------------------------------------- /3d_print/sumobot/top-arduino.stl: -------------------------------------------------------------------------------- 1 | solid OpenSCAD_Model 2 | facet normal 0 1 0 3 | outer loop 4 | vertex 5 67.5 4 5 | vertex 15 67.5 4 6 | vertex 5 67.5 0 7 | endloop 8 | endfacet 9 | facet normal 0 1 0 10 | outer loop 11 | vertex 5 67.5 0 12 | vertex 15 67.5 4 13 | vertex 15 67.5 0 14 | endloop 15 | endfacet 16 | facet normal -1 0 0 17 | outer loop 18 | vertex 5 63.5 4 19 | vertex 5 67.5 4 20 | vertex 5 63.5 0 21 | endloop 22 | endfacet 23 | facet normal -1 0 0 24 | outer loop 25 | vertex 5 63.5 0 26 | vertex 5 67.5 4 27 | vertex 5 67.5 0 28 | endloop 29 | endfacet 30 | facet normal 0 0 -1 31 | outer loop 32 | vertex 0 63.5 0 33 | vertex 5 63.5 0 34 | vertex 0 0 0 35 | endloop 36 | endfacet 37 | facet normal 0 0 -1 38 | outer loop 39 | vertex 15 67.5 0 40 | vertex 5 63.5 0 41 | vertex 5 67.5 0 42 | endloop 43 | endfacet 44 | facet normal 0 0 -1 45 | outer loop 46 | vertex 0 0 0 47 | vertex 5 63.5 0 48 | vertex 15 67.5 0 49 | endloop 50 | endfacet 51 | facet normal 0 0 -1 52 | outer loop 53 | vertex 0 0 0 54 | vertex 15 67.5 0 55 | vertex 15 63.5 0 56 | endloop 57 | endfacet 58 | facet normal 0 0 -1 59 | outer loop 60 | vertex 15.7 50.75 0 61 | vertex 15 63.5 0 62 | vertex 65.5 63.5 0 63 | endloop 64 | endfacet 65 | facet normal 0 0 -1 66 | outer loop 67 | vertex 65.5 63.5 0 68 | vertex 65.5 67.5 0 69 | vertex 75.5 67.5 0 70 | endloop 71 | endfacet 72 | facet normal 0 0 -1 73 | outer loop 74 | vertex 65.5 63.5 0 75 | vertex 75.5 67.5 0 76 | vertex 0 0 0 77 | endloop 78 | endfacet 79 | facet normal 0 0 -1 80 | outer loop 81 | vertex 66.764 54.423 0 82 | vertex 75.5 63.5 0 83 | vertex 80.5 63.5 0 84 | endloop 85 | endfacet 86 | facet normal 0 0 -1 87 | outer loop 88 | vertex 75.5 0 0 89 | vertex 80.5 63.5 0 90 | vertex 80.5 0 0 91 | endloop 92 | endfacet 93 | facet normal 0 0 -1 94 | outer loop 95 | vertex 0 0 0 96 | vertex 80.5 63.5 0 97 | vertex 5 0 0 98 | endloop 99 | endfacet 100 | facet normal 0 0 -1 101 | outer loop 102 | vertex 75.5 0 0 103 | vertex 75.5 -4 0 104 | vertex 65.5 0 0 105 | endloop 106 | endfacet 107 | facet normal 0 0 -1 108 | outer loop 109 | vertex 75.5 0 0 110 | vertex 65.5 0 0 111 | vertex 80.5 63.5 0 112 | endloop 113 | endfacet 114 | facet normal 0 0 -1 115 | outer loop 116 | vertex 15.7 50.75 0 117 | vertex 65.5 63.5 0 118 | vertex 14.664 49.323 0 119 | endloop 120 | endfacet 121 | facet normal 0 0 -1 122 | outer loop 123 | vertex 63.786 8.532 0 124 | vertex 15 0 0 125 | vertex 80.5 63.5 0 126 | endloop 127 | endfacet 128 | facet normal 0 0 -1 129 | outer loop 130 | vertex 5 0 0 131 | vertex 15 -4 0 132 | vertex 5 -4 0 133 | endloop 134 | endfacet 135 | facet normal 0 0 -1 136 | outer loop 137 | vertex 15 -4 0 138 | vertex 5 0 0 139 | vertex 15 0 0 140 | endloop 141 | endfacet 142 | facet normal 0 0 -1 143 | outer loop 144 | vertex 15 0 0 145 | vertex 5 0 0 146 | vertex 80.5 63.5 0 147 | endloop 148 | endfacet 149 | facet normal 0 0 -1 150 | outer loop 151 | vertex 14.664 24.277 0 152 | vertex 65.5 63.5 0 153 | vertex 15.7 22.85 0 154 | endloop 155 | endfacet 156 | facet normal 0 0 -1 157 | outer loop 158 | vertex 0 0 0 159 | vertex 12.986 49.868 0 160 | vertex 14.664 49.323 0 161 | endloop 162 | endfacet 163 | facet normal 0 0 -1 164 | outer loop 165 | vertex 14.664 24.277 0 166 | vertex 14.664 49.323 0 167 | vertex 65.5 63.5 0 168 | endloop 169 | endfacet 170 | facet normal 0 0 -1 171 | outer loop 172 | vertex 14.664 52.177 0 173 | vertex 15 63.5 0 174 | vertex 15.7 50.75 0 175 | endloop 176 | endfacet 177 | facet normal 0 0 -1 178 | outer loop 179 | vertex 12.986 51.632 0 180 | vertex 15 63.5 0 181 | vertex 14.664 52.177 0 182 | endloop 183 | endfacet 184 | facet normal 0 0 -1 185 | outer loop 186 | vertex 0 0 0 187 | vertex 15 63.5 0 188 | vertex 12.986 51.632 0 189 | endloop 190 | endfacet 191 | facet normal 0 0 -1 192 | outer loop 193 | vertex 0 0 0 194 | vertex 12.986 51.632 0 195 | vertex 12.986 49.868 0 196 | endloop 197 | endfacet 198 | facet normal 0 0 -1 199 | outer loop 200 | vertex 65.086 54.968 0 201 | vertex 0 0 0 202 | vertex 65.086 56.732 0 203 | endloop 204 | endfacet 205 | facet normal 0 0 -1 206 | outer loop 207 | vertex 0 0 0 208 | vertex 12.986 21.968 0 209 | vertex 14.664 21.423 0 210 | endloop 211 | endfacet 212 | facet normal 0 0 -1 213 | outer loop 214 | vertex 0 0 0 215 | vertex 14.664 21.423 0 216 | vertex 65.5 63.5 0 217 | endloop 218 | endfacet 219 | facet normal 0 0 -1 220 | outer loop 221 | vertex 14.664 21.423 0 222 | vertex 15.7 22.85 0 223 | vertex 65.5 63.5 0 224 | endloop 225 | endfacet 226 | facet normal 0 0 -1 227 | outer loop 228 | vertex 12.986 23.732 0 229 | vertex 14.664 49.323 0 230 | vertex 14.664 24.277 0 231 | endloop 232 | endfacet 233 | facet normal 0 0 -1 234 | outer loop 235 | vertex 0 0 0 236 | vertex 14.664 49.323 0 237 | vertex 12.986 23.732 0 238 | endloop 239 | endfacet 240 | facet normal 0 0 -1 241 | outer loop 242 | vertex 0 0 0 243 | vertex 12.986 23.732 0 244 | vertex 12.986 21.968 0 245 | endloop 246 | endfacet 247 | facet normal 0 0 -1 248 | outer loop 249 | vertex 65.464 9.077 0 250 | vertex 80.5 63.5 0 251 | vertex 66.5 7.65 0 252 | endloop 253 | endfacet 254 | facet normal 0 0 -1 255 | outer loop 256 | vertex 67.8 55.85 0 257 | vertex 75.5 63.5 0 258 | vertex 66.764 54.423 0 259 | endloop 260 | endfacet 261 | facet normal 0 0 -1 262 | outer loop 263 | vertex 0 0 0 264 | vertex 66.764 54.423 0 265 | vertex 80.5 63.5 0 266 | endloop 267 | endfacet 268 | facet normal 0 0 -1 269 | outer loop 270 | vertex 66.764 57.277 0 271 | vertex 75.5 63.5 0 272 | vertex 67.8 55.85 0 273 | endloop 274 | endfacet 275 | facet normal 0 0 -1 276 | outer loop 277 | vertex 66.764 57.277 0 278 | vertex 75.5 67.5 0 279 | vertex 75.5 63.5 0 280 | endloop 281 | endfacet 282 | facet normal 0 0 -1 283 | outer loop 284 | vertex 65.086 56.732 0 285 | vertex 75.5 67.5 0 286 | vertex 66.764 57.277 0 287 | endloop 288 | endfacet 289 | facet normal 0 0 -1 290 | outer loop 291 | vertex 66.764 54.423 0 292 | vertex 0 0 0 293 | vertex 65.086 54.968 0 294 | endloop 295 | endfacet 296 | facet normal 0 0 -1 297 | outer loop 298 | vertex 0 0 0 299 | vertex 75.5 67.5 0 300 | vertex 65.086 56.732 0 301 | endloop 302 | endfacet 303 | facet normal 0 0 -1 304 | outer loop 305 | vertex 65.5 0 0 306 | vertex 15 0 0 307 | vertex 63.786 6.768 0 308 | endloop 309 | endfacet 310 | facet normal 0 0 -1 311 | outer loop 312 | vertex 65.5 0 0 313 | vertex 63.786 6.768 0 314 | vertex 65.464 6.223 0 315 | endloop 316 | endfacet 317 | facet normal 0 0 -1 318 | outer loop 319 | vertex 65.5 0 0 320 | vertex 65.464 6.223 0 321 | vertex 66.5 7.65 0 322 | endloop 323 | endfacet 324 | facet normal 0 0 -1 325 | outer loop 326 | vertex 65.5 0 0 327 | vertex 66.5 7.65 0 328 | vertex 80.5 63.5 0 329 | endloop 330 | endfacet 331 | facet normal 0 0 -1 332 | outer loop 333 | vertex 63.786 8.532 0 334 | vertex 80.5 63.5 0 335 | vertex 65.464 9.077 0 336 | endloop 337 | endfacet 338 | facet normal 0 0 -1 339 | outer loop 340 | vertex 63.786 6.768 0 341 | vertex 15 0 0 342 | vertex 63.786 8.532 0 343 | endloop 344 | endfacet 345 | facet normal 0 0 -1 346 | outer loop 347 | vertex 65.5 0 0 348 | vertex 75.5 -4 0 349 | vertex 65.5 -4 0 350 | endloop 351 | endfacet 352 | facet normal 1 0 0 353 | outer loop 354 | vertex 15 63.5 0 355 | vertex 15 67.5 0 356 | vertex 15 67.5 4 357 | endloop 358 | endfacet 359 | facet normal 1 0 0 360 | outer loop 361 | vertex 15 63.5 4 362 | vertex 15 63.5 0 363 | vertex 15 67.5 4 364 | endloop 365 | endfacet 366 | facet normal 0 0 1 367 | outer loop 368 | vertex 15 -4 4 369 | vertex 5 0 4 370 | vertex 5 -4 4 371 | endloop 372 | endfacet 373 | facet normal 0 0 1 374 | outer loop 375 | vertex 15 0 4 376 | vertex 5 0 4 377 | vertex 15 -4 4 378 | endloop 379 | endfacet 380 | facet normal 0 0 1 381 | outer loop 382 | vertex 0 0 4 383 | vertex 5 0 4 384 | vertex 80.5 63.5 4 385 | endloop 386 | endfacet 387 | facet normal 0 0 1 388 | outer loop 389 | vertex 80.5 63.5 4 390 | vertex 5 0 4 391 | vertex 15 0 4 392 | endloop 393 | endfacet 394 | facet normal 0 0 1 395 | outer loop 396 | vertex 63.786 6.768 4 397 | vertex 15 0 4 398 | vertex 65.5 0 4 399 | endloop 400 | endfacet 401 | facet normal 0 0 1 402 | outer loop 403 | vertex 75.5 -4 4 404 | vertex 65.5 0 4 405 | vertex 65.5 -4 4 406 | endloop 407 | endfacet 408 | facet normal 0 0 1 409 | outer loop 410 | vertex 75.5 0 4 411 | vertex 65.5 0 4 412 | vertex 75.5 -4 4 413 | endloop 414 | endfacet 415 | facet normal 0 0 1 416 | outer loop 417 | vertex 80.5 63.5 4 418 | vertex 65.5 0 4 419 | vertex 75.5 0 4 420 | endloop 421 | endfacet 422 | facet normal 0 0 1 423 | outer loop 424 | vertex 80.5 63.5 4 425 | vertex 75.5 0 4 426 | vertex 80.5 0 4 427 | endloop 428 | endfacet 429 | facet normal 0 0 1 430 | outer loop 431 | vertex 66.764 54.423 4 432 | vertex 0 0 4 433 | vertex 80.5 63.5 4 434 | endloop 435 | endfacet 436 | facet normal 0 0 1 437 | outer loop 438 | vertex 65.5 63.5 4 439 | vertex 0 0 4 440 | vertex 75.5 67.5 4 441 | endloop 442 | endfacet 443 | facet normal 0 0 1 444 | outer loop 445 | vertex 65.5 67.5 4 446 | vertex 65.5 63.5 4 447 | vertex 75.5 67.5 4 448 | endloop 449 | endfacet 450 | facet normal 0 0 1 451 | outer loop 452 | vertex 15 67.5 4 453 | vertex 0 0 4 454 | vertex 15 63.5 4 455 | endloop 456 | endfacet 457 | facet normal 0 0 1 458 | outer loop 459 | vertex 5 63.5 4 460 | vertex 0 0 4 461 | vertex 15 67.5 4 462 | endloop 463 | endfacet 464 | facet normal 0 0 1 465 | outer loop 466 | vertex 5 67.5 4 467 | vertex 5 63.5 4 468 | vertex 15 67.5 4 469 | endloop 470 | endfacet 471 | facet normal 0 0 1 472 | outer loop 473 | vertex 12.986 51.632 4 474 | vertex 14.664 52.177 4 475 | vertex 15 63.5 4 476 | endloop 477 | endfacet 478 | facet normal 0 0 1 479 | outer loop 480 | vertex 5 63.5 4 481 | vertex 0 63.5 4 482 | vertex 0 0 4 483 | endloop 484 | endfacet 485 | facet normal 0 0 1 486 | outer loop 487 | vertex 12.986 51.632 4 488 | vertex 0 0 4 489 | vertex 12.986 49.868 4 490 | endloop 491 | endfacet 492 | facet normal 0 0 1 493 | outer loop 494 | vertex 12.986 23.732 4 495 | vertex 14.664 24.277 4 496 | vertex 15.7 50.75 4 497 | endloop 498 | endfacet 499 | facet normal 0 0 1 500 | outer loop 501 | vertex 15 63.5 4 502 | vertex 0 0 4 503 | vertex 12.986 51.632 4 504 | endloop 505 | endfacet 506 | facet normal 0 0 1 507 | outer loop 508 | vertex 66.764 54.423 4 509 | vertex 65.086 54.968 4 510 | vertex 0 0 4 511 | endloop 512 | endfacet 513 | facet normal 0 0 1 514 | outer loop 515 | vertex 14.664 49.323 4 516 | vertex 0 0 4 517 | vertex 15.7 50.75 4 518 | endloop 519 | endfacet 520 | facet normal 0 0 1 521 | outer loop 522 | vertex 12.986 49.868 4 523 | vertex 0 0 4 524 | vertex 14.664 49.323 4 525 | endloop 526 | endfacet 527 | facet normal 0 0 1 528 | outer loop 529 | vertex 12.986 23.732 4 530 | vertex 0 0 4 531 | vertex 12.986 21.968 4 532 | endloop 533 | endfacet 534 | facet normal 0 0 1 535 | outer loop 536 | vertex 14.664 24.277 4 537 | vertex 15.7 22.85 4 538 | vertex 65.5 63.5 4 539 | endloop 540 | endfacet 541 | facet normal 0 0 1 542 | outer loop 543 | vertex 15.7 50.75 4 544 | vertex 0 0 4 545 | vertex 12.986 23.732 4 546 | endloop 547 | endfacet 548 | facet normal 0 0 1 549 | outer loop 550 | vertex 14.664 21.423 4 551 | vertex 0 0 4 552 | vertex 15.7 22.85 4 553 | endloop 554 | endfacet 555 | facet normal 0 0 1 556 | outer loop 557 | vertex 12.986 21.968 4 558 | vertex 0 0 4 559 | vertex 14.664 21.423 4 560 | endloop 561 | endfacet 562 | facet normal 0 0 1 563 | outer loop 564 | vertex 63.786 8.532 4 565 | vertex 65.464 9.077 4 566 | vertex 80.5 63.5 4 567 | endloop 568 | endfacet 569 | facet normal 0 0 1 570 | outer loop 571 | vertex 65.086 56.732 4 572 | vertex 0 0 4 573 | vertex 65.086 54.968 4 574 | endloop 575 | endfacet 576 | facet normal 0 0 1 577 | outer loop 578 | vertex 75.5 67.5 4 579 | vertex 0 0 4 580 | vertex 65.086 56.732 4 581 | endloop 582 | endfacet 583 | facet normal 0 0 1 584 | outer loop 585 | vertex 75.5 67.5 4 586 | vertex 65.086 56.732 4 587 | vertex 66.764 57.277 4 588 | endloop 589 | endfacet 590 | facet normal 0 0 1 591 | outer loop 592 | vertex 75.5 63.5 4 593 | vertex 67.8 55.85 4 594 | vertex 80.5 63.5 4 595 | endloop 596 | endfacet 597 | facet normal 0 0 1 598 | outer loop 599 | vertex 66.764 57.277 4 600 | vertex 75.5 63.5 4 601 | vertex 75.5 67.5 4 602 | endloop 603 | endfacet 604 | facet normal 0 0 1 605 | outer loop 606 | vertex 67.8 55.85 4 607 | vertex 66.764 54.423 4 608 | vertex 80.5 63.5 4 609 | endloop 610 | endfacet 611 | facet normal 0 0 1 612 | outer loop 613 | vertex 66.764 57.277 4 614 | vertex 67.8 55.85 4 615 | vertex 75.5 63.5 4 616 | endloop 617 | endfacet 618 | facet normal 0 0 1 619 | outer loop 620 | vertex 65.464 6.223 4 621 | vertex 63.786 6.768 4 622 | vertex 65.5 0 4 623 | endloop 624 | endfacet 625 | facet normal 0 0 1 626 | outer loop 627 | vertex 63.786 8.532 4 628 | vertex 15 0 4 629 | vertex 63.786 6.768 4 630 | endloop 631 | endfacet 632 | facet normal 0 0 1 633 | outer loop 634 | vertex 66.5 7.65 4 635 | vertex 65.464 6.223 4 636 | vertex 65.5 0 4 637 | endloop 638 | endfacet 639 | facet normal 0 0 1 640 | outer loop 641 | vertex 80.5 63.5 4 642 | vertex 15 0 4 643 | vertex 63.786 8.532 4 644 | endloop 645 | endfacet 646 | facet normal 0 0 1 647 | outer loop 648 | vertex 80.5 63.5 4 649 | vertex 66.5 7.65 4 650 | vertex 65.5 0 4 651 | endloop 652 | endfacet 653 | facet normal 0 0 1 654 | outer loop 655 | vertex 80.5 63.5 4 656 | vertex 65.464 9.077 4 657 | vertex 66.5 7.65 4 658 | endloop 659 | endfacet 660 | facet normal 0 0 1 661 | outer loop 662 | vertex 65.5 63.5 4 663 | vertex 15.7 22.85 4 664 | vertex 0 0 4 665 | endloop 666 | endfacet 667 | facet normal 0 0 1 668 | outer loop 669 | vertex 65.5 63.5 4 670 | vertex 15.7 50.75 4 671 | vertex 14.664 24.277 4 672 | endloop 673 | endfacet 674 | facet normal 0 0 1 675 | outer loop 676 | vertex 65.5 63.5 4 677 | vertex 14.664 52.177 4 678 | vertex 15.7 50.75 4 679 | endloop 680 | endfacet 681 | facet normal 0 0 1 682 | outer loop 683 | vertex 65.5 63.5 4 684 | vertex 15 63.5 4 685 | vertex 14.664 52.177 4 686 | endloop 687 | endfacet 688 | facet normal 0 1 0 689 | outer loop 690 | vertex 0 63.5 4 691 | vertex 5 63.5 4 692 | vertex 0 63.5 0 693 | endloop 694 | endfacet 695 | facet normal 0 1 0 696 | outer loop 697 | vertex 0 63.5 0 698 | vertex 5 63.5 4 699 | vertex 5 63.5 0 700 | endloop 701 | endfacet 702 | facet normal 0 -1 0 703 | outer loop 704 | vertex 0 0 0 705 | vertex 5 0 0 706 | vertex 5 0 4 707 | endloop 708 | endfacet 709 | facet normal 0 -1 0 710 | outer loop 711 | vertex 0 0 4 712 | vertex 0 0 0 713 | vertex 5 0 4 714 | endloop 715 | endfacet 716 | facet normal -1 0 0 717 | outer loop 718 | vertex 0 0 4 719 | vertex 0 63.5 4 720 | vertex 0 0 0 721 | endloop 722 | endfacet 723 | facet normal -1 0 0 724 | outer loop 725 | vertex 0 0 0 726 | vertex 0 63.5 4 727 | vertex 0 63.5 0 728 | endloop 729 | endfacet 730 | facet normal -1 0 0 731 | outer loop 732 | vertex 5 -4 4 733 | vertex 5 0 4 734 | vertex 5 -4 0 735 | endloop 736 | endfacet 737 | facet normal -1 0 0 738 | outer loop 739 | vertex 5 -4 0 740 | vertex 5 0 4 741 | vertex 5 0 0 742 | endloop 743 | endfacet 744 | facet normal 0 -1 0 745 | outer loop 746 | vertex 5 -4 0 747 | vertex 15 -4 0 748 | vertex 15 -4 4 749 | endloop 750 | endfacet 751 | facet normal 0 -1 0 752 | outer loop 753 | vertex 5 -4 4 754 | vertex 5 -4 0 755 | vertex 15 -4 4 756 | endloop 757 | endfacet 758 | facet normal 1 0 0 759 | outer loop 760 | vertex 15 -4 0 761 | vertex 15 0 0 762 | vertex 15 0 4 763 | endloop 764 | endfacet 765 | facet normal 1 0 0 766 | outer loop 767 | vertex 15 -4 4 768 | vertex 15 -4 0 769 | vertex 15 0 4 770 | endloop 771 | endfacet 772 | facet normal 0 -1 0 773 | outer loop 774 | vertex 15 0 0 775 | vertex 65.5 0 0 776 | vertex 65.5 0 4 777 | endloop 778 | endfacet 779 | facet normal 0 -1 0 780 | outer loop 781 | vertex 15 0 4 782 | vertex 15 0 0 783 | vertex 65.5 0 4 784 | endloop 785 | endfacet 786 | facet normal -1 0 0 787 | outer loop 788 | vertex 65.5 -4 4 789 | vertex 65.5 0 4 790 | vertex 65.5 -4 0 791 | endloop 792 | endfacet 793 | facet normal -1 0 0 794 | outer loop 795 | vertex 65.5 -4 0 796 | vertex 65.5 0 4 797 | vertex 65.5 0 0 798 | endloop 799 | endfacet 800 | facet normal 0 -1 0 801 | outer loop 802 | vertex 65.5 -4 0 803 | vertex 75.5 -4 0 804 | vertex 75.5 -4 4 805 | endloop 806 | endfacet 807 | facet normal 0 -1 0 808 | outer loop 809 | vertex 65.5 -4 4 810 | vertex 65.5 -4 0 811 | vertex 75.5 -4 4 812 | endloop 813 | endfacet 814 | facet normal 1 0 0 815 | outer loop 816 | vertex 75.5 -4 0 817 | vertex 75.5 0 0 818 | vertex 75.5 0 4 819 | endloop 820 | endfacet 821 | facet normal 1 0 0 822 | outer loop 823 | vertex 75.5 -4 4 824 | vertex 75.5 -4 0 825 | vertex 75.5 0 4 826 | endloop 827 | endfacet 828 | facet normal 0 -1 0 829 | outer loop 830 | vertex 75.5 0 0 831 | vertex 80.5 0 0 832 | vertex 80.5 0 4 833 | endloop 834 | endfacet 835 | facet normal 0 -1 0 836 | outer loop 837 | vertex 75.5 0 4 838 | vertex 75.5 0 0 839 | vertex 80.5 0 4 840 | endloop 841 | endfacet 842 | facet normal 1 0 0 843 | outer loop 844 | vertex 80.5 0 0 845 | vertex 80.5 63.5 0 846 | vertex 80.5 63.5 4 847 | endloop 848 | endfacet 849 | facet normal 1 0 0 850 | outer loop 851 | vertex 80.5 0 4 852 | vertex 80.5 0 0 853 | vertex 80.5 63.5 4 854 | endloop 855 | endfacet 856 | facet normal 0 1 0 857 | outer loop 858 | vertex 75.5 63.5 4 859 | vertex 80.5 63.5 4 860 | vertex 75.5 63.5 0 861 | endloop 862 | endfacet 863 | facet normal 0 1 0 864 | outer loop 865 | vertex 75.5 63.5 0 866 | vertex 80.5 63.5 4 867 | vertex 80.5 63.5 0 868 | endloop 869 | endfacet 870 | facet normal 1 0 0 871 | outer loop 872 | vertex 75.5 63.5 0 873 | vertex 75.5 67.5 0 874 | vertex 75.5 67.5 4 875 | endloop 876 | endfacet 877 | facet normal 1 0 0 878 | outer loop 879 | vertex 75.5 63.5 4 880 | vertex 75.5 63.5 0 881 | vertex 75.5 67.5 4 882 | endloop 883 | endfacet 884 | facet normal 0 1 0 885 | outer loop 886 | vertex 65.5 67.5 4 887 | vertex 75.5 67.5 4 888 | vertex 65.5 67.5 0 889 | endloop 890 | endfacet 891 | facet normal 0 1 0 892 | outer loop 893 | vertex 65.5 67.5 0 894 | vertex 75.5 67.5 4 895 | vertex 75.5 67.5 0 896 | endloop 897 | endfacet 898 | facet normal -1 0 0 899 | outer loop 900 | vertex 65.5 63.5 4 901 | vertex 65.5 67.5 4 902 | vertex 65.5 63.5 0 903 | endloop 904 | endfacet 905 | facet normal -1 0 0 906 | outer loop 907 | vertex 65.5 63.5 0 908 | vertex 65.5 67.5 4 909 | vertex 65.5 67.5 0 910 | endloop 911 | endfacet 912 | facet normal 0 1 0 913 | outer loop 914 | vertex 15 63.5 4 915 | vertex 65.5 63.5 4 916 | vertex 15 63.5 0 917 | endloop 918 | endfacet 919 | facet normal 0 1 0 920 | outer loop 921 | vertex 15 63.5 0 922 | vertex 65.5 63.5 4 923 | vertex 65.5 63.5 0 924 | endloop 925 | endfacet 926 | facet normal 0.308907 0.951092 0 927 | outer loop 928 | vertex 12.986 49.868 4 929 | vertex 14.664 49.323 4 930 | vertex 12.986 49.868 0 931 | endloop 932 | endfacet 933 | facet normal 0.308907 0.951092 0 934 | outer loop 935 | vertex 12.986 49.868 0 936 | vertex 14.664 49.323 4 937 | vertex 14.664 49.323 0 938 | endloop 939 | endfacet 940 | facet normal 1 0 0 941 | outer loop 942 | vertex 12.986 49.868 0 943 | vertex 12.986 51.632 0 944 | vertex 12.986 51.632 4 945 | endloop 946 | endfacet 947 | facet normal 1 0 0 948 | outer loop 949 | vertex 12.986 49.868 4 950 | vertex 12.986 49.868 0 951 | vertex 12.986 51.632 4 952 | endloop 953 | endfacet 954 | facet normal 0.308907 -0.951092 0 955 | outer loop 956 | vertex 12.986 51.632 0 957 | vertex 14.664 52.177 0 958 | vertex 14.664 52.177 4 959 | endloop 960 | endfacet 961 | facet normal 0.308907 -0.951092 0 962 | outer loop 963 | vertex 12.986 51.632 4 964 | vertex 12.986 51.632 0 965 | vertex 14.664 52.177 4 966 | endloop 967 | endfacet 968 | facet normal -0.809226 -0.587497 0 969 | outer loop 970 | vertex 15.7 50.75 0 971 | vertex 15.7 50.75 4 972 | vertex 14.664 52.177 0 973 | endloop 974 | endfacet 975 | facet normal -0.809226 -0.587497 0 976 | outer loop 977 | vertex 14.664 52.177 0 978 | vertex 15.7 50.75 4 979 | vertex 14.664 52.177 4 980 | endloop 981 | endfacet 982 | facet normal -0.809226 0.587497 0 983 | outer loop 984 | vertex 14.664 49.323 4 985 | vertex 15.7 50.75 4 986 | vertex 14.664 49.323 0 987 | endloop 988 | endfacet 989 | facet normal -0.809226 0.587497 0 990 | outer loop 991 | vertex 14.664 49.323 0 992 | vertex 15.7 50.75 4 993 | vertex 15.7 50.75 0 994 | endloop 995 | endfacet 996 | facet normal 0.308907 0.951092 0 997 | outer loop 998 | vertex 12.986 21.968 4 999 | vertex 14.664 21.423 4 1000 | vertex 12.986 21.968 0 1001 | endloop 1002 | endfacet 1003 | facet normal 0.308907 0.951092 0 1004 | outer loop 1005 | vertex 12.986 21.968 0 1006 | vertex 14.664 21.423 4 1007 | vertex 14.664 21.423 0 1008 | endloop 1009 | endfacet 1010 | facet normal 1 0 0 1011 | outer loop 1012 | vertex 12.986 21.968 0 1013 | vertex 12.986 23.732 0 1014 | vertex 12.986 23.732 4 1015 | endloop 1016 | endfacet 1017 | facet normal 1 0 0 1018 | outer loop 1019 | vertex 12.986 21.968 4 1020 | vertex 12.986 21.968 0 1021 | vertex 12.986 23.732 4 1022 | endloop 1023 | endfacet 1024 | facet normal 0.308907 -0.951092 0 1025 | outer loop 1026 | vertex 12.986 23.732 0 1027 | vertex 14.664 24.277 0 1028 | vertex 14.664 24.277 4 1029 | endloop 1030 | endfacet 1031 | facet normal 0.308907 -0.951092 0 1032 | outer loop 1033 | vertex 12.986 23.732 4 1034 | vertex 12.986 23.732 0 1035 | vertex 14.664 24.277 4 1036 | endloop 1037 | endfacet 1038 | facet normal -0.809226 -0.587497 0 1039 | outer loop 1040 | vertex 15.7 22.85 0 1041 | vertex 15.7 22.85 4 1042 | vertex 14.664 24.277 0 1043 | endloop 1044 | endfacet 1045 | facet normal -0.809226 -0.587497 0 1046 | outer loop 1047 | vertex 14.664 24.277 0 1048 | vertex 15.7 22.85 4 1049 | vertex 14.664 24.277 4 1050 | endloop 1051 | endfacet 1052 | facet normal -0.809226 0.587497 0 1053 | outer loop 1054 | vertex 14.664 21.423 4 1055 | vertex 15.7 22.85 4 1056 | vertex 14.664 21.423 0 1057 | endloop 1058 | endfacet 1059 | facet normal -0.809226 0.587497 0 1060 | outer loop 1061 | vertex 14.664 21.423 0 1062 | vertex 15.7 22.85 4 1063 | vertex 15.7 22.85 0 1064 | endloop 1065 | endfacet 1066 | facet normal 0.308907 0.951092 0 1067 | outer loop 1068 | vertex 65.086 54.968 4 1069 | vertex 66.764 54.423 4 1070 | vertex 65.086 54.968 0 1071 | endloop 1072 | endfacet 1073 | facet normal 0.308907 0.951092 0 1074 | outer loop 1075 | vertex 65.086 54.968 0 1076 | vertex 66.764 54.423 4 1077 | vertex 66.764 54.423 0 1078 | endloop 1079 | endfacet 1080 | facet normal 1 0 0 1081 | outer loop 1082 | vertex 65.086 54.968 0 1083 | vertex 65.086 56.732 0 1084 | vertex 65.086 56.732 4 1085 | endloop 1086 | endfacet 1087 | facet normal 1 0 0 1088 | outer loop 1089 | vertex 65.086 54.968 4 1090 | vertex 65.086 54.968 0 1091 | vertex 65.086 56.732 4 1092 | endloop 1093 | endfacet 1094 | facet normal 0.308907 -0.951092 0 1095 | outer loop 1096 | vertex 65.086 56.732 0 1097 | vertex 66.764 57.277 0 1098 | vertex 66.764 57.277 4 1099 | endloop 1100 | endfacet 1101 | facet normal 0.308907 -0.951092 0 1102 | outer loop 1103 | vertex 65.086 56.732 4 1104 | vertex 65.086 56.732 0 1105 | vertex 66.764 57.277 4 1106 | endloop 1107 | endfacet 1108 | facet normal -0.809226 -0.587497 0 1109 | outer loop 1110 | vertex 67.8 55.85 0 1111 | vertex 67.8 55.85 4 1112 | vertex 66.764 57.277 0 1113 | endloop 1114 | endfacet 1115 | facet normal -0.809226 -0.587497 0 1116 | outer loop 1117 | vertex 66.764 57.277 0 1118 | vertex 67.8 55.85 4 1119 | vertex 66.764 57.277 4 1120 | endloop 1121 | endfacet 1122 | facet normal -0.809226 0.587497 0 1123 | outer loop 1124 | vertex 66.764 54.423 4 1125 | vertex 67.8 55.85 4 1126 | vertex 66.764 54.423 0 1127 | endloop 1128 | endfacet 1129 | facet normal -0.809226 0.587497 0 1130 | outer loop 1131 | vertex 66.764 54.423 0 1132 | vertex 67.8 55.85 4 1133 | vertex 67.8 55.85 0 1134 | endloop 1135 | endfacet 1136 | facet normal 0.308907 0.951092 0 1137 | outer loop 1138 | vertex 63.786 6.768 4 1139 | vertex 65.464 6.223 4 1140 | vertex 63.786 6.768 0 1141 | endloop 1142 | endfacet 1143 | facet normal 0.308907 0.951092 0 1144 | outer loop 1145 | vertex 63.786 6.768 0 1146 | vertex 65.464 6.223 4 1147 | vertex 65.464 6.223 0 1148 | endloop 1149 | endfacet 1150 | facet normal 1 0 0 1151 | outer loop 1152 | vertex 63.786 6.768 0 1153 | vertex 63.786 8.532 0 1154 | vertex 63.786 8.532 4 1155 | endloop 1156 | endfacet 1157 | facet normal 1 0 0 1158 | outer loop 1159 | vertex 63.786 6.768 4 1160 | vertex 63.786 6.768 0 1161 | vertex 63.786 8.532 4 1162 | endloop 1163 | endfacet 1164 | facet normal 0.308907 -0.951092 0 1165 | outer loop 1166 | vertex 63.786 8.532 0 1167 | vertex 65.464 9.077 0 1168 | vertex 65.464 9.077 4 1169 | endloop 1170 | endfacet 1171 | facet normal 0.308907 -0.951092 0 1172 | outer loop 1173 | vertex 63.786 8.532 4 1174 | vertex 63.786 8.532 0 1175 | vertex 65.464 9.077 4 1176 | endloop 1177 | endfacet 1178 | facet normal -0.809226 -0.587497 0 1179 | outer loop 1180 | vertex 66.5 7.65 0 1181 | vertex 66.5 7.65 4 1182 | vertex 65.464 9.077 0 1183 | endloop 1184 | endfacet 1185 | facet normal -0.809226 -0.587497 0 1186 | outer loop 1187 | vertex 65.464 9.077 0 1188 | vertex 66.5 7.65 4 1189 | vertex 65.464 9.077 4 1190 | endloop 1191 | endfacet 1192 | facet normal -0.809226 0.587497 0 1193 | outer loop 1194 | vertex 65.464 6.223 4 1195 | vertex 66.5 7.65 4 1196 | vertex 65.464 6.223 0 1197 | endloop 1198 | endfacet 1199 | facet normal -0.809226 0.587497 0 1200 | outer loop 1201 | vertex 65.464 6.223 0 1202 | vertex 66.5 7.65 4 1203 | vertex 66.5 7.65 0 1204 | endloop 1205 | endfacet 1206 | endsolid OpenSCAD_Model 1207 | -------------------------------------------------------------------------------- /3d_print/sumobot/top-pinoccio.stl: -------------------------------------------------------------------------------- 1 | solid OpenSCAD_Model 2 | facet normal 0 -1 0 3 | outer loop 4 | vertex 0 0 4 5 | vertex 0 0 0 6 | vertex 5 0 0 7 | endloop 8 | endfacet 9 | facet normal 0 -1 0 10 | outer loop 11 | vertex 5 0 4 12 | vertex 0 0 4 13 | vertex 5 0 0 14 | endloop 15 | endfacet 16 | facet normal 0 0 -1 17 | outer loop 18 | vertex 0 0 0 19 | vertex 0 63.5 0 20 | vertex 5 0 0 21 | endloop 22 | endfacet 23 | facet normal 0 0 -1 24 | outer loop 25 | vertex 5 0 0 26 | vertex 0 63.5 0 27 | vertex 5 63.5 0 28 | endloop 29 | endfacet 30 | facet normal 0 0 -1 31 | outer loop 32 | vertex 5 63.5 0 33 | vertex 5 67.5 0 34 | vertex 15 67.5 0 35 | endloop 36 | endfacet 37 | facet normal 0 0 -1 38 | outer loop 39 | vertex 5 63.5 0 40 | vertex 15 67.5 0 41 | vertex 5 0 0 42 | endloop 43 | endfacet 44 | facet normal 0 0 -1 45 | outer loop 46 | vertex 5 0 0 47 | vertex 15 67.5 0 48 | vertex 15 63.5 0 49 | endloop 50 | endfacet 51 | facet normal 0 0 -1 52 | outer loop 53 | vertex 5 0 0 54 | vertex 15 63.5 0 55 | vertex 65.5 63.5 0 56 | endloop 57 | endfacet 58 | facet normal 0 0 -1 59 | outer loop 60 | vertex 65.5 63.5 0 61 | vertex 65.5 67.5 0 62 | vertex 75.5 67.5 0 63 | endloop 64 | endfacet 65 | facet normal 0 0 -1 66 | outer loop 67 | vertex 65.5 63.5 0 68 | vertex 75.5 67.5 0 69 | vertex 5 0 0 70 | endloop 71 | endfacet 72 | facet normal 0 0 -1 73 | outer loop 74 | vertex 5 0 0 75 | vertex 75.5 67.5 0 76 | vertex 75.5 63.5 0 77 | endloop 78 | endfacet 79 | facet normal 0 0 -1 80 | outer loop 81 | vertex 5 0 0 82 | vertex 75.5 63.5 0 83 | vertex 80.5 63.5 0 84 | endloop 85 | endfacet 86 | facet normal 0 0 -1 87 | outer loop 88 | vertex 75.5 0 0 89 | vertex 80.5 63.5 0 90 | vertex 80.5 0 0 91 | endloop 92 | endfacet 93 | facet normal 0 0 -1 94 | outer loop 95 | vertex 5 0 0 96 | vertex 80.5 63.5 0 97 | vertex 15 0 0 98 | endloop 99 | endfacet 100 | facet normal 0 0 -1 101 | outer loop 102 | vertex 65.5 0 0 103 | vertex 75.5 -4 0 104 | vertex 65.5 -4 0 105 | endloop 106 | endfacet 107 | facet normal 0 0 -1 108 | outer loop 109 | vertex 75.5 0 0 110 | vertex 75.5 -4 0 111 | vertex 65.5 0 0 112 | endloop 113 | endfacet 114 | facet normal 0 0 -1 115 | outer loop 116 | vertex 75.5 0 0 117 | vertex 65.5 0 0 118 | vertex 80.5 63.5 0 119 | endloop 120 | endfacet 121 | facet normal 0 0 -1 122 | outer loop 123 | vertex 15 -4 0 124 | vertex 5 0 0 125 | vertex 15 0 0 126 | endloop 127 | endfacet 128 | facet normal 0 0 -1 129 | outer loop 130 | vertex 65.5 0 0 131 | vertex 15 0 0 132 | vertex 80.5 63.5 0 133 | endloop 134 | endfacet 135 | facet normal 0 0 -1 136 | outer loop 137 | vertex 5 0 0 138 | vertex 15 -4 0 139 | vertex 5 -4 0 140 | endloop 141 | endfacet 142 | facet normal -1 0 0 143 | outer loop 144 | vertex 0 0 0 145 | vertex 0 0 4 146 | vertex 0 63.5 0 147 | endloop 148 | endfacet 149 | facet normal -1 0 0 150 | outer loop 151 | vertex 0 63.5 0 152 | vertex 0 0 4 153 | vertex 0 63.5 4 154 | endloop 155 | endfacet 156 | facet normal 0 0 1 157 | outer loop 158 | vertex 69.25 16.5 4 159 | vertex 75.5 -4 4 160 | vertex 75.5 0 4 161 | endloop 162 | endfacet 163 | facet normal 0 0 1 164 | outer loop 165 | vertex 0 63.5 4 166 | vertex 0 0 4 167 | vertex 5 0 4 168 | endloop 169 | endfacet 170 | facet normal 0 0 1 171 | outer loop 172 | vertex 15 -4 4 173 | vertex 0 63.5 4 174 | vertex 5 0 4 175 | endloop 176 | endfacet 177 | facet normal 0 0 1 178 | outer loop 179 | vertex 5 -4 4 180 | vertex 15 -4 4 181 | vertex 5 0 4 182 | endloop 183 | endfacet 184 | facet normal 0 0 1 185 | outer loop 186 | vertex 15 -4 4 187 | vertex 15 0 4 188 | vertex 0 63.5 4 189 | endloop 190 | endfacet 191 | facet normal 0 0 1 192 | outer loop 193 | vertex 21.75 47 4 194 | vertex 69.25 47 4 195 | vertex 15 63.5 4 196 | endloop 197 | endfacet 198 | facet normal 0 0 1 199 | outer loop 200 | vertex 65.5 -4 4 201 | vertex 75.5 -4 4 202 | vertex 65.5 0 4 203 | endloop 204 | endfacet 205 | facet normal 0 0 1 206 | outer loop 207 | vertex 21.75 47 4 208 | vertex 15 63.5 4 209 | vertex 5 63.5 4 210 | endloop 211 | endfacet 212 | facet normal 0 0 1 213 | outer loop 214 | vertex 15 63.5 4 215 | vertex 15 67.5 4 216 | vertex 5 63.5 4 217 | endloop 218 | endfacet 219 | facet normal 0 0 1 220 | outer loop 221 | vertex 80.5 0 4 222 | vertex 75.5 63.5 4 223 | vertex 65.5 63.5 4 224 | endloop 225 | endfacet 226 | facet normal 0 0 1 227 | outer loop 228 | vertex 80.5 0 4 229 | vertex 80.5 63.5 4 230 | vertex 75.5 63.5 4 231 | endloop 232 | endfacet 233 | facet normal 0 0 1 234 | outer loop 235 | vertex 69.25 47 4 236 | vertex 65.5 63.5 4 237 | vertex 15 63.5 4 238 | endloop 239 | endfacet 240 | facet normal 0 0 1 241 | outer loop 242 | vertex 75.5 63.5 4 243 | vertex 75.5 67.5 4 244 | vertex 65.5 63.5 4 245 | endloop 246 | endfacet 247 | facet normal 0 0 1 248 | outer loop 249 | vertex 21.75 47 4 250 | vertex 5 63.5 4 251 | vertex 0 63.5 4 252 | endloop 253 | endfacet 254 | facet normal 0 0 1 255 | outer loop 256 | vertex 15 0 4 257 | vertex 11.25 26.25 4 258 | vertex 0 63.5 4 259 | endloop 260 | endfacet 261 | facet normal 0 0 1 262 | outer loop 263 | vertex 11.25 26.25 4 264 | vertex 11.25 37.25 4 265 | vertex 0 63.5 4 266 | endloop 267 | endfacet 268 | facet normal 0 0 1 269 | outer loop 270 | vertex 69.25 16.5 4 271 | vertex 75.5 0 4 272 | vertex 80.5 0 4 273 | endloop 274 | endfacet 275 | facet normal 0 0 1 276 | outer loop 277 | vertex 80.5 0 4 278 | vertex 65.5 63.5 4 279 | vertex 69.25 47 4 280 | endloop 281 | endfacet 282 | facet normal 0 0 1 283 | outer loop 284 | vertex 80.5 0 4 285 | vertex 69.25 47 4 286 | vertex 69.25 16.5 4 287 | endloop 288 | endfacet 289 | facet normal 0 0 1 290 | outer loop 291 | vertex 15 0 4 292 | vertex 21.75 16.5 4 293 | vertex 11.25 26.25 4 294 | endloop 295 | endfacet 296 | facet normal 0 0 1 297 | outer loop 298 | vertex 15 0 4 299 | vertex 65.5 0 4 300 | vertex 21.75 16.5 4 301 | endloop 302 | endfacet 303 | facet normal 0 0 1 304 | outer loop 305 | vertex 5 67.5 4 306 | vertex 5 63.5 4 307 | vertex 15 67.5 4 308 | endloop 309 | endfacet 310 | facet normal 0 0 1 311 | outer loop 312 | vertex 65.5 67.5 4 313 | vertex 65.5 63.5 4 314 | vertex 75.5 67.5 4 315 | endloop 316 | endfacet 317 | facet normal 0 0 1 318 | outer loop 319 | vertex 11.25 37.25 4 320 | vertex 21.75 47 4 321 | vertex 0 63.5 4 322 | endloop 323 | endfacet 324 | facet normal 0 0 1 325 | outer loop 326 | vertex 69.25 16.5 4 327 | vertex 65.5 0 4 328 | vertex 75.5 -4 4 329 | endloop 330 | endfacet 331 | facet normal 0 0 1 332 | outer loop 333 | vertex 69.25 16.5 4 334 | vertex 21.75 16.5 4 335 | vertex 65.5 0 4 336 | endloop 337 | endfacet 338 | facet normal -1 0 0 339 | outer loop 340 | vertex 5 -4 0 341 | vertex 5 -4 4 342 | vertex 5 0 0 343 | endloop 344 | endfacet 345 | facet normal -1 0 0 346 | outer loop 347 | vertex 5 0 0 348 | vertex 5 -4 4 349 | vertex 5 0 4 350 | endloop 351 | endfacet 352 | facet normal 0 -1 0 353 | outer loop 354 | vertex 5 -4 4 355 | vertex 5 -4 0 356 | vertex 15 -4 0 357 | endloop 358 | endfacet 359 | facet normal 0 -1 0 360 | outer loop 361 | vertex 15 -4 4 362 | vertex 5 -4 4 363 | vertex 15 -4 0 364 | endloop 365 | endfacet 366 | facet normal 1 0 0 367 | outer loop 368 | vertex 15 -4 4 369 | vertex 15 -4 0 370 | vertex 15 0 0 371 | endloop 372 | endfacet 373 | facet normal 1 0 0 374 | outer loop 375 | vertex 15 0 4 376 | vertex 15 -4 4 377 | vertex 15 0 0 378 | endloop 379 | endfacet 380 | facet normal 0 -1 0 381 | outer loop 382 | vertex 15 0 4 383 | vertex 15 0 0 384 | vertex 65.5 0 0 385 | endloop 386 | endfacet 387 | facet normal 0 -1 0 388 | outer loop 389 | vertex 65.5 0 4 390 | vertex 15 0 4 391 | vertex 65.5 0 0 392 | endloop 393 | endfacet 394 | facet normal -1 0 0 395 | outer loop 396 | vertex 65.5 -4 0 397 | vertex 65.5 -4 4 398 | vertex 65.5 0 0 399 | endloop 400 | endfacet 401 | facet normal -1 0 0 402 | outer loop 403 | vertex 65.5 0 0 404 | vertex 65.5 -4 4 405 | vertex 65.5 0 4 406 | endloop 407 | endfacet 408 | facet normal 0 -1 0 409 | outer loop 410 | vertex 65.5 -4 4 411 | vertex 65.5 -4 0 412 | vertex 75.5 -4 0 413 | endloop 414 | endfacet 415 | facet normal 0 -1 0 416 | outer loop 417 | vertex 75.5 -4 4 418 | vertex 65.5 -4 4 419 | vertex 75.5 -4 0 420 | endloop 421 | endfacet 422 | facet normal 1 0 0 423 | outer loop 424 | vertex 75.5 -4 4 425 | vertex 75.5 -4 0 426 | vertex 75.5 0 0 427 | endloop 428 | endfacet 429 | facet normal 1 0 0 430 | outer loop 431 | vertex 75.5 0 4 432 | vertex 75.5 -4 4 433 | vertex 75.5 0 0 434 | endloop 435 | endfacet 436 | facet normal 0 -1 0 437 | outer loop 438 | vertex 75.5 0 4 439 | vertex 75.5 0 0 440 | vertex 80.5 0 0 441 | endloop 442 | endfacet 443 | facet normal 0 -1 0 444 | outer loop 445 | vertex 80.5 0 4 446 | vertex 75.5 0 4 447 | vertex 80.5 0 0 448 | endloop 449 | endfacet 450 | facet normal 1 0 0 451 | outer loop 452 | vertex 80.5 0 4 453 | vertex 80.5 0 0 454 | vertex 80.5 63.5 0 455 | endloop 456 | endfacet 457 | facet normal 1 0 0 458 | outer loop 459 | vertex 80.5 63.5 4 460 | vertex 80.5 0 4 461 | vertex 80.5 63.5 0 462 | endloop 463 | endfacet 464 | facet normal 0 1 0 465 | outer loop 466 | vertex 75.5 63.5 0 467 | vertex 75.5 63.5 4 468 | vertex 80.5 63.5 0 469 | endloop 470 | endfacet 471 | facet normal 0 1 0 472 | outer loop 473 | vertex 80.5 63.5 0 474 | vertex 75.5 63.5 4 475 | vertex 80.5 63.5 4 476 | endloop 477 | endfacet 478 | facet normal 1 0 0 479 | outer loop 480 | vertex 75.5 63.5 4 481 | vertex 75.5 63.5 0 482 | vertex 75.5 67.5 0 483 | endloop 484 | endfacet 485 | facet normal 1 0 0 486 | outer loop 487 | vertex 75.5 67.5 4 488 | vertex 75.5 63.5 4 489 | vertex 75.5 67.5 0 490 | endloop 491 | endfacet 492 | facet normal 0 1 0 493 | outer loop 494 | vertex 65.5 67.5 0 495 | vertex 65.5 67.5 4 496 | vertex 75.5 67.5 0 497 | endloop 498 | endfacet 499 | facet normal 0 1 0 500 | outer loop 501 | vertex 75.5 67.5 0 502 | vertex 65.5 67.5 4 503 | vertex 75.5 67.5 4 504 | endloop 505 | endfacet 506 | facet normal -1 0 0 507 | outer loop 508 | vertex 65.5 63.5 0 509 | vertex 65.5 63.5 4 510 | vertex 65.5 67.5 0 511 | endloop 512 | endfacet 513 | facet normal -1 0 0 514 | outer loop 515 | vertex 65.5 67.5 0 516 | vertex 65.5 63.5 4 517 | vertex 65.5 67.5 4 518 | endloop 519 | endfacet 520 | facet normal 0 1 0 521 | outer loop 522 | vertex 15 63.5 0 523 | vertex 15 63.5 4 524 | vertex 65.5 63.5 0 525 | endloop 526 | endfacet 527 | facet normal 0 1 0 528 | outer loop 529 | vertex 65.5 63.5 0 530 | vertex 15 63.5 4 531 | vertex 65.5 63.5 4 532 | endloop 533 | endfacet 534 | facet normal 1 0 0 535 | outer loop 536 | vertex 15 63.5 4 537 | vertex 15 63.5 0 538 | vertex 15 67.5 0 539 | endloop 540 | endfacet 541 | facet normal 1 0 0 542 | outer loop 543 | vertex 15 67.5 4 544 | vertex 15 63.5 4 545 | vertex 15 67.5 0 546 | endloop 547 | endfacet 548 | facet normal 0 1 0 549 | outer loop 550 | vertex 5 67.5 0 551 | vertex 5 67.5 4 552 | vertex 15 67.5 0 553 | endloop 554 | endfacet 555 | facet normal 0 1 0 556 | outer loop 557 | vertex 15 67.5 0 558 | vertex 5 67.5 4 559 | vertex 15 67.5 4 560 | endloop 561 | endfacet 562 | facet normal -1 0 0 563 | outer loop 564 | vertex 5 63.5 0 565 | vertex 5 63.5 4 566 | vertex 5 67.5 0 567 | endloop 568 | endfacet 569 | facet normal -1 0 0 570 | outer loop 571 | vertex 5 67.5 0 572 | vertex 5 63.5 4 573 | vertex 5 67.5 4 574 | endloop 575 | endfacet 576 | facet normal 0 1 0 577 | outer loop 578 | vertex 0 63.5 0 579 | vertex 0 63.5 4 580 | vertex 5 63.5 0 581 | endloop 582 | endfacet 583 | facet normal 0 1 0 584 | outer loop 585 | vertex 5 63.5 0 586 | vertex 0 63.5 4 587 | vertex 5 63.5 4 588 | endloop 589 | endfacet 590 | facet normal -1 0 0 591 | outer loop 592 | vertex 11.25 26.25 4 593 | vertex 11.25 26.25 15 594 | vertex 11.25 37.25 4 595 | endloop 596 | endfacet 597 | facet normal -1 0 0 598 | outer loop 599 | vertex 11.25 37.25 4 600 | vertex 11.25 26.25 15 601 | vertex 11.25 37.25 15 602 | endloop 603 | endfacet 604 | facet normal -0.680451 -0.732793 0 605 | outer loop 606 | vertex 11.25 26.25 15 607 | vertex 11.25 26.25 4 608 | vertex 21.75 16.5 4 609 | endloop 610 | endfacet 611 | facet normal -0.680451 -0.732793 0 612 | outer loop 613 | vertex 21.75 16.5 15 614 | vertex 11.25 26.25 15 615 | vertex 21.75 16.5 4 616 | endloop 617 | endfacet 618 | facet normal 0 -1 0 619 | outer loop 620 | vertex 21.75 16.5 15 621 | vertex 21.75 16.5 4 622 | vertex 69.25 16.5 4 623 | endloop 624 | endfacet 625 | facet normal 0 -1 0 626 | outer loop 627 | vertex 69.25 16.5 15 628 | vertex 21.75 16.5 15 629 | vertex 69.25 16.5 4 630 | endloop 631 | endfacet 632 | facet normal 1 0 0 633 | outer loop 634 | vertex 69.25 16.5 15 635 | vertex 69.25 16.5 4 636 | vertex 69.25 47 4 637 | endloop 638 | endfacet 639 | facet normal 1 0 0 640 | outer loop 641 | vertex 69.25 31.75 11.5 642 | vertex 69.25 16.5 15 643 | vertex 69.25 47 4 644 | endloop 645 | endfacet 646 | facet normal 1 0 0 647 | outer loop 648 | vertex 69.25 47 15 649 | vertex 69.25 35.1428 15 650 | vertex 69.25 47 4 651 | endloop 652 | endfacet 653 | facet normal 1 0 0 654 | outer loop 655 | vertex 69.25 35.1428 15 656 | vertex 69.25 34.9337 13.546 657 | vertex 69.25 47 4 658 | endloop 659 | endfacet 660 | facet normal 1 0 0 661 | outer loop 662 | vertex 69.25 34.9337 13.546 663 | vertex 69.25 33.6422 12.0556 664 | vertex 69.25 47 4 665 | endloop 666 | endfacet 667 | facet normal 1 0 0 668 | outer loop 669 | vertex 69.25 33.6422 12.0556 670 | vertex 69.25 31.75 11.5 671 | vertex 69.25 47 4 672 | endloop 673 | endfacet 674 | facet normal 1 0 0 675 | outer loop 676 | vertex 69.25 29.8578 12.0556 677 | vertex 69.25 16.5 15 678 | vertex 69.25 31.75 11.5 679 | endloop 680 | endfacet 681 | facet normal 1 0 0 682 | outer loop 683 | vertex 69.25 28.5663 13.546 684 | vertex 69.25 28.3572 15 685 | vertex 69.25 16.5 15 686 | endloop 687 | endfacet 688 | facet normal 1 0 0 689 | outer loop 690 | vertex 69.25 29.8578 12.0556 691 | vertex 69.25 28.5663 13.546 692 | vertex 69.25 16.5 15 693 | endloop 694 | endfacet 695 | facet normal 0 1 0 696 | outer loop 697 | vertex 21.75 47 4 698 | vertex 21.75 47 15 699 | vertex 69.25 47 4 700 | endloop 701 | endfacet 702 | facet normal 0 1 0 703 | outer loop 704 | vertex 69.25 47 4 705 | vertex 21.75 47 15 706 | vertex 69.25 47 15 707 | endloop 708 | endfacet 709 | facet normal -0.680451 0.732793 0 710 | outer loop 711 | vertex 11.25 37.25 4 712 | vertex 11.25 37.25 15 713 | vertex 21.75 47 4 714 | endloop 715 | endfacet 716 | facet normal -0.680451 0.732793 0 717 | outer loop 718 | vertex 21.75 47 4 719 | vertex 11.25 37.25 15 720 | vertex 21.75 47 15 721 | endloop 722 | endfacet 723 | facet normal 0 0 1 724 | outer loop 725 | vertex 13.25 26.25 15 726 | vertex 11.25 26.25 15 727 | vertex 21.75 16.5 15 728 | endloop 729 | endfacet 730 | facet normal 0 0 1 731 | outer loop 732 | vertex 21.75 18.5 15 733 | vertex 13.25 26.25 15 734 | vertex 21.75 16.5 15 735 | endloop 736 | endfacet 737 | facet normal 0 0 1 738 | outer loop 739 | vertex 69.25 28.3572 15 740 | vertex 67.25 28.3572 15 741 | vertex 69.25 16.5 15 742 | endloop 743 | endfacet 744 | facet normal 0 0 1 745 | outer loop 746 | vertex 67.25 35.1428 15 747 | vertex 69.25 35.1428 15 748 | vertex 67.25 45 15 749 | endloop 750 | endfacet 751 | facet normal 0 0 1 752 | outer loop 753 | vertex 67.25 28.3572 15 754 | vertex 67.25 18.5 15 755 | vertex 69.25 16.5 15 756 | endloop 757 | endfacet 758 | facet normal 0 0 1 759 | outer loop 760 | vertex 69.25 16.5 15 761 | vertex 21.75 18.5 15 762 | vertex 21.75 16.5 15 763 | endloop 764 | endfacet 765 | facet normal 0 0 1 766 | outer loop 767 | vertex 11.25 37.25 15 768 | vertex 11.25 26.25 15 769 | vertex 13.25 26.25 15 770 | endloop 771 | endfacet 772 | facet normal 0 0 1 773 | outer loop 774 | vertex 21.75 45 15 775 | vertex 11.25 37.25 15 776 | vertex 13.25 37.25 15 777 | endloop 778 | endfacet 779 | facet normal 0 0 1 780 | outer loop 781 | vertex 21.75 47 15 782 | vertex 11.25 37.25 15 783 | vertex 21.75 45 15 784 | endloop 785 | endfacet 786 | facet normal 0 0 1 787 | outer loop 788 | vertex 69.25 47 15 789 | vertex 21.75 45 15 790 | vertex 67.25 45 15 791 | endloop 792 | endfacet 793 | facet normal 0 0 1 794 | outer loop 795 | vertex 69.25 47 15 796 | vertex 67.25 45 15 797 | vertex 69.25 35.1428 15 798 | endloop 799 | endfacet 800 | facet normal 0 0 1 801 | outer loop 802 | vertex 21.75 47 15 803 | vertex 21.75 45 15 804 | vertex 69.25 47 15 805 | endloop 806 | endfacet 807 | facet normal 0 0 1 808 | outer loop 809 | vertex 67.25 18.5 15 810 | vertex 21.75 18.5 15 811 | vertex 69.25 16.5 15 812 | endloop 813 | endfacet 814 | facet normal 0 0 1 815 | outer loop 816 | vertex 13.25 26.25 15 817 | vertex 13.25 37.25 15 818 | vertex 11.25 37.25 15 819 | endloop 820 | endfacet 821 | facet normal -3.16002e-17 0.989821 0.142315 822 | outer loop 823 | vertex 69.25 28.5663 13.546 824 | vertex 67.25 28.5663 13.546 825 | vertex 69.25 28.3572 15 826 | endloop 827 | endfacet 828 | facet normal -3.16002e-17 0.989821 0.142315 829 | outer loop 830 | vertex 69.25 28.3572 15 831 | vertex 67.25 28.5663 13.546 832 | vertex 67.25 28.3572 15 833 | endloop 834 | endfacet 835 | facet normal -1.45408e-16 0.755749 0.654861 836 | outer loop 837 | vertex 69.25 29.8578 12.0556 838 | vertex 67.25 29.8578 12.0556 839 | vertex 69.25 28.5663 13.546 840 | endloop 841 | endfacet 842 | facet normal -1.45408e-16 0.755749 0.654861 843 | outer loop 844 | vertex 69.25 28.5663 13.546 845 | vertex 67.25 29.8578 12.0556 846 | vertex 67.25 28.5663 13.546 847 | endloop 848 | endfacet 849 | facet normal -2.1305e-16 0.281733 0.959493 850 | outer loop 851 | vertex 69.25 29.8578 12.0556 852 | vertex 69.25 31.75 11.5 853 | vertex 67.25 31.75 11.5 854 | endloop 855 | endfacet 856 | facet normal -2.1305e-16 0.281733 0.959493 857 | outer loop 858 | vertex 67.25 29.8578 12.0556 859 | vertex 69.25 29.8578 12.0556 860 | vertex 67.25 31.75 11.5 861 | endloop 862 | endfacet 863 | facet normal -2.1305e-16 -0.281733 0.959493 864 | outer loop 865 | vertex 69.25 31.75 11.5 866 | vertex 69.25 33.6422 12.0556 867 | vertex 67.25 33.6422 12.0556 868 | endloop 869 | endfacet 870 | facet normal -2.1305e-16 -0.281733 0.959493 871 | outer loop 872 | vertex 67.25 31.75 11.5 873 | vertex 69.25 31.75 11.5 874 | vertex 67.25 33.6422 12.0556 875 | endloop 876 | endfacet 877 | facet normal -1.45408e-16 -0.755749 0.654861 878 | outer loop 879 | vertex 69.25 33.6422 12.0556 880 | vertex 69.25 34.9337 13.546 881 | vertex 67.25 34.9337 13.546 882 | endloop 883 | endfacet 884 | facet normal -1.45408e-16 -0.755749 0.654861 885 | outer loop 886 | vertex 67.25 33.6422 12.0556 887 | vertex 69.25 33.6422 12.0556 888 | vertex 67.25 34.9337 13.546 889 | endloop 890 | endfacet 891 | facet normal -3.16002e-17 -0.989821 0.142315 892 | outer loop 893 | vertex 69.25 34.9337 13.546 894 | vertex 69.25 35.1428 15 895 | vertex 67.25 35.1428 15 896 | endloop 897 | endfacet 898 | facet normal -3.16002e-17 -0.989821 0.142315 899 | outer loop 900 | vertex 67.25 34.9337 13.546 901 | vertex 69.25 34.9337 13.546 902 | vertex 67.25 35.1428 15 903 | endloop 904 | endfacet 905 | facet normal -1 0 0 906 | outer loop 907 | vertex 67.25 28.3572 15 908 | vertex 67.25 28.5663 13.546 909 | vertex 67.25 18.5 15 910 | endloop 911 | endfacet 912 | facet normal -1 0 0 913 | outer loop 914 | vertex 67.25 18.5 15 915 | vertex 67.25 28.5663 13.546 916 | vertex 67.25 29.8578 12.0556 917 | endloop 918 | endfacet 919 | facet normal -1 0 0 920 | outer loop 921 | vertex 67.25 29.8578 12.0556 922 | vertex 67.25 31.75 11.5 923 | vertex 67.25 18.5 15 924 | endloop 925 | endfacet 926 | facet normal -1 0 0 927 | outer loop 928 | vertex 67.25 33.6422 12.0556 929 | vertex 67.25 45 15 930 | vertex 67.25 31.75 11.5 931 | endloop 932 | endfacet 933 | facet normal -1 0 0 934 | outer loop 935 | vertex 67.25 34.9337 13.546 936 | vertex 67.25 35.1428 15 937 | vertex 67.25 45 15 938 | endloop 939 | endfacet 940 | facet normal -1 0 0 941 | outer loop 942 | vertex 67.25 34.9337 13.546 943 | vertex 67.25 45 15 944 | vertex 67.25 33.6422 12.0556 945 | endloop 946 | endfacet 947 | facet normal -1 0 0 948 | outer loop 949 | vertex 67.25 31.75 11.5 950 | vertex 67.25 45 15 951 | vertex 67.25 45 4 952 | endloop 953 | endfacet 954 | facet normal -1 0 0 955 | outer loop 956 | vertex 67.25 31.75 11.5 957 | vertex 67.25 45 4 958 | vertex 67.25 18.5 15 959 | endloop 960 | endfacet 961 | facet normal -1 0 0 962 | outer loop 963 | vertex 67.25 18.5 15 964 | vertex 67.25 45 4 965 | vertex 67.25 18.5 4 966 | endloop 967 | endfacet 968 | facet normal 0 -1 0 969 | outer loop 970 | vertex 67.25 45 4 971 | vertex 67.25 45 15 972 | vertex 21.75 45 15 973 | endloop 974 | endfacet 975 | facet normal 0 -1 0 976 | outer loop 977 | vertex 21.75 45 4 978 | vertex 67.25 45 4 979 | vertex 21.75 45 15 980 | endloop 981 | endfacet 982 | facet normal 0.673754 -0.738956 0 983 | outer loop 984 | vertex 21.75 45 4 985 | vertex 21.75 45 15 986 | vertex 13.25 37.25 15 987 | endloop 988 | endfacet 989 | facet normal 0.673754 -0.738956 0 990 | outer loop 991 | vertex 13.25 37.25 4 992 | vertex 21.75 45 4 993 | vertex 13.25 37.25 15 994 | endloop 995 | endfacet 996 | facet normal 1 0 0 997 | outer loop 998 | vertex 13.25 37.25 4 999 | vertex 13.25 37.25 15 1000 | vertex 13.25 26.25 15 1001 | endloop 1002 | endfacet 1003 | facet normal 1 0 0 1004 | outer loop 1005 | vertex 13.25 26.25 4 1006 | vertex 13.25 37.25 4 1007 | vertex 13.25 26.25 15 1008 | endloop 1009 | endfacet 1010 | facet normal 0.673754 0.738956 0 1011 | outer loop 1012 | vertex 21.75 18.5 15 1013 | vertex 21.75 18.5 4 1014 | vertex 13.25 26.25 15 1015 | endloop 1016 | endfacet 1017 | facet normal 0.673754 0.738956 0 1018 | outer loop 1019 | vertex 13.25 26.25 15 1020 | vertex 21.75 18.5 4 1021 | vertex 13.25 26.25 4 1022 | endloop 1023 | endfacet 1024 | facet normal 0 1 0 1025 | outer loop 1026 | vertex 67.25 18.5 15 1027 | vertex 67.25 18.5 4 1028 | vertex 21.75 18.5 15 1029 | endloop 1030 | endfacet 1031 | facet normal 0 1 0 1032 | outer loop 1033 | vertex 21.75 18.5 15 1034 | vertex 67.25 18.5 4 1035 | vertex 21.75 18.5 4 1036 | endloop 1037 | endfacet 1038 | facet normal 0 0 1 1039 | outer loop 1040 | vertex 13.25 37.25 4 1041 | vertex 13.25 26.25 4 1042 | vertex 21.75 18.5 4 1043 | endloop 1044 | endfacet 1045 | facet normal 0 0 1 1046 | outer loop 1047 | vertex 67.25 45 4 1048 | vertex 13.25 37.25 4 1049 | vertex 67.25 18.5 4 1050 | endloop 1051 | endfacet 1052 | facet normal 0 0 1 1053 | outer loop 1054 | vertex 67.25 18.5 4 1055 | vertex 13.25 37.25 4 1056 | vertex 21.75 18.5 4 1057 | endloop 1058 | endfacet 1059 | facet normal 0 0 1 1060 | outer loop 1061 | vertex 21.75 45 4 1062 | vertex 13.25 37.25 4 1063 | vertex 67.25 45 4 1064 | endloop 1065 | endfacet 1066 | endsolid OpenSCAD_Model 1067 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Sumobot Jr. 2 | 3 | Sumobot Jr. is an open source sumobot design made for [Nodebots Day](http://nodebotsday.com). Most existing sumo kits cost between $99 and $160. Since we're trying to keep our event costs down, I decided to try to design a bot that could be put together for around $50 including the cost of the Arduino. The name and design are inspired by the simplicity and zip-tied wooden beauty of the [Printrbot Jr](http://printrbot.com/). 4 | 5 | 6 | 7 | ## How ? 8 | 9 | If you're planning on laser cutting the bots, you should use the OpenSCAD source file to generate a cutting plan for your specific type of laser cutter and material thickness. There's a wiki article for that! 10 | 11 | [Laser Cutting with the OpenSCAD file](https://github.com/makenai/sumobot-jr/wiki/Working-with-the-OpenSCAD-file) 12 | 13 | If you want to jump right into it, you can watch this instructional video, but note that you may not want to clip the wires if you plan to reuse the servos for something else: 14 | 15 | [Sumobot Jr Assembly video for Nodebots Day 7/27](http://www.youtube.com/watch?v=0Q3hrKUwxDM) 16 | 17 | [Customizing Sumobot Jr with Suziam and cats](http://www.youtube.com/watch?v=BB0vihv9ylM) 18 | 19 | [IKEA-style Assembly Instruction Card](http://makenai.github.io/sumobot-jr/sumobot-instructions.pdf) 20 | 21 | [Microsoft's version for Build 2015 on Raspberry Pi + Windows 10](https://www.youtube.com/watch?v=aKCieb-Gf2g) 22 | 23 | [Katie K's No Solder Guide](http://katiek2.github.io/sumobot-nosolder/) 24 | 25 | [Frank Hunleth's Arduino Mini Shield](https://oshpark.com/shared_projects/TEsKZkdg) 26 | 27 | [Norfolk.js's Shopping List](https://github.com/norfolkjs/general-info/wiki/Norfolk.js-SumoBot-Kits) 28 | 29 | [Sidepart adaptors for MG-6-48 DC-Motors from ghtomcat](https://github.com/ghtomcat/sumobot) 30 | 31 | The main part of the design is a cutting sheet in EPS file format that is designed to be used with a laser cutter. You can find it in the cutting_plans directory. If you don't have a laser cutter, you can use a CNC, tape your printout to balsa wood and go at it with an x-acto knife, or send it to a laser cutting service like [Ponoko](https://www.ponoko.com/) and get the sheet done for about $10. 32 | 33 | There is also a directory called 3d_print that contains an STL file for a ball caster designed by [sliptonic](http://www.thingiverse.com/thing:13782) - the STL is set up for a 16mm ball bearing, but you can make one for other sizes with the included OpenSCAD file. 34 | 35 | **NEW** Microsoft has created a tutorial and version of the bot kit for [Build 2015](http://www.buildwindows.com/). You can find their version of the cutting plan for Ponoko in this repository, and also check out their [tutorial using Raspberry Pi and Windows 10](http://microsoft.hackster.io/windowsiot/robot-kit). 36 | 37 | There is a completely 3D printable version available at [Thingiverse](http://www.thingiverse.com/thing:357369) now. 38 | 39 | [](http://www.thingiverse.com/thing:357369) 40 | 41 | ## What if I don't have a Laser Cutter / 3D Printer?! 42 | 43 | Neither do I! The best way to get some help creating the parts is to look up your local [Hackerspace or Makerspace ](http://hackerspaces.org) and connect with them. I belong to a fantastic hackerspace in Las Vegas called [SYN Shop](http://synshop.org)! 44 | 45 | [](http://synshop.org) 46 | 47 | If you don't have a hackerspace nearby, you can also use a mail order service like [Ponoko](http://ponoko.com) that does both 3D printing and laser cutting. 48 | 49 | ## Other Parts Needed 50 | 51 | + [Arduino](https://www.pololu.com/product/2191) - ~$25 52 | + [4xAA battery holder](http://www.amazon.com/gp/product/B007Q2NR1O/ref=oh_aui_search_detailpage?ie=UTF8&psc=1) - $2 53 | + 2 Zip ties - ? 54 | + 5 \#4 3/8" wood screws - ? 55 | + Thick rubber bands - ? 56 | + 2 continuous servo motors like [Futaba S148](http://www.pololu.com/catalog/product/536) or the ones from [SpringRC](http://www.pololu.com/product/1248) - $24-$28 57 | + Some wire or leads 58 | + 16mm ball bearing - ? 59 | 60 | ## No-solder Wiring Diagram (thanks @katiek2) 61 | 62 | 63 | 64 | That's about it! Connect the red and black leads on the servos together, then connect them to the + and - terminals on the battery holder respectively. Then connect the black leads and - terminal to the ground of the Arduino. Finally, the white leads of each motor go to pins 9 and 10 (or whatever you like) on the Arduino - you're done! 65 | 66 | ## Sample Code 67 | 68 | To run the sample code for the Sumobot Jr., you will first need to install [Node.js](http://nodejs.org/) and [git](https://git-scm.com). 69 | 70 | Open a terminal application and clone this repository: 71 | ``` 72 | git clone https://github.com/makenai/sumobot-jr 73 | ``` 74 | 75 | Navigate to the code folder: 76 | ``` 77 | cd code_example 78 | ``` 79 | 80 | Install code dependencies: 81 | 82 | ``` 83 | npm i 84 | ``` 85 | 86 | Run the code: 87 | 88 | ``` 89 | node sumobot.js 90 | ``` 91 | 92 | ## License 93 | 94 | [Creative Commons - Attribution - ShareAlike 3.0](http://creativecommons.org/licenses/by-sa/3.0/) 95 | 96 | You are free to: 97 | 98 | + to Share — to copy, distribute and transmit the work, and 99 | + to Remix — to adapt the work 100 | + Under the following conditions: 101 | + Attribution — You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work) 102 | + Share Alike — If you alter, transform, or build upon this work, you may distribute the resulting work only under the same, similar or a compatible license. 103 | 104 | With the understanding that: 105 | 106 | + Waiver — Any of the above conditions can be waived if you get permission from the copyright holder. 107 | + Other Rights — In no way are any of the following rights affected by the license: 108 | + your fair dealing or fair use rights; 109 | + the author's moral rights; and 110 | + rights other persons may have either in the work itself or in how the work is used, such as publicity or privacy rights. 111 | 112 | ## Credits 113 | 114 | Made by 115 | 116 | 117 | 118 | Design by [@makenai](http://twitter.com/makenai) with feedback and ideas from [@noopkat](http://twitter.com/noopkat) aka (by their powers combined) Amalgamation of Cats. 119 | -------------------------------------------------------------------------------- /assets/3dprintsumo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/assets/3dprintsumo.png -------------------------------------------------------------------------------- /assets/amalgamation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/assets/amalgamation.png -------------------------------------------------------------------------------- /assets/sumobotjr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/assets/sumobotjr.png -------------------------------------------------------------------------------- /assets/synshop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/assets/synshop.png -------------------------------------------------------------------------------- /code_example/.eslintrc: -------------------------------------------------------------------------------- 1 | env: 2 | node: true 3 | browser: true 4 | 5 | ecmaFeatures: 6 | jsx: true 7 | 8 | rules: 9 | camelcase: 2 10 | eol-last: 2 11 | quotes: [2, "single", "avoid-escape"] 12 | no-mixed-spaces-and-tabs: 2 13 | no-trailing-spaces: 2 14 | no-underscore-dangle: 0 15 | no-unused-vars: [1, { "args": "none" }] 16 | -------------------------------------------------------------------------------- /code_example/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": "David Resseguie ", 3 | "name": "sumobot-jr", 4 | "version": "1.0.0", 5 | "description": "SumoBot Jr Examples", 6 | "homepage": "", 7 | "dependencies": { 8 | "bluebird": "latest", 9 | "johnny-five": "latest", 10 | "keypress": "latest", 11 | "spark-io": "latest", 12 | "temporal": "latest" 13 | }, 14 | "devDependencies": { 15 | "eslint": "latest" 16 | }, 17 | "repository": "", 18 | "engines": { 19 | "node": "0.10.31" 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /code_example/rover.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var five = require('johnny-five'); 4 | var board = new five.Board(); 5 | var keypress = require('keypress'); 6 | 7 | board.on('ready', function() { 8 | // Use your shield configuration from the list 9 | // http://johnny-five.io/api/motor/#pre-packaged-shield-configs 10 | var configs = five.Motor.SHIELD_CONFIGS.ADAFRUIT_V1; 11 | var motors = new five.Motors([ 12 | configs.M1, 13 | configs.M2 14 | ]); 15 | 16 | this.repl.inject({ 17 | motors: motors 18 | }); 19 | 20 | console.log('Welcome to the Pee Wee Runt Rover!'); 21 | console.log('Control the bot with the arrow keys, and SPACE to stop.'); 22 | 23 | function forward() { 24 | console.log('Going forward'); 25 | motors.fwd(255); 26 | } 27 | 28 | function backward() { 29 | console.log('Going backward'); 30 | motors.rev(255); 31 | } 32 | 33 | function left() { 34 | console.log('Going left'); 35 | motors[0].rev(200); 36 | motors[1].fwd(200); 37 | } 38 | 39 | function right() { 40 | console.log('Going right'); 41 | motors[1].rev(200); 42 | motors[0].fwd(200); 43 | } 44 | 45 | function stop() { 46 | motors.stop(); 47 | } 48 | 49 | keypress(process.stdin); 50 | process.stdin.resume(); 51 | process.stdin.setEncoding('utf8'); 52 | process.stdin.setRawMode(true); 53 | process.stdin.on('keypress', function (ch, key) { 54 | 55 | if ( !key ) { return; } 56 | 57 | if ( key.name === 'q' ) { 58 | 59 | console.log('Quitting'); 60 | stop(); 61 | process.exit(); 62 | 63 | } else if ( key.name === 'up' ) { 64 | 65 | forward(); 66 | 67 | } else if ( key.name === 'down' ) { 68 | 69 | backward(); 70 | 71 | } else if ( key.name === 'left' ) { 72 | 73 | left(); 74 | 75 | } else if ( key.name === 'right' ) { 76 | 77 | right(); 78 | 79 | } else if ( key.name === 'space' ) { 80 | 81 | stop(); 82 | 83 | } 84 | }); 85 | }); 86 | -------------------------------------------------------------------------------- /code_example/spark-sumo.js: -------------------------------------------------------------------------------- 1 | // ================================================ 2 | // Sumobot Jr demo program (wireless with Spark-IO) 3 | // ================================================ 4 | 5 | 'use strict'; 6 | 7 | var five = require('johnny-five'); 8 | var Spark = require('spark-io'); 9 | var keypress = require('keypress'); 10 | 11 | keypress(process.stdin); 12 | 13 | var board = new five.Board({ 14 | io: new Spark({ 15 | token: process.env.SPARK_TOKEN, 16 | deviceId: process.env.SPARK_DEVICE_ID 17 | }) 18 | }); 19 | 20 | board.on('ready', function() { 21 | 22 | console.log('Welcome to Sumobot Jr, powered wirelessly with the Spark Core!') 23 | console.log('Control the bot with the arrow keys, and SPACE to stop.') 24 | 25 | var leftWheel = new five.Servo({ pin: 'D0', type: 'continuous' }).stop(); 26 | var rightWheel = new five.Servo({ pin: 'D1', type: 'continuous' }).stop(); 27 | 28 | process.stdin.resume(); 29 | process.stdin.setEncoding('utf8'); 30 | process.stdin.setRawMode(true); 31 | 32 | process.stdin.on('keypress', function (ch, key) { 33 | 34 | if ( !key ) { return; } 35 | 36 | if ( key.name === 'q' ) { 37 | 38 | console.log('Quitting'); 39 | process.exit(); 40 | 41 | } else if ( key.name === 'up' ) { 42 | 43 | console.log('Forward'); 44 | leftWheel.ccw(0.9); 45 | rightWheel.cw(0.9); 46 | 47 | } else if ( key.name === 'down' ) { 48 | 49 | console.log('Backward'); 50 | leftWheel.cw(0.9); 51 | rightWheel.ccw(0.9); 52 | 53 | } else if ( key.name === 'left' ) { 54 | 55 | console.log('Left'); 56 | leftWheel.ccw(0.9); 57 | rightWheel.ccw(0.9); 58 | 59 | 60 | } else if ( key.name === 'right' ) { 61 | 62 | console.log('Right'); 63 | leftWheel.cw(0.9); 64 | rightWheel.cw(0.9); 65 | 66 | } else if ( key.name === 'space' ) { 67 | 68 | console.log('Stopping'); 69 | leftWheel.stop(); 70 | rightWheel.stop(); 71 | 72 | } 73 | 74 | }); 75 | 76 | }); 77 | -------------------------------------------------------------------------------- /code_example/sumobot-sync.js: -------------------------------------------------------------------------------- 1 | // ======================= 2 | // Sumobot Jr demo program 3 | // ======================= 4 | 5 | 'use strict'; 6 | 7 | var five = require('johnny-five'); 8 | var keypress = require('keypress'); 9 | 10 | keypress(process.stdin); 11 | 12 | var robot = {}; 13 | robot.delay = 0; 14 | robot.sendCmd = function(type, action, ms) { 15 | this.delay += ms; 16 | var cmd = this[type][action]; 17 | setTimeout(cmd, this.delay); 18 | return this; 19 | }; 20 | robot.done = function() { 21 | setTimeout(function() { 22 | console.log('finished!'); 23 | }, this.delay); 24 | this.delay = 0; 25 | }; 26 | 27 | var board = new five.Board(); 28 | 29 | board.on('ready', function() { 30 | 31 | console.log('Welcome to Sumobot Jr!'); 32 | console.log('Control the bot with the arrow keys, and SPACE to stop.'); 33 | 34 | robot.leftWheel = new five.Servo({ pin: 9, type: 'continuous' }).stop(); 35 | robot.rightWheel = new five.Servo({ pin: 10, type: 'continuous' }).stop(); 36 | 37 | robot.move = {}; 38 | robot.move.forward = function() { 39 | console.log('moving forward...'); 40 | robot.leftWheel.ccw(); 41 | robot.rightWheel.cw(); 42 | }; 43 | robot.move.backward = function() { 44 | console.log('moving backward...'); 45 | robot.leftWheel.cw(); 46 | robot.rightWheel.ccw(); 47 | }; 48 | robot.move.left = function() { 49 | console.log('turning left...'); 50 | robot.leftWheel.ccw(); 51 | robot.rightWheel.ccw(); 52 | }; 53 | robot.move.right = function() { 54 | console.log('turning right...'); 55 | robot.leftWheel.cw(); 56 | robot.rightWheel.cw(); 57 | }; 58 | robot.move.stop = function() { 59 | console.log('stopping...'); 60 | robot.leftWheel.stop(); 61 | robot.rightWheel.stop(); 62 | }; 63 | 64 | process.stdin.resume(); 65 | process.stdin.setEncoding('utf8'); 66 | process.stdin.setRawMode(true); 67 | 68 | process.stdin.on('keypress', function (ch, key) { 69 | 70 | if ( !key ) { return; } 71 | 72 | switch (key.name) { 73 | case 'q': 74 | console.log('quitting!'); 75 | process.exit(); 76 | break; 77 | case 'up': 78 | console.log('moving forward...'); 79 | robot.move.forward(); 80 | break; 81 | case 'down': 82 | console.log('moving backward...'); 83 | robot.move.backward(); 84 | break; 85 | case 'left': 86 | console.log('turning left...'); 87 | robot.move.left(); 88 | break; 89 | case 'right': 90 | console.log('moving backward...'); 91 | robot.move.right(); 92 | break; 93 | case 'space': 94 | console.log('stopping...'); 95 | robot.move.stop(); 96 | break; 97 | case 'u': 98 | console.log('custom choreography...'); 99 | 100 | // queue up the commands for our robot! 101 | robot.sendCmd('move', 'forward', 0) 102 | .sendCmd('move', 'backward', 300) 103 | .sendCmd('move', 'forward', 300) 104 | .sendCmd('move', 'stop', 300) 105 | .done(); 106 | break; 107 | } 108 | 109 | }); 110 | 111 | 112 | }); 113 | -------------------------------------------------------------------------------- /code_example/sumobot.js: -------------------------------------------------------------------------------- 1 | // ======================= 2 | // Sumobot Jr demo program 3 | // ======================= 4 | 5 | 'use strict'; 6 | 7 | var five = require('johnny-five'); 8 | var keypress = require('keypress'); 9 | 10 | 11 | var board = new five.Board(); 12 | 13 | board.on('ready', function() { 14 | 15 | console.log('Welcome to Sumobot Jr!'); 16 | console.log('Control the bot with the arrow keys, and SPACE to stop.'); 17 | 18 | var leftWheel = new five.Servo({ pin: 9, type: 'continuous' }).stop(); 19 | var rightWheel = new five.Servo({ pin: 10, type: 'continuous' }).stop(); 20 | 21 | 22 | keypress(process.stdin); 23 | process.stdin.resume(); 24 | process.stdin.setEncoding('utf8'); 25 | process.stdin.setRawMode(true); 26 | process.stdin.on('keypress', function (ch, key) { 27 | 28 | if ( !key ) { return; } 29 | 30 | if ( key.name === 'q' ) { 31 | 32 | console.log('Quitting'); 33 | process.exit(); 34 | 35 | } else if ( key.name === 'up' ) { 36 | 37 | console.log('Forward'); 38 | leftWheel.ccw(); 39 | rightWheel.cw(); 40 | 41 | } else if ( key.name === 'down' ) { 42 | 43 | console.log('Backward'); 44 | leftWheel.cw(); 45 | rightWheel.ccw(); 46 | 47 | } else if ( key.name === 'left' ) { 48 | 49 | console.log('Left'); 50 | leftWheel.ccw(); 51 | rightWheel.ccw(); 52 | 53 | 54 | } else if ( key.name === 'right' ) { 55 | 56 | console.log('Right'); 57 | leftWheel.cw(); 58 | rightWheel.cw(); 59 | 60 | } else if ( key.name === 'space' ) { 61 | 62 | console.log('Stopping'); 63 | leftWheel.stop(); 64 | rightWheel.stop(); 65 | 66 | } 67 | }); 68 | }); 69 | -------------------------------------------------------------------------------- /code_example/thriller.js: -------------------------------------------------------------------------------- 1 | // =================================== 2 | // Sumobot Jr "Thriller" dance program 3 | // =================================== 4 | 5 | 'use strict'; 6 | 7 | var five = require('johnny-five'); 8 | var keypress = require('keypress'); 9 | var promise = require('bluebird'); 10 | var board = new five.Board(); 11 | 12 | 13 | board.on('ready', function() { 14 | 15 | var leftWheel = new five.Servo({ pin: 9, type: 'continuous' }).stop(); 16 | var rightWheel = new five.Servo({ pin: 10, type: 'continuous' }).stop(); 17 | 18 | 19 | keypress(process.stdin); 20 | process.stdin.resume(); 21 | process.stdin.setEncoding('utf8'); 22 | process.stdin.setRawMode(true); 23 | 24 | var okay = promise.resolve(); 25 | 26 | var beat = 508; 27 | 28 | function stop() { 29 | 30 | console.log('Stopping'); 31 | leftWheel.stop(); 32 | rightWheel.stop(); 33 | } 34 | 35 | function turnleft() { 36 | 37 | console.log('Left'); 38 | leftWheel.ccw(); 39 | rightWheel.ccw(); 40 | } 41 | 42 | function turnright() { 43 | 44 | console.log('Right'); 45 | leftWheel.cw(); 46 | rightWheel.cw(); 47 | } 48 | 49 | function forward() { 50 | 51 | console.log('Forward'); 52 | leftWheel.ccw(); 53 | rightWheel.cw(); 54 | } 55 | 56 | function back() { 57 | 58 | console.log('Backward'); 59 | leftWheel.cw(); 60 | rightWheel.ccw(); 61 | } 62 | 63 | 64 | process.stdin.on('keypress', function (ch, key) { 65 | 66 | 67 | if ( !key ) { return; } 68 | 69 | 70 | if ( key.name === 'q' ) { 71 | 72 | console.log('Quitting'); 73 | process.exit(); 74 | 75 | } 76 | 77 | if ( key.name === 'space' ) { 78 | 79 | for(var i = 0; i < 10; i++) { 80 | if(i === 6){ 81 | okay = okay.delay(beat * 2); 82 | for(var j = 0; j < 16; j++){ 83 | okay = okay.then(forward); 84 | okay = okay.delay(beat); 85 | okay = okay.then(back); 86 | okay = okay.then(beat); 87 | } 88 | continue; 89 | } 90 | 91 | okay = okay.then(turnleft); 92 | okay = okay.delay(4 * beat); 93 | okay = okay.then(turnright); 94 | okay = okay.delay(4 * beat); 95 | okay = okay.then(forward); 96 | okay = okay.delay(4 * beat); 97 | okay = okay.then(back); 98 | okay = okay.delay(4 * beat); 99 | okay = okay.then(stop); 100 | } 101 | } 102 | }); 103 | }); 104 | -------------------------------------------------------------------------------- /cutting_plans/SumoBot_Jr.psvg: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | A laser cuttable robotics platform. 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 73 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | -------------------------------------------------------------------------------- /cutting_plans/pdf/SumoBot_Jr-3mm.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/cutting_plans/pdf/SumoBot_Jr-3mm.pdf -------------------------------------------------------------------------------- /cutting_plans/pdf/SumoBot_Jr-5mm.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/cutting_plans/pdf/SumoBot_Jr-5mm.pdf -------------------------------------------------------------------------------- /cutting_plans/pdf/SumoBot_Jr-6mm.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/cutting_plans/pdf/SumoBot_Jr-6mm.pdf -------------------------------------------------------------------------------- /cutting_plans/sumbotjr-3mm.eps: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/cutting_plans/sumbotjr-3mm.eps -------------------------------------------------------------------------------- /cutting_plans/sumbotjr-5mm.eps: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/cutting_plans/sumbotjr-5mm.eps -------------------------------------------------------------------------------- /fun_stuff/SoccerBot/README.md: -------------------------------------------------------------------------------- 1 | ##SoccerBot Mod 2 | 3 | ![SoccerBot](https://raw.githubusercontent.com/makenai/sumobot-jr/master/fun_stuff/SoccerBot/soccerbot.png) 4 | 5 | These modifications were created quickly and dirtily for the [JSConf 2014](http://2014.jsconf.us/) SoccerBot tournament. Just replacement wheels, shovel and a 3D printable wheel hub that is an improvement over the old wooden method! 6 | 7 | [![Video](http://img.youtube.com/vi/CcCwjnWBoJ8/0.jpg)](https://www.youtube.com/watch?v=CcCwjnWBoJ8) 8 | 9 | Want to see the matches? 10 | 11 | [![Video](http://img.youtube.com/vi/kE-g8LFVeYw/0.jpg)](https://www.youtube.com/watch?v=kE-g8LFVeYw) 12 | 13 | [![Video](http://img.youtube.com/vi/HgWbxDNJleQ/0.jpg)](https://www.youtube.com/watch?v=HgWbxDNJleQ) 14 | 15 | [![Video](http://img.youtube.com/vi/ViGQqndk6Og/0.jpg)](https://www.youtube.com/watch?v=ViGQqndk6Og) 16 | -------------------------------------------------------------------------------- /fun_stuff/SoccerBot/WheelHub.scad: -------------------------------------------------------------------------------- 1 | /** 2 | * Parametric servo arm generator for OpenScad 3 | * Générateur de palonnier de servo pour OpenScad 4 | * 5 | * Copyright (c) 2012 Charles Rincheval. All rights reserved. 6 | * 7 | * This library is free software; you can redistribute it and/or 8 | * modify it under the terms of the GNU Lesser General Public 9 | * License as published by the Free Software Foundation; either 10 | * version 2.1 of the License, or (at your option) any later version. 11 | * 12 | * This library is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 | * Lesser General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU Lesser General Public 18 | * License along with this library; if not, write to the Free Software 19 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | * 21 | * Last update : 22 | * https://github.com/hugokernel/OpenSCAD_ServoArms 23 | * 24 | * http://www.digitalspirit.org/ 25 | */ 26 | 27 | $fn = 40; 28 | 29 | /** 30 | * Clear between arm head and servo head 31 | * With PLA material, use clear : 0.3, for ABS, use 0.2 32 | */ 33 | SERVO_HEAD_CLEAR = 0.2; 34 | 35 | /** 36 | * Head / Tooth parameters 37 | * Futaba 3F Standard Spline 38 | * http://www.servocity.com/html/futaba_servo_splines.html 39 | * 40 | * First array (head related) : 41 | * 0. Head external diameter 42 | * 1. Head heigth 43 | * 2. Head thickness 44 | * 3. Head screw diameter 45 | * 46 | * Second array (tooth related) : 47 | * 0. Tooth count 48 | * 1. Tooth height 49 | * 2. Tooth length 50 | * 3. Tooth width 51 | */ 52 | FUTABA_3F_SPLINE = [ 53 | [6, 4, 1.1, 2.5], 54 | [25, 0.3, 0.7, 0.1] 55 | ]; 56 | 57 | module servo_futaba_3f(length, count) { 58 | servo_arm(FUTABA_3F_SPLINE, [length, count]); 59 | } 60 | 61 | /** 62 | * If you want to support a new servo, juste add a new spline definition array 63 | * and a module named like servo_XXX_YYY where XXX is servo brand and YYY is the 64 | * connection type (3f) or the servo type (s3003) 65 | */ 66 | 67 | module servo_standard(length, count) { 68 | servo_futaba_3f(length, count); 69 | } 70 | 71 | /** 72 | * Tooth 73 | * 74 | * |<-w->| 75 | * |_____|___ 76 | * / \ ^h 77 | * _/ \_v 78 | * |<--l-->| 79 | * 80 | * - tooth length (l) 81 | * - tooth width (w) 82 | * - tooth height (h) 83 | * - height 84 | * 85 | */ 86 | module servo_head_tooth(length, width, height, head_height) { 87 | linear_extrude(height = head_height) { 88 | polygon([[-length / 2, 0], [-width / 2, height], [width / 2, height], [length / 2,0]]); 89 | } 90 | } 91 | 92 | /** 93 | * Servo head 94 | */ 95 | module servo_head(params, clear = SERVO_HEAD_CLEAR) { 96 | 97 | head = params[0]; 98 | tooth = params[1]; 99 | 100 | head_diameter = head[0]; 101 | head_heigth = head[1]; 102 | 103 | tooth_count = tooth[0]; 104 | tooth_height = tooth[1]; 105 | tooth_length = tooth[2]; 106 | tooth_width = tooth[3]; 107 | 108 | % cylinder(r = head_diameter / 2, h = head_heigth + 1); 109 | 110 | cylinder(r = head_diameter / 2 - tooth_height + 0.03 + clear, h = head_heigth); 111 | 112 | for (i = [0 : tooth_count]) { 113 | rotate([0, 0, i * (360 / tooth_count)]) { 114 | translate([0, head_diameter / 2 - tooth_height + clear, 0]) { 115 | servo_head_tooth(tooth_length, tooth_width, tooth_height, head_heigth); 116 | } 117 | } 118 | } 119 | } 120 | 121 | /** 122 | * Servo hold 123 | * - Head / Tooth parameters 124 | * - Arms params (length and count) 125 | */ 126 | module servo_arm(params, arms) { 127 | 128 | head = params[0]; 129 | tooth = params[1]; 130 | 131 | head_diameter = head[0]; 132 | head_heigth = head[1]; 133 | head_thickness = head[2]; 134 | head_screw_diameter = head[3]; 135 | 136 | tooth_length = tooth[2]; 137 | tooth_width = tooth[3]; 138 | 139 | arm_length = arms[0]; 140 | arm_count = arms[1]; 141 | 142 | /** 143 | * Servo arm 144 | * - length is from center to last hole 145 | */ 146 | module arm(tooth_length, tooth_width, head_height, head_heigth, hole_count = 1) { 147 | 148 | arm_screw_diameter = 2; 149 | 150 | difference() { 151 | union() { 152 | cylinder(r = tooth_width / 2, h = head_heigth); 153 | 154 | linear_extrude(height = head_heigth) { 155 | polygon([ 156 | [-tooth_width / 2, 0], [-tooth_width / 3, tooth_length], 157 | [tooth_width / 3, tooth_length], [tooth_width / 2, 0] 158 | ]); 159 | } 160 | 161 | translate([0, tooth_length, 0]) { 162 | cylinder(r = tooth_width / 3, h = head_heigth); 163 | } 164 | 165 | if (tooth_length >= 12) { 166 | translate([-head_heigth / 2 + 2, 3.8, -4]) { 167 | rotate([90, 0, 0]) { 168 | rotate([0, -90, 0]) { 169 | linear_extrude(height = head_heigth) { 170 | polygon([ 171 | [-tooth_length / 1.7, 4], [0, 4], [0, - head_height + 5], 172 | [-2, - head_height + 5] 173 | ]); 174 | } 175 | } 176 | } 177 | } 178 | } 179 | } 180 | 181 | // Hole 182 | for (i = [0 : hole_count - 1]) { 183 | //translate([0, length - (length / hole_count * i), -1]) { 184 | translate([0, tooth_length - (4 * i), -1]) { 185 | cylinder(r = arm_screw_diameter / 2, h = 10); 186 | } 187 | } 188 | 189 | cylinder(r = head_screw_diameter / 2, h = 10); 190 | } 191 | } 192 | 193 | difference() { 194 | translate([0, 0, 0.1]) { 195 | cylinder(r = head_diameter / 2 + head_thickness, h = head_heigth + 1); 196 | } 197 | 198 | cylinder(r = head_screw_diameter / 2, h = 10); 199 | 200 | servo_head(params); 201 | } 202 | 203 | arm_thickness = head_thickness; 204 | 205 | // Arm 206 | translate([0, 0, head_heigth]) { 207 | for (i = [0 : arm_count - 1]) { 208 | rotate([0, 0, i * (360 / arm_count)]) { 209 | arm(arm_length, head_diameter + arm_thickness * 2, head_heigth, 2); 210 | } 211 | } 212 | } 213 | } 214 | 215 | module wheelhub() { 216 | translate([0,0,1]) 217 | difference() { 218 | union() { 219 | hull() { 220 | cube([10.1,10.1,1],center=true); 221 | translate([0,0,6]) { 222 | cube([9.8,9.8,1],center=true); 223 | } 224 | } 225 | cylinder(d=18,h=2,center=true); 226 | } 227 | translate([0,0,-10]) cylinder(d=3,h=20); 228 | translate([0,0,-1.1]) cylinder(d=4,h=1); 229 | translate([0,0,3]) servo_head(FUTABA_3F_SPLINE); 230 | } 231 | } 232 | 233 | wheelhub(); -------------------------------------------------------------------------------- /fun_stuff/SoccerBot/soccer-mods.eps: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/fun_stuff/SoccerBot/soccer-mods.eps -------------------------------------------------------------------------------- /fun_stuff/SoccerBot/soccerbot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/fun_stuff/SoccerBot/soccerbot.png -------------------------------------------------------------------------------- /fun_stuff/kittytaim.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/fun_stuff/kittytaim.ai -------------------------------------------------------------------------------- /fun_stuff/kittytaim.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/fun_stuff/kittytaim.pdf -------------------------------------------------------------------------------- /sumobot-instructions.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/makenai/sumobot-jr/1cd74a93322bbf306e98cd1b6e0ea67e94468178/sumobot-instructions.pdf --------------------------------------------------------------------------------