Skip to content

Instantly share code, notes, and snippets.

@jhitesma
Created April 22, 2016 05:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jhitesma/3cecbca47609ce141cc8aaf1f9abeb4b to your computer and use it in GitHub Desktop.
Save jhitesma/3cecbca47609ce141cc8aaf1f9abeb4b to your computer and use it in GitHub Desktop.
Callsign = "N8INJ";
$fs=0.2;
translate([0,0,25]) {
difference() {
shell();
rotate([90,0,0]) translate([0,0,8]) linear_extrude(height=2)
text(Callsign,font="Browallia New:style=Bold",size=10, halign = "center", valign = "center");
translate([0,0,.5]) rc305();
translate([26-8,1,0]) {plug_hole();}
translate([26-23,1,0]) {plug_hole();}
translate([-26+7,1,0]) {plug_hole();}
translate([-26+16,0,0]) {cylinder(62,1.5,1.5,true);}
}
}
translate([0,0,6])
difference() {
mount();
mount_rod();
}
module plug_hole() {
cylinder(62,3.5,3.5,true);
}
module mount() {
translate([0,18,0]) {
roundedRect([16, 16, 40], 5, $fn=12);
translate([0,-6,20])
cube([21,8,40],true);
}
}
module mount_rod() {
translate([0,18,-10]){
cube([13.2,13.2,80],true);
}
}
module rc305() {
hull() {
cube([53,9.5,50],true);
cube([44,14,50],true);
}
}
module shell() {
scale([1.1,1.3,1]) rc305();
}
// size - [x,y,z]
// radius - radius of corners
module roundedRect(size, radius)
{
x = size[0];
y = size[1];
z = size[2];
linear_extrude(height=z)
hull()
{
// place 4 circles in the corners, with the given radius
translate([(-x/2)+(radius/2), (-y/2)+(radius/2), 0])
circle(r=radius);
translate([(x/2)-(radius/2), (-y/2)+(radius/2), 0])
circle(r=radius);
translate([(-x/2)+(radius/2), (y/2)-(radius/2), 0])
circle(r=radius);
translate([(x/2)-(radius/2), (y/2)-(radius/2), 0])
circle(r=radius);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment