Commit 56439cc2 authored by Mio Iwakura's avatar Mio Iwakura

Nightly

parent 3ca33b0c
$fn = 100;
module exb()
{
exb_width = 272;
exb_depth = 117;
exb_height = 2;
exb_standoffs = 18;
exb_standoff_points = [
[-exb_width/2 + 7, -exb_depth/2 + 4],
[-exb_width/2 + 7, exb_depth/2 - 4],
[-exb_width/2 + 7, -exb_depth/2 + 45.5],
[-exb_width/2 + 31.5, -exb_depth/2 + 4],
[-exb_width/2 + 31.5, exb_depth/2 - 4],
[-exb_width/2 + 31.5, -exb_depth/2 + 45.5],
[-exb_width/2 + 69.75, -exb_depth/2 + 4],
[-exb_width/2 + 69.75, exb_depth/2 - 4],
[-exb_width/2 + 69.75, -exb_depth/2 + 45.5],
[exb_width/2 - 4, -exb_depth/2 + 4],
[exb_width/2 - 63, -exb_depth/2 + 4],
[-exb_width/2 + 87.5, -exb_depth/2 + 4],
[-exb_width/2 + 87.5, exb_depth/2 - 4],
[exb_width/2 - 21, exb_depth/2 - 4,],
[-exb_width/2 + 148, exb_depth/2 - 4]
x = 272;
y = 117;
z = 2;
standoff_z = 18;
standoff_points = [
[-x/2 + 7, -y/2 + 4],
[-x/2 + 7, y/2 - 4],
[-x/2 + 7, -y/2 + 45.5],
[-x/2 + 31.5, -y/2 + 4],
[-x/2 + 31.5, y/2 - 4],
[-x/2 + 31.5, -y/2 + 45.5],
[-x/2 + 69.75, -y/2 + 4],
[-x/2 + 69.75, y/2 - 4],
[-x/2 + 69.75, -y/2 + 45.5],
[x/2 - 4, -y/2 + 4],
[x/2 - 63, -y/2 + 4],
[-x/2 + 87.5, -y/2 + 4],
[-x/2 + 87.5, y/2 - 4],
[x/2 - 21, y/2 - 4,],
[-x/2 + 148, y/2 - 4]
];
%difference(){
translate([0, 0,
exb_standoffs + exb_height])
translate([0, 0, standoff_z + z])
linear_extrude(26.5)
square([exb_width, exb_depth],
center = true);
translate([exb_width/2 - 58,
exb_depth/2 - 13.5,
exb_standoffs + exb_height])
square([x, y], center = true);
translate([x/2 - 58, y/2 - 13.5, standoff_z + z])
cube([33, 13.6, 26.6]);
translate([exb_width/2 - 26,
-exb_depth/2 - 1,
exb_standoffs + exb_height])
cube([27, exb_depth + 2, 26.6]);
translate([-exb_width/2 + 73,
-exb_depth/2 - 1,
exb_standoffs + exb_height])
cube([18, exb_depth + 2, 26.6]);
translate([x/2 - 26, -y/2 - 1, standoff_z + z])
cube([27, y + 2, 26.6]);
translate([-x/2 + 73, -y/2 - 1, standoff_z + z])
cube([18, y + 2, 26.6]);
}
color("green")
translate([0, 0, exb_standoffs])
linear_extrude(exb_height)
square([exb_width, exb_depth],
center = true);
translate([0, 0, standoff_z])
linear_extrude(z)
square([x, y], center = true);
%difference(){
color("black")
translate([exb_width/2 - 18, -5,
exb_standoffs + exb_height])
translate([x/2 - 18, -5, standoff_z + z])
cube([17, 59, 7]);
translate([exb_width/2 - 17, -4,
exb_standoffs + exb_height + 2])
translate([x/2 - 17, -4, standoff_z + z + 2])
cube([15, 57, 6]);
}
%difference(){
linear_extrude(exb_standoffs)
square([exb_width, exb_depth],
center = true);
for(p = exb_standoff_points)
linear_extrude(standoff_z)
square([x, y], center = true);
for(p = standoff_points)
translate([p[0], p[1], -1])
linear_extrude(2)
circle(d = 5.5);
}
difference(){
color("black")
translate([-exb_width/2 + 80,
exb_depth/2 - 25 - 28,
exb_standoffs+exb_height])
translate([-x/2 + 80, y/2 - 53, standoff_z + z])
cube([8.75, 25, 7]);
translate([-exb_width/2 + 84,
exb_depth/2 - 25 - 25,
exb_standoffs+exb_height])
translate([-x/2 + 84, y/2 - 50, standoff_z + z])
cube([1.75, 20, 8]);
}
}
module hu(){
hu_width = 120;
hu_depth = 90;
hu_height = 1.6;
hu_standoffs = 15;
hu_standoff_points = [
[hu_width/2 - 4, -hu_depth/2 + 4],
[-hu_width/2 + 4, -hu_depth/2 + 4]
x = 120;
y = 90;
z = 1.6;
standoff_z = 15;
standoff_points = [
[x/2 - 4, -y/2 + 4],
[-x/2 + 4, -y/2 + 4]
];
%difference(){
translate([0, 0,
hu_standoffs + hu_height])
translate([0, 0, standoff_z + z])
linear_extrude(25)
square([hu_width, hu_depth],
center = true);
translate([hu_width/2 - 20,
-hu_depth/2 - 1,
hu_standoffs + hu_height])
cube([21, hu_depth + 2, 26]);
square([x, y], center = true);
translate([x/2 - 20, -y/2 - 1, standoff_z + z])
cube([21, y + 2, 26]);
}
color("green")
translate([0, 0, hu_standoffs])
linear_extrude(hu_height)
square([hu_width, hu_depth],
center = true);
translate([hu_width/2 - 63,
hu_depth/2 - 15,
hu_standoffs - 8])
translate([0, 0, standoff_z])
linear_extrude(z)
square([x, y], center = true);
translate([x/2 - 63, y/2 - 15, standoff_z - 8])
cube([57, 15, 8]);
%difference(){
translate([0, -9, 0])
linear_extrude(hu_standoffs)
square([hu_width, hu_depth - 18],
center = true);
for(p = hu_standoff_points)
linear_extrude(standoff_z)
square([x, y - 18], center = true);
for(p = standoff_points)
translate([p[0], p[1], -1])
linear_extrude(2)
circle(d = 5);
......@@ -118,56 +94,52 @@ module hu(){
}
module usb()
{
usb_width = 85;
usb_depth = 52;
usb_height = 1.75;
x = 85;
y = 52;
z = 1.75;
color("green")
linear_extrude(usb_height)
square([usb_width, usb_depth],
center = true);
%translate([0, 0, usb_height])
linear_extrude(z)
square([x, y], center = true);
%translate([0, 0, z])
linear_extrude(9)
square([usb_width, usb_depth],
center = true);
translate([usb_width/2 - 30,
-usb_depth/2 - 6.5, 0])
linear_extrude(usb_height)
square([x, y], center = true);
translate([x/2 - 30, -y/2 - 6.5, 0])
linear_extrude(z)
square([20, 13], center = true);
}
module usbb()
{
module bracket()
{
usbb_x = 18;
usbb_y = 103.5;
x = 18;
y = 103.5;
top_xshft = 3;
top_y = 5;
top_yoff = 2.5;
tab_x = 10.5;
tab_y = 6.5;
tab_yoff = 4.5;
translate([-top_xshft, (usbb_y + top_y)/2 + top_yoff])
square([usbb_x, top_y], center = true);
translate([-usbb_x/2 - top_xshft,
usbb_y/2 + top_yoff, 0])
polygon([[0, 0], [usbb_x, 0],
[usbb_x + top_xshft, -top_yoff],
translate([-top_xshft, (y + top_y)/2 + top_yoff])
square([x, top_y], center = true);
translate([-x/2 - top_xshft, y/2 + top_yoff, 0])
polygon([[0, 0], [x, 0],
[x + top_xshft, -top_yoff],
[top_xshft, -top_yoff]]);
square([usbb_x, usbb_y], center = true);
translate([-usbb_x/2, -usbb_y/2, 0])
polygon([[0, 0], [usbb_x, 0],
[(usbb_x + tab_x)/2, -tab_yoff],
[(usbb_x - tab_x)/2, -tab_yoff]]);
translate([0, -(usbb_y + tab_y)/2 - tab_yoff , 0])
square([x, y], center = true);
translate([-x/2, -y/2, 0])
polygon([[0, 0], [x, 0],
[(x + tab_x)/2, -tab_yoff],
[(x - tab_x)/2, -tab_yoff]]);
translate([0, -(y + tab_y)/2 - tab_yoff , 0])
square([tab_x, tab_y], center = true);
}
usbb_z = 1;
z = 1;
safe_zone = 3;
%linear_extrude(safe_zone)
bracket();
color("white")
translate([0, 0, safe_zone])
linear_extrude(usbb_z)
linear_extrude(z)
bracket();
}
exb();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment