| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- include <../config/cord.scad>
- include <../config/thread.scad>
- include <../config/hole.scad>
- include <thread.scad>
- module cord_object() {
- height = thread_height
- + cord_base_thickness
- + cord_hole_diameter
- + cord_base_thickness * 2;
-
- diameter_default = thread_top_diameter
- + cord_base_thickness * 2;
- diameter_alt = hole_entrance;
- diameter = max(diameter_default, diameter_alt);
- module base_object() {
- cylinder(r = diameter / 2, h = height, center = true);
- }
- module thread() {
- center = height / 2
- - thread_height / 2;
- translate([0, 0, center]) {
- rotate([180, 0, 0]) {
- thread_object();
- }
- }
- }
- module cord_hole() {
- radius = cord_hole_diameter / 2;
- move = cord_base_thickness
- + cord_hole_diameter / 2
- - height / 2;
- translate([0, 0, move]) {
- rotate([90, 0, 0]) {
- cylinder(r = radius, h = diameter, center = true);
- }
- }
- }
- color("#9230cf") {
- render() {
- difference() {
- base_object();
- thread();
- cord_hole();
- }
- }
- }
- }
|