Add screwhole to strap clip
This commit is contained in:
		
							parent
							
								
									3e5afb4ebd
								
							
						
					
					
						commit
						5a274cdb03
					
				| @ -9,5 +9,14 @@ module cubi(s, fillet=0, edges=EDGES_ALL) { | |||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | module screwhole(d, h, head=true) { | ||||||
|  |     $fn=$preview ? 5 : 20; | ||||||
|  |     translate([0, 0, h]) cylinder(d=d*1.5, h=d*0.5); | ||||||
|  |     split=h*0.5; | ||||||
|  |     translate([0, 0, split]) cylinder(d=d, h=(h-split)); | ||||||
|  |     cylinder(d2=d, d1=d*0.1, h=split); | ||||||
|  |     cylinder(d2=d*0.6, d1=d*0.6, h=split/2); | ||||||
|  | } | ||||||
|  | 
 | ||||||
| function vec_sum(v, w) = [v.x + w.x, v.y + w.y, v.z + w.z]; | function vec_sum(v, w) = [v.x + w.x, v.y + w.y, v.z + w.z]; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,14 +1,22 @@ | |||||||
| links_count=3; // [1..20] | links_count=3; // [1..20] | ||||||
| include_terminal=true; // [true,false] | include_terminal=true; // [true,false] | ||||||
|  | include_screwhole=true; // [true,false] | ||||||
|  | clip_screwhole=2; | ||||||
|  | 
 | ||||||
|  | //export=302;//MODEL_CLIP_A; | ||||||
|  | //export=303;//MODEL_CLIP_B; | ||||||
| 
 | 
 | ||||||
| include <export.scad> | include <export.scad> | ||||||
| use <BOSL/transforms.scad> | use <BOSL/transforms.scad> | ||||||
| use <BOSL/shapes.scad> | use <BOSL/shapes.scad> | ||||||
| include <BOSL/constants.scad> | include <BOSL/constants.scad> | ||||||
| 
 | 
 | ||||||
|  | use <specs_strap.scad> | ||||||
| use <specs_platform.scad> | use <specs_platform.scad> | ||||||
| 
 | 
 | ||||||
|  | use <common.scad> | ||||||
| use <strap_common.scad> | use <strap_common.scad> | ||||||
|  | use <platform_common.scad> | ||||||
| 
 | 
 | ||||||
| if (is_model_strict(MODEL_LINKS)) { | if (is_model_strict(MODEL_LINKS)) { | ||||||
|     echo("==============================="); |     echo("==============================="); | ||||||
| @ -81,7 +89,13 @@ module clip() { | |||||||
|         slack=groove?0.2:0; |         slack=groove?0.2:0; | ||||||
|         joiner_size=[entry_size.x-6+slack, entry_size.y-6+slack, entry_size.z-3+slack]; |         joiner_size=[entry_size.x-6+slack, entry_size.y-6+slack, entry_size.z-3+slack]; | ||||||
|         joiner_pos=[entry_pos.x, entry_pos.y, entry_pos.z - entry_size.z/2 + joiner_size.z/2]; |         joiner_pos=[entry_pos.x, entry_pos.y, entry_pos.z - entry_size.z/2 + joiner_size.z/2]; | ||||||
|         translate(joiner_pos) cube(joiner_size, center=true); |         difference() { | ||||||
|  |             translate(joiner_pos) cube(joiner_size, center=true); | ||||||
|  |             screw_cutout(); | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  |     module screw_cutout() { | ||||||
|  |         if (include_screwhole) down(clip_size.z/2) screwhole(d=clip_screwhole, h=clip_size.z); | ||||||
|     } |     } | ||||||
|      |      | ||||||
|     module model() { |     module model() { | ||||||
| @ -93,6 +107,7 @@ module clip() { | |||||||
|             } |             } | ||||||
|             right(clip_size.x/2) socket_cutout(); |             right(clip_size.x/2) socket_cutout(); | ||||||
|             left(clip_size.x/2) socket_cutout(); |             left(clip_size.x/2) socket_cutout(); | ||||||
|  |             screw_cutout(); | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|      |      | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user