~kennylevinsen/skadis-brackets

e6a4343b33fb58a9e5131edb20d3c20b79739069 — Kenny Levinsen 1 year, 2 months ago 9118caa
Add straight hook
1 files changed, 62 insertions(+), 0 deletions(-)

A hook-straight.scad
A hook-straight.scad => hook-straight.scad +62 -0
@@ 0,0 1,62 @@
$fn = 100;

include  <common.scad>;

module frontHook(hook_length=50, hook_angle=45) {
    radius=2.45;
    firsthook_angle=90;
    secondhook_angle=hook_angle;
    firsthook_radius=8;
    hook_radius=10;
    union() {
        translate([0,-7.5, 12.4-radius]) {
            translate([0,0,firsthook_radius-7.5]) {
                union() {
                    rotate([90,firsthook_angle,90])
                        rotate_extrude(angle=firsthook_angle)
                            translate([firsthook_radius,0,0])
                                circle(r=radius);
                }
            }
            translate([0, 8, -9.6])
                cylinder(h=hook_length+9.6, r=radius);
            
            translate([0,8+10,hook_radius-10+hook_length]) {
                union() {
                    rotate([90,180+secondhook_angle,90])
                        rotate_extrude(angle=secondhook_angle)
                            translate([hook_radius,0,0])
                                circle(r=radius);
                    rotate([270-secondhook_angle,0,0])
                        translate([0, 0, -hook_radius])
                            sphere(r=radius);
                }
            }
            translate([0, 8, -7.5]) {
                union() {
                    rotate([90,0,0])
                        cylinder(r=radius, h=14);
                    sphere(r=radius);
                    translate([0, -14, 0])
                        sphere(r=radius);
                }
            }
            hull() {
                union() {
                    translate([0, -6, -7.5-radius]) {
                        cylinder(r=radius, h=radius);
                    }
                    translate([0, 8, -7.5-radius]) {
                        cylinder(r=radius, h=radius);
                    }
                }
            }
        }
    }
}


union() {
    backTabs();
    frontHook(hook_length=40);
}
\ No newline at end of file