## Printing Scale Model Concrete Blocks

For reasons that undoubtedly make sense to him, my buddy Aitch is moving to coastal NC. Seeing as how we lived in Raleigh for half a decade, I figure he needs some hints on how to blend in…

The solid model looks about the way you’d expect:

The webs are slightly thinner than in real life, but it looks OK to me. The web came out slightly over 3 thread widths = 1.5 mm, to ensure they get a bit of fill rather than being two distinct threads. I originally tried making the web exactly 3 threads wide, which produced tiny dots of fill on the sides and corners. They printed with 0.20 infill; they’d print faster with 1.00 infill or all-solid layers.

You’ll want to create a pile o’ blocks at once, of course, although this array took about two hours:

```// Scale model concrete block
// Ed Nisley KE4ZNU February 2013

// Extrusion parameters must match reality!
// Print with +0 shells and 3 solid layers

function IntegerMultiple(Size,Unit) = Unit * ceil(Size / Unit);

Protrusion = 0.1;           // make holes end cleanly

//----------------------
// Dimensions

BlockWidth = Scale * 190;
BlockLength = Scale * 390;
BlockHeight = BlockWidth;

WebWidth = Scale * 30;

CoreSize = [(BlockWidth - 2*WebWidth),(BlockLength - 4*WebWidth)/2,BlockHeight];

//----------------------
// Useful routines

module ShowPegGrid(Space = 10.0,Size = 1.0) {

Range = floor(50 / Space);

for (x=[-Range:Range])
for (y=[-Range:Range])
translate([x*Space,y*Space,Size/2])
%cube(Size,center=true);

}

//-------------------
// Component parts

translate([0,0,(Size[2] - Protrusion)/2])
minkowski() {
}
}

//----------------------
// Build it!

ShowPegGrid();

difference() {
translate([0,0,BlockHeight/2])
cube([BlockWidth,BlockLength,BlockHeight],center=true);
for (i = [-1,1])
translate([0,i*(CoreSize[1] + WebWidth)/2,0])