From c643cb596818f976edee88ea6aee534af4c585cb Mon Sep 17 00:00:00 2001 From: maride Date: Mon, 20 Nov 2017 15:27:06 +0100 Subject: [PATCH] Init Commit: Add Box_Generator and Gear_Generator --- Box_Generator.scad | 35 +++++++++++++++++++++++++++++++++++ Gear_Generator.scad | 18 ++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 Box_Generator.scad create mode 100644 Gear_Generator.scad diff --git a/Box_Generator.scad b/Box_Generator.scad new file mode 100644 index 0000000..dcdec7b --- /dev/null +++ b/Box_Generator.scad @@ -0,0 +1,35 @@ +INNER_X=20; +INNER_Y=40; +INNER_Z_BOTTOM=60; +INNER_Z_TOP=10; +INNER_Z_OVERLAP=10; +WALLSIZE=4; + +// The main box +difference() { + cube([INNER_X+WALLSIZE*2, INNER_Y+WALLSIZE*2, INNER_Z_BOTTOM+WALLSIZE]); + + translate([WALLSIZE, WALLSIZE, WALLSIZE]) { + cube([INNER_X, INNER_Y, INNER_Z_BOTTOM]); + } +} + +// Overlap area +difference() { + translate([WALLSIZE/2, WALLSIZE/2, INNER_Z_BOTTOM+WALLSIZE]) + cube([INNER_X+WALLSIZE, INNER_Y+WALLSIZE, INNER_Z_OVERLAP]); + + translate([WALLSIZE, WALLSIZE, INNER_Z_BOTTOM+WALLSIZE]) + cube([INNER_X, INNER_Y, INNER_Z_OVERLAP]); +} + + +// The top +translate([INNER_X + WALLSIZE * 4, 0, 0]) { + difference() { + cube([INNER_X+WALLSIZE*2, INNER_Y+WALLSIZE*2, INNER_Z_TOP+WALLSIZE]); + + translate([WALLSIZE/2, WALLSIZE/2, WALLSIZE]) + cube([INNER_X+WALLSIZE, INNER_Y+WALLSIZE, INNER_Z_TOP]); + } +} \ No newline at end of file diff --git a/Gear_Generator.scad b/Gear_Generator.scad new file mode 100644 index 0000000..14dc99a --- /dev/null +++ b/Gear_Generator.scad @@ -0,0 +1,18 @@ +INNER_RADIUS=5; +OUTER_RADIUS=15; +HEIGHT=5; + +TEETH_AMOUNT=8; +TEETH_WIDTH=5; +TEETH_HEIGHT=5; + +difference() { + cylinder(h=HEIGHT, r=OUTER_RADIUS); + cylinder(h=HEIGHT, r=INNER_RADIUS); +} + +for(i = [0:360/TEETH_AMOUNT:360]) { + rotate([0, 0, i]) + translate([INNER_RADIUS, -TEETH_WIDTH/2, 0]) + cube([OUTER_RADIUS-INNER_RADIUS+TEETH_HEIGHT, TEETH_WIDTH, HEIGHT]); +} \ No newline at end of file