Add cratetag
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
*.stl filter=lfs diff=lfs merge=lfs -text
|
||||
*.STL filter=lfs diff=lfs merge=lfs -text
|
||||
*.3mf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
@@ -0,0 +1,62 @@
|
||||
// card: 38 x 76
|
||||
// 1.5 corner radius
|
||||
// 3.5 hole 2 from edge
|
||||
|
||||
$fn = 500;
|
||||
|
||||
|
||||
card_x = 76;
|
||||
card_y = 38;
|
||||
card_z = 1;
|
||||
card_cr = 1.5;
|
||||
card_hole_inset = 2;
|
||||
card_hole_r = 1.75;
|
||||
card_hole_top_r = 3.75;
|
||||
|
||||
border = 1;
|
||||
overhang = 1;
|
||||
base = 0.6;
|
||||
top = 0.6;
|
||||
cr = 1;
|
||||
incline = 1.3;
|
||||
|
||||
e = 0.02;
|
||||
|
||||
difference() {
|
||||
// Outer shape
|
||||
hull()
|
||||
for (x=[-1, 1], y=[-1, 1]) {
|
||||
translate([x * ((card_x / 2) + border), y * ((card_y / 2) + border), 0]) {
|
||||
cylinder(h=(base + card_z + top - cr), r1=(incline * cr), r2=cr);
|
||||
|
||||
translate([0, 0, base + card_z + top - cr])
|
||||
sphere(r=cr);
|
||||
}
|
||||
}
|
||||
|
||||
// Card cutout
|
||||
hull()
|
||||
for (x=[-1, 1], y=[-1, 1]) {
|
||||
translate([x * ((card_x / 2) - card_cr), y * ((card_y / 2) - card_cr), base])
|
||||
cylinder(h=card_z, r=card_cr);
|
||||
}
|
||||
|
||||
// Window cutout
|
||||
hull()
|
||||
for (x=[-1, 1], y=[-1, 1]) {
|
||||
translate([x * ((card_x / 2) - overhang - cr), y * ((card_y / 2) - overhang - cr), base]) {
|
||||
cylinder(h=(card_z + top + e), r=cr);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Holes
|
||||
for (x=[-1, 1]) {
|
||||
translate([x * ((card_x / 2) - card_hole_inset - card_hole_r), 0, -e]) {
|
||||
cylinder(h=(e + base + card_z + top + e), r=card_hole_r);
|
||||
|
||||
translate([0, 0, base + card_z])
|
||||
cylinder(h=(e + top + e), r=card_hole_top_r);
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
Binary file not shown.
BIN
Binary file not shown.
Reference in New Issue
Block a user