Merge pull request #3 from Ruudjhuu/main

Fixed wall profile and base tolerances to match original Gridfinity design
This commit is contained in:
Kenneth 2022-09-18 10:31:59 -07:00 committed by GitHub
commit 30ec1d44a0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -10,8 +10,8 @@ d_height = dht2-h_base;
r_scoop = length*((d_height-2)/7+1)/12 - r_f2; // scoop radius r_scoop = length*((d_height-2)/7+1)/12 - r_f2; // scoop radius
d_wall2 = r_base-r_c1-d_clear*sqrt(2); d_wall2 = r_base-r_c1-d_clear*sqrt(2);
xl = gridx*length-0.5-2*d_wall+d_div; xl = gridx*length-2*d_clear-2*d_wall+d_div;
yl = gridy*length-0.5-2*d_wall+d_div; yl = gridy*length-2*d_clear-2*d_wall+d_div;
echo("====="); echo("=====");
echo(height_total=d_height+h_base+(enable_lip?3.8:0)); echo(height_total=d_height+h_base+(enable_lip?3.8:0));
@ -85,6 +85,10 @@ module profile_base() {
module block_base() { module block_base() {
translate([0,0,h_base]) translate([0,0,h_base])
rounded_rectangle(gridx*length-0.5+0.002, gridy*length-0.5+0.002, h_bot/1.5, r_fo1/2+0.001); rounded_rectangle(gridx*length-0.5+0.002, gridy*length-0.5+0.002, h_bot/1.5, r_fo1/2+0.001);
intersection(){
translate([0,0,-1])
rounded_rectangle(gridx*length-0.5+0.005, gridy*length-0.5+0.005, h_base+h_bot/2*10, r_fo1/2+0.001);
pattern_linear(gridx, gridy, length) pattern_linear(gridx, gridy, length)
render() render()
difference() { difference() {
@ -92,13 +96,13 @@ module block_base() {
mirror([0,0,1]) mirror([0,0,1])
union() { union() {
hull() { hull() {
rounded_square(length-0.5-2*r_c2-2*r_c1, h_base, r_fo3/2); rounded_square(length-0.05-2*r_c2-2*r_c1, h_base, r_fo3/2);
rounded_square(length-0.5-2*r_c2, h_base-r_c1, r_fo2/2); rounded_square(length-0.05-2*r_c2, h_base-r_c1, r_fo2/2);
} }
hull() { hull() {
rounded_square(length-0.5-2*r_c2, r_c2, r_fo2/2); rounded_square(length-0.05-2*r_c2, r_c2, r_fo2/2);
mirror([0,0,1]) mirror([0,0,1])
rounded_square(length-0.5, h_bot/2, r_fo1/2); rounded_square(length-0.05, h_bot/2, r_fo1/2);
} }
} }
@ -118,6 +122,7 @@ module block_base() {
} }
} }
} }
}
module profile_wall_sub() { module profile_wall_sub() {
difference() { difference() {
@ -125,13 +130,13 @@ module profile_wall_sub() {
[0,0], [0,0],
[d_wall/2,0], [d_wall/2,0],
[d_wall/2,d_height-1.2-d_wall2+d_wall/2], [d_wall/2,d_height-1.2-d_wall2+d_wall/2],
[d_wall2,d_height-1.2], [d_wall2-d_clear,d_height-1.2],
[d_wall2,d_height+h_base], [d_wall2-d_clear,d_height+h_base],
[0,d_height+h_base] [0,d_height+h_base]
]); ]);
color("red") color("red")
offset(delta = 0.25) offset(delta = 0.25)
translate([r_base,d_height,0]) translate([r_base-d_clear,d_height,0])
mirror([1,0,0]) mirror([1,0,0])
profile_base(); profile_base();
square([d_wall,0]); square([d_wall,0]);
@ -184,7 +189,7 @@ module block_cutter(x,y,w,h,t,s) {
v_len_tab = d_tabh; v_len_tab = d_tabh;
v_len_lip = d_wall2-d_wall+1.2; v_len_lip = d_wall2-d_wall+1.2;
v_cut_tab = d_tabh - (2*r_f1)/tan(a_tab); v_cut_tab = d_tabh - (2*r_f1)/tan(a_tab);
v_cut_lip = d_wall2-d_wall; v_cut_lip = d_wall2-d_wall-d_clear;
v_ang_tab = a_tab; v_ang_tab = a_tab;
v_ang_lip = 45; v_ang_lip = 45;