diff --git a/Werkbank-balken/assembly.scad b/Werkbank-balken/assembly.scad index 1760417..0588bc0 100644 --- a/Werkbank-balken/assembly.scad +++ b/Werkbank-balken/assembly.scad @@ -4,19 +4,20 @@ use use use -// === topbeams === -for (i=[0:topdepth/topbeamthickness-1]) { - translate([topbeamthickness*i, topsidethickness, benchheight-topheight]) { - beam(); - } +// === top sides === +translate([0, 0, benchheight-topsideheight]){ + topside(); +} +translate([topdepth, toplength, benchheight-topsideheight]){ + rotate([0, 0, 180]) + topside(); } -// === top sides === -translate([0, 0, benchheight-topheight]){ - topside(); -} -translate([0, toplength - topsidethickness, benchheight-topheight]){ - topside(); +// === topbeams === +for (i=[0:topdepth/topbeamthickness-1]) { + translate([topbeamthickness*i, topsidewidth, benchheight-topheight]) { + beam(); + } } // === stand bottom === diff --git a/Werkbank-balken/dimensions.scad b/Werkbank-balken/dimensions.scad index 7447bb0..47a5735 100644 --- a/Werkbank-balken/dimensions.scad +++ b/Werkbank-balken/dimensions.scad @@ -5,8 +5,10 @@ toplength = 1500; topdepth = 630; topheight = 50; topbeamthickness = 45; -topsidethickness = 50; +topsidewidth = 65; +topsideheight = 80; topslitdepth = 20; +topslitheight = 14; connectorheight = 100; connectorthickness = 30; diff --git a/Werkbank-balken/top.scad b/Werkbank-balken/top.scad index 32286cf..5704fc3 100644 --- a/Werkbank-balken/top.scad +++ b/Werkbank-balken/top.scad @@ -1,16 +1,26 @@ include module beam(){ - cube(size=[topbeamthickness, toplength - 2 * topsidethickness, topheight], center=false); - echo("#### Top beam: length = ", toplength - 2*topsidethickness + 2*topslitdepth, " height = ", topheight, "width = ", topbeamthickness); + cube(size=[topbeamthickness, toplength - 2 * topsidewidth, topheight], center=false); + translate([0, - topslitdepth, topheight/2 - topslitheight/2]) + cube([topbeamthickness, topslitdepth, topslitheight]); + translate([0, toplength - 2 * topsidewidth, topheight/2 - topslitheight/2]) + cube([topbeamthickness, topslitdepth, topslitheight]); + echo("#### Top beam: length = ", toplength - 2*topsidewidth + 2*topslitdepth, " height = ", topheight, "width = ", topbeamthickness); } module topside(){ color("red") - cube(size=[topdepth, topsidethickness, topheight], center=false); - echo("#### Top side beam: length = ", topdepth, " height = ", topheight, "width = ", topbeamthickness); + difference(){ + cube(size=[topdepth, topsidewidth, topsideheight], center=false); + translate([-20, topsidewidth-topslitdepth, topsideheight - topheight/2 - topslitheight/2]){ + cube([topdepth+40, topslitdepth, topslitheight]); + } + } + echo("#### Top side beam: length = ", topdepth, " height = ", topsideheight, "width = ", topsidewidth); } + beam(); topside();