diff options
| author | Navan Chauhan <navanchauhan@gmail.com> | 2024-02-09 00:04:46 -0700 | 
|---|---|---|
| committer | Navan Chauhan <navanchauhan@gmail.com> | 2024-02-09 00:04:46 -0700 | 
| commit | 8a77bd287749f1c5f7f41ff4a6b568d0f3cfc241 (patch) | |
| tree | ffa00c8a1e1109433b171298d0befdde96a51c9d /MTBCanHolder/12ozCanHolder.scad | |
initial commit
Diffstat (limited to 'MTBCanHolder/12ozCanHolder.scad')
| -rw-r--r-- | MTBCanHolder/12ozCanHolder.scad | 118 | 
1 files changed, 118 insertions, 0 deletions
| diff --git a/MTBCanHolder/12ozCanHolder.scad b/MTBCanHolder/12ozCanHolder.scad new file mode 100644 index 0000000..eaebe7a --- /dev/null +++ b/MTBCanHolder/12ozCanHolder.scad @@ -0,0 +1,118 @@ + + +can_height=122 + 10; // 12.cm +base_width=20; // 2cm +base_depth=5; // 1cm +bolt_head_diameter=10; //6mm for M5 bolt +dist_between_holes=64; // 2.14inch / 64mm +hole_offset=25; // 2cm from origin +bottom_lip_height=4.5; // 4.5mm 2cm (1cm + xyz) +bottom_lip_thickness=5; // 5mm +bottom_lip_base=5; // 10mm +bottom_lip_extrusion=17.5; // 10.5mm +upper_lip_base=5; +upper_lip_thickness=28; // height basically +upper_pushness_thickness=3;  +upper_pusher_base=10; +upper_can_hook_height=10; +upper_can_hook_base=5; +upper_can_hook_width=5; +upper_hook_radius=10; +upper_lip_difference=2.50; + +translate([-20,120,base_depth-2]) { + +rotate([64,0,20]){ + +color([1,0,0]) { + +import("soda_can.stl"); +} +} + +} + + +// Distance from tip to base should 7.5mm +// Distance from tip to left face 6 mm + +module pieSlice(a, r, h){ +  // a:angle, r:radius, h:height +  rotate_extrude(angle=a) square([r,h]); +} + +linear_extrude(base_depth) { +    difference() { +        difference(){ +            square([base_width, can_height]); +            translate([base_width/2,hole_offset,0]){ +                circle(d=bolt_head_diameter); +                translate([0,(bolt_head_diameter)+dist_between_holes,0]) { +                    circle(d=bolt_head_diameter); +                } +            } +        } +    } +} + +// Upper Lip +difference(){ +linear_extrude(upper_lip_thickness){ +translate([0,-upper_lip_base,0]) { +    square([base_width,upper_lip_base]); +} +} + +translate([-2.5,-upper_lip_difference,base_depth/1.5]) { +    linear_extrude(upper_lip_thickness-10-(base_depth/1.5)){ +    square([base_width+5,upper_lip_difference]); +    } +} +} + +// Upper Lip Pusher (?) +translate([0,0,(upper_lip_thickness*7/8)-upper_pushness_thickness]){ +linear_extrude(upper_pushness_thickness){ +translate([0,-upper_pusher_base-upper_lip_base,0]) { +    square([base_width,upper_pusher_base]); +} +} +} + +// Upper Lip Hook (?) +/* +translate([0,0,(upper_lip_thickness-upper_can_hook_height)]){ +linear_extrude(upper_can_hook_height){ +translate([0,,0]) { +    square([base_width,upper_can_hook_base]); +} +} +} +*/ + +translate([base_width,0,upper_lip_thickness-10]){ +rotate([0,-90,0]){ +pieSlice(90+25,upper_hook_radius,base_width); +} +} + + +// Bottom Lip + +linear_extrude((bottom_lip_extrusion) + bottom_lip_thickness) { +    translate([0,can_height,0]) { +        square([base_width,bottom_lip_base]); +    } +} + +translate([0,can_height-bottom_lip_height,(bottom_lip_extrusion)]) { +    linear_extrude(bottom_lip_thickness){ +    square([base_width,bottom_lip_height]); +    } +} +/* +translate([10,0,30]){ +rotate([360-90,45,0]){ +pieSlice(90, 30, 30); +} +}\*/ | 
