First commit
This commit is contained in:
161
tools/dremel/scad/tool_holder.scad
Normal file
161
tools/dremel/scad/tool_holder.scad
Normal file
@@ -0,0 +1,161 @@
|
||||
$fn=60;
|
||||
|
||||
include <BOSL2/std.scad>
|
||||
include <BOSL2/shapes2d.scad>
|
||||
include <boltsos_0.4.1/BOLTS.scad>
|
||||
|
||||
CORNER_RADIUS = 3;
|
||||
|
||||
module screw_hole() {
|
||||
rotate([0,90,0]) {
|
||||
cylinder(h=3,d=8);
|
||||
cylinder(h=20,d=4.5);
|
||||
}
|
||||
}
|
||||
|
||||
module plate_mount() {
|
||||
rotate([0,90,0]) {
|
||||
cyl(l=5, d=12, rounding=2);
|
||||
}
|
||||
}
|
||||
|
||||
// Tube
|
||||
* color("grey") {
|
||||
translate([0,0,150]) {
|
||||
tube(od=20,wall=1,h=300);
|
||||
}
|
||||
}
|
||||
/// Tube holder
|
||||
color("red") {
|
||||
difference() {
|
||||
union() {
|
||||
translate([0,0,25]) {
|
||||
cyl(l=50, d=40, rounding=2);
|
||||
}
|
||||
translate([-23,0,25]) {
|
||||
cuboid([18,16,50], rounding=2);
|
||||
}
|
||||
translate([-25,0,25]) {
|
||||
rotate([90,0,0]) {
|
||||
cyl(l=16, d=20, rounding=2);
|
||||
}
|
||||
}
|
||||
translate([-25,8,25]) {
|
||||
rotate([90,0,0]) {
|
||||
cyl(l=5, d=15, rounding=2);
|
||||
}
|
||||
}
|
||||
}
|
||||
translate([0,0,1.5]) {
|
||||
cylinder(h=50,d=21);
|
||||
}
|
||||
translate([-40,-1,0]) {
|
||||
cube([45,2,50]);
|
||||
}
|
||||
cylinder(h=5,d=16);
|
||||
// Main screw hole
|
||||
translate([-25,8,25]) {
|
||||
rotate([90,0,0]) {
|
||||
DIN931("M5");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// Plate
|
||||
color("cyan") {
|
||||
difference() {
|
||||
union() {
|
||||
translate([20,0,60]) {
|
||||
cuboid([15,10,120], rounding=2);
|
||||
}
|
||||
translate([18,0,25]) {
|
||||
cuboid([15,30,50], rounding=2);
|
||||
}
|
||||
translate([25,0,60]) {
|
||||
cuboid([10,70,120], rounding=2);
|
||||
}
|
||||
// Plate mounts
|
||||
// Right side
|
||||
translate([20,-28,0]) {
|
||||
translate([0,0,8]) {
|
||||
plate_mount();
|
||||
}
|
||||
translate([0,0,34]) {
|
||||
plate_mount();
|
||||
}
|
||||
translate([0,0,60]) {
|
||||
plate_mount();
|
||||
}
|
||||
translate([0,0,86]) {
|
||||
plate_mount();
|
||||
}
|
||||
translate([0,0,112]) {
|
||||
plate_mount();
|
||||
}
|
||||
}
|
||||
// Left side
|
||||
translate([20,28,0]) {
|
||||
translate([0,0,8]) {
|
||||
plate_mount();
|
||||
}
|
||||
translate([0,0,34]) {
|
||||
plate_mount();
|
||||
}
|
||||
translate([0,0,60]) {
|
||||
plate_mount();
|
||||
}
|
||||
translate([0,0,86]) {
|
||||
plate_mount();
|
||||
}
|
||||
translate([0,0,112]) {
|
||||
plate_mount();
|
||||
}
|
||||
}
|
||||
// Lever mount
|
||||
translate([25,0,118]) {
|
||||
rotate([90,0,0]) {
|
||||
cyl(l=70, d=10, rounding=2);
|
||||
}
|
||||
}
|
||||
}
|
||||
// Screw holes
|
||||
// Right side
|
||||
translate([17.5,-28,8]) {
|
||||
screw_hole();
|
||||
translate([0,0,26]) {
|
||||
screw_hole();
|
||||
}
|
||||
translate([0,0,52]) {
|
||||
screw_hole();
|
||||
}
|
||||
translate([0,0,78]) {
|
||||
screw_hole();
|
||||
}
|
||||
translate([0,0,104]) {
|
||||
screw_hole();
|
||||
}
|
||||
}
|
||||
// Left side
|
||||
translate([17.5,28,8]) {
|
||||
screw_hole();
|
||||
translate([0,0,26]) {
|
||||
screw_hole();
|
||||
}
|
||||
translate([0,0,52]) {
|
||||
screw_hole();
|
||||
}
|
||||
translate([0,0,78]) {
|
||||
screw_hole();
|
||||
}
|
||||
translate([0,0,104]) {
|
||||
screw_hole();
|
||||
}
|
||||
}
|
||||
// Lever screw hole
|
||||
translate([25,0,118]) {
|
||||
rotate([90,0,0]) {
|
||||
cylinder(h=70,d=3,center=true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user