Commit 72abb1d1 authored by Mio Iwakura's avatar Mio Iwakura

Nightly

parent 78607449
......@@ -254,42 +254,6 @@ module case_bottom()
//@SECTION: components
module base()
{
//@SECTION: components
module ramp_corner(r = 18, z = wall_z)
{
//@SECTION: construction
intersection()
{
rotate_extrude()
translate([r, 0, 0])
rotate([0, 0, 90])
intersection()
{
difference()
{
square([r, r]);
circle(d = r*2 - 2*z);
}
circle(d = r*2);
}
cube([r, r, r]);
}
}
module ramp_edge(r = 18, length = 151, z = wall_z)
{
//@SECTION: construction
intersection()
{
difference()
{
cylinder(h = length, r = r, center = true);
cylinder(h = length + 1, r = r - z, center = true);
}
translate([0, -r, -(length + 1)/2])
linear_extrude(length + 1)
square([r, r]);
}
}
//@SECTION: construction
let(x = 272,
y = 120,
......@@ -312,8 +276,9 @@ module case_bottom()
{
difference()
{
translate([-2, 0, 0])
linear_extrude(wall_z)
square([276, 151]);
square([278, 151]);
for(p = standoff_points)
translate([p[0] + 138.5, p[1] + 72.5, -1])
{
......@@ -355,98 +320,20 @@ module case_bottom()
}
}
//@SECTION: assembly
translate([329, 169, 18])
rotate([90, 0, -90])
ramp_edge(length = 70);
translate([382, 151/2, 18])
rotate([90, 0, 180])
ramp_edge();
translate([276, 151/2, 18])
rotate([90, 0, 0])
ramp_edge();
translate([329, -18, 18])
rotate([90, 0, 90])
ramp_edge(length = 70);
translate([294, 0, 18])
rotate([180, 0, -90])
ramp_corner();
translate([364, 0, 18])
rotate([180, 0, 0])
ramp_corner();
translate([294, 151, 18])
rotate([180, 0, 180])
ramp_corner();
translate([364, 151, 18])
rotate([180, 0, 90])
ramp_corner();
}
module skirt()
{
//@SECTION: construction
linear_extrude(wall_z)
union()
let(r = 18, length = 151, z = wall_z)
{
translate([22, 0, 0])
square([276, 22]);
translate([22, 173, 0])
square([276, 22]);
translate([0, 22, 0])
square([22, 151]);
translate([22, 173, 0])
rotate([0, 0, 90])
intersection()
{
circle(d = 22*2);
square([22, 22]);
}
translate([22, 22, 0])
rotate([0, 0, 180])
intersection()
{
circle(d = 22*2);
square([22, 22]);
}
translate([319, 170, 0])
rotate([0, 0, 90])
difference()
{
square([21, 21]);
circle(d = 21*2 - 1);
}
translate([319, 25, 0])
rotate([0, 0, 180])
difference()
{
square([21, 21]);
circle(d = 21*2 - 1);
}
translate([298, 191, 0])
square([88, 4]);
translate([298, 0, 0])
square([88, 4]);
translate([404, 22, 0])
square([4, 151]);
translate([386, 22, 0])
rotate([0, 0, -90])
intersection()
{
difference()
{
circle(d = 44);
circle(d = 44 - 8);
}
square([44, 44]);
}
translate([386, 173, 0])
rotate([0, 0, 0])
intersection()
{
difference()
{
circle(d = 44);
circle(d = 44 - 8);
cylinder(h = length, r = r, center = true);
cylinder(h = length + 1, r = r - z, center = true);
}
square([44, 44]);
translate([0, -r, -(length + 1)/2])
linear_extrude(length + 1)
square([r, r]);
}
}
}
......@@ -464,11 +351,63 @@ module case_bottom()
square([42, 42]);
}
}
module tab_foot()
{
//@SECTION: construction
difference()
{
cube([13, 3, 12.5]);
translate([1, 1, 0])
cube([11, 1.5, 13.5]);
}
}
//@SECTION: construction
translate([16, 22, 12])
cube([wall_z, 151, 36]);
translate([16, 18, 12])
cube([374, wall_z, 36]);
difference()
{
union()
{
translate([16, 173, 12])
cube([96.25, wall_z, 36]);
translate([24.75, 171.25, 16])
cube([20, 2.25, 32]);
translate([92.25, 171.25, 16])
cube([20, 2.25, 32]);
}
translate([25.75, 170, 34])
cube([18, 6, 19]);
translate([24.75, 175, 33])
cube([20, 3, 19]);
translate([93.25, 170, 34])
cube([18, 6, 19]);
translate([92.25, 175, 33])
cube([20, 3, 19]);
}
translate([112.25, 173, 12])
cube([277.75, wall_z, 36]);
translate([386, 22, 12])
cube([wall_z, 151, 36]);
translate([22, 22, 12])
linear_extrude(wall_z)
difference()
{
minkowski()
{
square([365, 151]);
circle(d = 42);
}
square([365, 151]);
}
//@SECTION: assembly
translate([28.25, 168.25, 16])
tab_foot();
translate([95.75, 168.25, 16])
tab_foot();
translate([22, 22, foot_z])
base();
translate([0, 0, foot_z])
skirt();
translate([23, 23, 0])
rotate([0, 0, -180])
foot();
......@@ -483,7 +422,7 @@ module case_bottom()
foot();
}
//@SECTION: assembly
translate([160.5, 94.5, 16.5])
guts();
/* translate([160.5, 94.5, 16.5]) */
/* guts(); */
color("dimgray")
case_bottom();
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