# HG changeset patch # User Paul Boddie # Date 1412635172 -7200 # Node ID cf96720ec877ff66ced2e2cc999b93e13cb1c95d # Parent 88a49e3cbeb9d9fd9543a228d982afae34e82fe9 Changed the cavity features around the base of the cartridge to use internal dimensions. diff -r 88a49e3cbeb9 -r cf96720ec877 cartridge.scad --- a/cartridge.scad Mon Oct 06 23:08:59 2014 +0200 +++ b/cartridge.scad Tue Oct 07 00:39:32 2014 +0200 @@ -148,33 +148,38 @@ /* The back cavity is the indented part at the bottom of the back of the - cartridge. + cartridge. It appears to be mechanically superfluous, just making the + shape of the cartridge look a bit fancier. */ back_cavity_width = 68.0; back_cavity_inner_width = 65.0; - back_cavity_offset_from_left = 10.5; - back_cavity_inner_offset_from_left = 12.0; + back_cavity_offset_from_inner_left = 9.0; + back_cavity_inner_offset_from_inner_left = 10.5; back_cavity_height = 13.5; back_cavity_inner_height = 12.0; back_cavity_depth = 1.5; /* - The effect of the cavity on the inside of the case. + The effect of the cavity on the inside of the case. The most important + measurement is the maximum offset since it defines the width of the + internal space that should accommodate the plastic guides of the Plus 1 + socket. */ - inner_back_cavity_offset = 1.0; - inner_back_cavity_offset_from_left = back_left; - inner_back_slope_offset_from_left = 10.0; - inner_back_slope_width = 2.5; inner_back_slope_depth = 2.5; + inner_back_slope_width = inner_back_slope_depth; + inner_back_slope_max_offset = 10.5; + inner_back_slope_min_offset = inner_back_slope_max_offset - inner_back_slope_width; - inner_back_edge_offset = 2.0; + /* The tapering off of the inner back edge. */ + inner_back_edge_width = 69.0; inner_back_edge_height = 3.0; inner_back_edge_depth = 1.5; - inner_front_edge_offset = 0.5; + /* The tapering off of the inner front edge. */ + inner_front_edge_width = width - front_side * 2; inner_front_edge_height = 3.0; inner_front_edge_depth = 1.5; @@ -436,15 +441,14 @@ /* Inner front edge cavity. */ - translate([inner_front_edge_width / 2, - -front_depth + inner_front_edge_offset, -height / 2]) + translate([inner_front_edge_width / 2, -int_front_depth, -height / 2]) rotate([0, -90, 0]) linear_extrude(height = inner_front_edge_width) polygon([ + [-extra, -inner_front_edge_depth], + [0, -inner_front_edge_depth], + [inner_front_edge_height, 0], [-extra, 0], - [0, 0], - [inner_front_edge_height, inner_front_edge_depth], - [-extra, inner_front_edge_depth], ]); /* Inner top cutout for the top and sides of the back portion. */ @@ -601,15 +605,15 @@ translate([0, back_depth, -height / 2]) linear_extrude(height = back_cavity_height) - translate([-width / 2, 0, 0]) + translate([-int_width / 2, 0, 0]) polygon([ - [back_cavity_offset_from_left, 0], - [back_cavity_inner_offset_from_left, + [back_cavity_offset_from_inner_left, 0], + [back_cavity_inner_offset_from_inner_left, -back_cavity_depth], - [back_cavity_inner_offset_from_left + + [back_cavity_inner_offset_from_inner_left + back_cavity_inner_width, -back_cavity_depth], - [back_cavity_offset_from_left + + [back_cavity_offset_from_inner_left + back_cavity_width, 0] ]); @@ -629,36 +633,32 @@ /* Inner back cavities. */ - translate([0, back_depth - inner_back_cavity_offset, -height / 2]) + translate([0, int_back_depth, -height / 2]) linear_extrude(height = int_connector_height) - translate([-width / 2, 0, 0]) + translate([-int_width / 2, 0, 0]) polygon([ - [inner_back_cavity_offset_from_left, 0], - [inner_back_slope_offset_from_left, 0], - [inner_back_slope_offset_from_left + - inner_back_slope_width, - -inner_back_slope_depth], - [inner_back_cavity_offset_from_left, - -inner_back_slope_depth] + [0, 0], + [inner_back_slope_max_offset, 0], + [inner_back_slope_min_offset, + inner_back_slope_depth], + [0, inner_back_slope_depth] ]); - translate([0, back_depth - inner_back_cavity_offset, -height / 2]) + translate([0, int_back_depth, -height / 2]) linear_extrude(height = int_connector_height) - translate([-width / 2, 0, 0]) + translate([int_width / 2, 0, 0]) polygon([ - [width - inner_back_slope_offset_from_left, 0], - [width - inner_back_cavity_offset_from_left, 0], - [width - inner_back_cavity_offset_from_left, - -inner_back_slope_depth], - [width - inner_back_slope_offset_from_left - - inner_back_slope_width, - -inner_back_slope_depth] + [0, 0], + [-inner_back_slope_max_offset, 0], + [-inner_back_slope_min_offset, + inner_back_slope_depth], + [0, inner_back_slope_depth] ]); /* Inner back edge cavity. */ translate([inner_back_edge_width / 2, - back_depth - inner_back_edge_offset, -height / 2]) + int_back_depth + inner_back_edge_depth, -height / 2]) rotate([0, -90, 0]) linear_extrude(height = inner_back_edge_width) polygon([