97 lines
3.9 KiB
OpenSCAD
97 lines
3.9 KiB
OpenSCAD
include <../box/box.scad>
|
|
|
|
thickness = 3.25; // 3.25mm = 1/8" medium draftboard
|
|
spacing = thickness/2;
|
|
|
|
outer_width = 7.25*inch;
|
|
outer_depth = 2*inch;
|
|
outer_height = 1*inch;
|
|
|
|
//notch_margin = 3*thickness;
|
|
//notch_size = golden_ratio*thickness;
|
|
|
|
notches_w = -1; //round((outer_width - 2*notch_margin) / (2*notch_size));
|
|
notches_h = 1; //round((outer_height - 2*notch_margin) / (2*notch_size));
|
|
notches_d = -1; //round((outer_depth - 2*notch_margin) / (2*notch_size));
|
|
|
|
inc_bottom = false;
|
|
|
|
module top_side() {
|
|
difference() {
|
|
top_side_base();
|
|
translate([0,10,0]) square([6.5*inch - 2, 5.0], center=true);
|
|
translate([-6.625*inch/2,0,0]) rotate([0,0,90]) holes(2, 1.5*inch, thickness);
|
|
translate([ 6.625*inch/2,0,0]) rotate([0,0,90]) holes(2, 1.5*inch, thickness);
|
|
}
|
|
}
|
|
|
|
module back_side() {
|
|
difference() {
|
|
back_side_base();
|
|
translate([3*inch,-0.25*inch,0]) hull() {
|
|
usb_width = 8.5;
|
|
usb_height = 3.5;
|
|
translate([-(usb_width-usb_height)/2, 0, 0]) circle(r=usb_height/2, $fn=32);
|
|
translate([ (usb_width-usb_height)/2, 0, 0]) circle(r=usb_height/2, $fn=32);
|
|
}
|
|
translate([3*inch,0.05*inch,0]) square([11.55, 4.1], center=true);
|
|
}
|
|
}
|
|
|
|
module side_support() {
|
|
difference() {
|
|
hull() {
|
|
translate([-0.5*inch, 0.25*inch, 0]) circle(r=0.25*inch, $fn=32);
|
|
translate([ 0.5*inch, 0.25*inch, 0]) circle(r=0.25*inch, $fn=32);
|
|
translate([10, 1.5*inch, 0]) circle(r=0.25*inch, $fn=48);
|
|
translate([0, -0.25*inch/2 + thickness, 0]) square([1.5*inch, 0.25*inch], center=true);
|
|
}
|
|
notches(2, 1.5*inch, thickness);
|
|
translate([10 - thickness, 0.75*inch, 0]) square([thickness, 1*inch], center=true);
|
|
translate([10 + thickness, 0.75*inch, 0]) square([thickness, 1*inch], center=true);
|
|
}
|
|
}
|
|
|
|
module side_support_insert() {
|
|
square([1.75*thickness, 1*inch], center=true);
|
|
}
|
|
|
|
module inside_support() {
|
|
square([6.5*inch, 2*8.25], center=true);
|
|
}
|
|
|
|
module extra_layout() {
|
|
translate([0, -1.5*inch, 0]) {
|
|
translate([-4*inch, 0, 0]) rotate([0,180,0]) side_support();
|
|
translate([ 4*inch, 0, 0]) rotate([0,0,0]) side_support();
|
|
}
|
|
translate([0, 3*inch, 0]) {
|
|
translate([-4.25*inch, 0.5*inch, 0]) rotate([0,0,90]) side_support_insert();
|
|
translate([-4.25*inch, 0, 0]) rotate([0,0,90]) side_support_insert();
|
|
translate([ 4.25*inch, 0.5*inch, 0]) rotate([0,0,90]) side_support_insert();
|
|
translate([ 4.25*inch, 0, 0]) rotate([0,0,90]) side_support_insert();
|
|
}
|
|
translate([5.25*inch,0.4*inch,0]) rotate([0,0,90]) inside_support();
|
|
%translate([0.5*inch,0,0]) square([11*inch,18*inch], center=true);
|
|
}
|
|
|
|
module plaque() {
|
|
linear_extrude(height=0.125*inch, center=true, convexity=2)
|
|
import("b17-cutaway-frame.dxf");
|
|
}
|
|
|
|
module extra_assembly() {
|
|
translate([-6.625*inch/2,0,outer_height/2]) rotate([90,0,0]) rotate([0,90,0]) thicken() side_support();
|
|
translate([ 6.625*inch/2,0,outer_height/2]) rotate([90,0,0]) rotate([0,90,0]) thicken() side_support();
|
|
color("violet") translate([-(6.625*inch/2+thickness/2-(1.75*thickness/2)),10-thickness,outer_height/2+0.75*inch]) rotate([90,0,0]) thicken() side_support_insert();
|
|
color("violet") translate([-(6.625*inch/2+thickness/2-(1.75*thickness/2)),10+thickness,outer_height/2+0.75*inch]) rotate([90,0,0]) thicken() side_support_insert();
|
|
color("violet") translate([ (6.625*inch/2+thickness/2-(1.75*thickness/2)),10-thickness,outer_height/2+0.75*inch]) rotate([90,0,0]) thicken() side_support_insert();
|
|
color("violet") translate([ (6.625*inch/2+thickness/2-(1.75*thickness/2)),10+thickness,outer_height/2+0.75*inch]) rotate([90,0,0]) thicken() side_support_insert();
|
|
color("magenta") translate([0,10,outer_height/2-thickness-thickness/2]) rotate([0,0,0]) thicken() inside_support();
|
|
%translate([0, 10, 5.5*inch/2 + outer_height/2 - thickness])
|
|
rotate([90, 0, 0])
|
|
plaque();
|
|
}
|
|
|
|
//mode = "assembly";
|