hackathon_awards/2024/hackathon2024trophy.scad
2024-07-27 12:34:50 +03:00

59 lines
1.2 KiB
OpenSCAD

/**
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
**/
w=80;
t=6;
//s=1;
//scale([s,s,0])
module base() {
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]
]
);
};
module beaker(){
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);
};
// beaker base
union() {
base();
translate([2*40,0,0]) mirror([1,0,0]) base();
}
}
}
// vertical cutouts for the trophy
difference(){
beaker();
translate([w/2-t/2,0,0]) color("green") square([t,75]);
}
difference(){
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]);
}