| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- include <../config/hook.scad>
- include <../config/hole.scad>
- include <../config/wall.scad>
- module hook_mounting_hole_shape() {
- circle(r = hook_mounting_hole / 2);
- }
- module hook_entrance_shape() {
- outside_radius = (hole_entrance - hook_entrance_margin) / 2;
-
- difference() {
- circle(r = outside_radius);
- hook_mounting_hole_shape();
- }
- }
- module hook_entrance_object() {
- linear_extrude(height = hook_entrance_height) {
- hook_entrance_shape();
- }
- }
- module hook_holding_shape() {
- outside_radius = (hole_holding - hook_holding_margin) / 2;
- difference() {
- circle(r = outside_radius);
- hook_mounting_hole_shape();
- }
- }
- module hook_holding_object() {
- linear_extrude(height = wall_thickness + hook_holding_height_margin) {
- hook_holding_shape();
- }
- }
- module hook_object() {
- color(hook_color) {
- hook_entrance_object();
- translate([0, 0, hook_entrance_height]) {
- hook_holding_object();
- }
- }
- }
|