3D Connecting Building Blocks
3D Connecting Building Blocks
Published 2020-10-02T03:05:14+00:00
These building blocks can be used to teach basics about geometry by giving a visual, interactable tool for finding areas and volumes. The blocks can be used to demostrate how equations like length times width find an area of a rectangle and then can also consider height to find volume. Shapes like trapezoids, rectangles, and trangles can be made with these blocks. Each block weighs approximatly 10 grams so each block is around twenty cents to print. Pricing for similar blocks on Amazon ranges from 17 cents to 40 cents so the blocks are better prices then some equal price with others.
Open Source Code
//Basic Building Block
l = 25.4;
w = 25.4;
h = 25.4;
h1 = l+6;
h2 = h1/2;
r = 8;
r2 = 7.6;
r3 = 9;
difference (){
union(){cube( [l,w,h], center = true);
cylinder( h2,r3,r2, center = false, $fn=100);
};//union
rotate ([90,90,0]) cylinder( h,r,r, center = true, $fn=100);
rotate ([0,90,0]) cylinder( h,r,r, center = true, $fn=100);
rotate ([180,0,0]) cylinder( h2,r,r, center = false, $fn=100);
}//difference
//Connector Building Block
l = 25.4;
w = 25.4;
h = 25.4;
h1 = l+6;
h2 = h1/2;
r = 7.6;
r2 = 9;
union(){cube( [l,w,h], center = true);
cylinder( h2,r2,r, center = false, $fn=100);
rotate ([90,90,0]) cylinder( h2,r2,r, center = false, $fn=100);
rotate ([0,90,0]) cylinder( h2,r2,r, center = false, $fn=100);
rotate ([270,0,0]) cylinder( h2,r2,r, center = false, $fn=100);
rotate ([0,270,0]) cylinder( h2,r2,r, center = false, $fn=100);
rotate ([180,0,0]) cylinder( h2,r2,r, center = false, $fn=100);
};
Triangle Part 1
len=25.4;
diam=8;
diam2= 7.6;
diam3 = 9;
h = (len/2) + 2;
difference(){
union(){cube([len,len,len],center=true);
rotate ([180,0,0]) cylinder( h,diam3,diam2, center = false, $fn=100);
}//union
translate([len/2,0,len])
rotate([0,45,0])
cube([2*len,2*len,2*len],center=true);
translate([-len/4,0,0]) rotate ([0,270,0]) cylinder( h,diam,diam, center = false, $fn=100);
}//difference
// triangle block connector
len=25.4;
diam=8;
h = (len/2) + 1;
difference(){
cube([len,len,len],center=true);
translate([len/2,0,len])
rotate([0,45,0])
cube([2*len,2*len,2*len],center=true);
translate([-len/3.2,0,0]) rotate ([0,270,0]) cylinder( h,diam,diam, center = false, $fn=100);
translate([0,0,-len/3.2]) rotate ([180,0,0]) cylinder( h,diam,diam, center = false, $fn=100);
}//difference
Date published | 02/10/2020 |
Support Free | YES |