2024-07-25 14:58:36 +00:00
|
|
|
/**
|
2024-07-27 09:34:50 +00:00
|
|
|
Trophy cutting lines.
|
|
|
|
|
|
|
|
t=plywood thickness
|
|
|
|
w=width of the trophy
|
|
|
|
|
|
|
|
If you need to scale the trophy up or down,
|
|
|
|
uncomment the "scale" and "s" below to set the scaling factor.
|
|
|
|
|
|
|
|
Assuming 1 unit in OpenSCAD corresponds to 1mm.
|
|
|
|
|
|
|
|
Author: Artur Kerge
|
2024-07-25 14:58:36 +00:00
|
|
|
**/
|
|
|
|
|
|
|
|
w=80;
|
|
|
|
t=6;
|
|
|
|
|
|
|
|
//s=1;
|
|
|
|
//scale([s,s,0])
|
|
|
|
|
|
|
|
module base() {
|
2024-07-27 09:34:50 +00:00
|
|
|
polygon(
|
|
|
|
// points go clockwise from bottom left of the base
|
|
|
|
points=[
|
|
|
|
[0,0],[0,t],[8,7],[17.5,10],[25,15],[28,20],[30.5,30],[31.5,40],[32,50],[32,61],[40,61],[40,0]
|
|
|
|
]
|
|
|
|
);
|
2024-07-25 14:58:36 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
module beaker(){
|
2024-07-27 09:34:50 +00:00
|
|
|
union() {
|
|
|
|
// want to make the beaker lower? decrese y in translate below
|
|
|
|
translate([0,60,0]) union(){
|
|
|
|
// cutout for the sign
|
|
|
|
difference() {
|
|
|
|
square(w);
|
|
|
|
translate([0,w/4.5,0]) color("red") square([t,42]);
|
|
|
|
}
|
|
|
|
// resizes the beaker bottom circle to an ellips
|
|
|
|
translate([w/2,0,0]) resize([w,30]) circle(d=w,false);
|
|
|
|
};
|
2024-07-25 14:58:36 +00:00
|
|
|
|
2024-07-27 09:34:50 +00:00
|
|
|
// beaker base
|
|
|
|
union() {
|
|
|
|
base();
|
|
|
|
translate([2*40,0,0]) mirror([1,0,0]) base();
|
2024-07-25 14:58:36 +00:00
|
|
|
}
|
2024-07-27 09:34:50 +00:00
|
|
|
}
|
2024-07-25 14:58:36 +00:00
|
|
|
}
|
2024-07-27 09:34:50 +00:00
|
|
|
// vertical cutouts for the trophy
|
2024-07-25 14:58:36 +00:00
|
|
|
difference(){
|
2024-07-27 09:34:50 +00:00
|
|
|
beaker();
|
|
|
|
translate([w/2-t/2,0,0]) color("green") square([t,75]);
|
2024-07-25 14:58:36 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
difference(){
|
2024-07-27 09:34:50 +00:00
|
|
|
translate([2*w+5,0,0]) mirror([1,0,0]) beaker();
|
|
|
|
translate([w+5+w/2-t/2,150/2,0]) color("red") square([t,75]);
|
2024-07-25 14:58:36 +00:00
|
|
|
}
|