·

2 min read

# Brutalism Reimagined

For this week's Creative Code challenge : Brutalism, I decided to take the rules of brutalism and applied them in the language of OpenSCAD(openscad.org).

I designed a building that follows the rules of Brutalism in both directions as shown in the pics below.

• Video Shown First

• Images Follow After

• Code shown Below

Brutalism Rules - 20bedfordway.com/news/guide-to-brutalist-ar../

1. Rough unfinished surfaces

2. Unusual shapes

3. Heavy-looking materials

4. Massive forms

5. Small windows in relation to the other parts

Video Of the Brutalism Architectures in Motion with Audio coded by SonicPi

### OpenSCAD Code

``````
union(){
color("white", 1.0) cube([38,78,18],true);
rotate ([0,0,0]) color("black", 1.0) cube([4,78,18],true);
}

for ( i = [0 : 7] ){
translate([-40,i * 7,31]) rotate ([0,0,0]) color("black", 1.0) sphere(r = 7);
}

difference(){
translate([0,0,31]) color("white", 1) cube([93,78,18],true);

//round windows on second white block
translate([40,0,31]) rotate ([0,0,0]) color("black", 1.0) sphere(r = 7);
}

translate([0,0,63]) color("white", 0.86) cube([140,80,23],true);

//Tranlating the cubes above the turqoise to satisified rule number 2

//windows

translate([0,0,15]) color("DarkSlateGray", 0.76) cube([28,48,14],true);
translate([23,0,15]) color("DarkSlateGray", 0.76) cube([28,48,14],true);

union(){
for ( i = [0 : 7] ){
translate([-37,20 - i * 6,14]) rotate ([0,0,0]) color("black", 1.0) sphere(r = 2);
}

translate([-23,0,15]) color("DarkSlateGray", 0.76) cube([28,48,14],true);

}

//set 2 of monochromatic (darkslateGray)
translate([-23,0,80]) color("gray", 0.76) cube([28,48,14],true);
translate([0,0,80]) color("DarkSlateGray", 0.88) cube([28,48,14],true);
translate([23,0,80]) color("DarkSlateGray", 0.88) cube([28,48,14],true);

//set 3& 4 of monochromatic (darkslateGray)

translate([-37,0,92]) color("DarkSlateGray", 0.76) cube([28,48,14],true);
translate([0,0,92]) color("DarkSlateGray", 0.76) cube([28,48,14],true);
translate([37,0,92]) color("gray", 0.76) cube([28,48,14],true);

translate([-51,0,104]) color("DarkSlateGray", 0.76) cube([28,48,14],true);
translate([0,0,104]) color("grey", 0.76) cube([28,48,14],true);
translate([51,0,104]) color("DarkSlateGray", 0.76) cube([28,48,14],true);

//Ivory Cylinders
translate([-30,0,40]) color("Ivory", 0.22) cylinder(h=15, r1=9.5, r2=19.5, center=false);
translate([0,0,40]) color("silver", 0.82) cylinder(h=15, r1=9.5, r2=19.5, center=false);
translate([30,0,40]) color("Ivory", 0.22) cylinder(h=15, r1=9.5, r2=19.5, center=false);
translate([0,0,110]) color("black", 0.62) cylinder(h=15, r1=9.5, r2=22.5, center=false);
translate([0,0,120]) color("black", 0.62) cylinder(h=15, r1=9.5, r2=22.5, center=false);
``````

### Sonic Pi Code ( Slowed Down)

``````
with_fx :ping_pong do
with_fx :echo do
live_loop :eddie do
synth :mod_fm
play choose([:Fs3,:Ds5,:B3]),attack: dice(4),decay: dice(5),sustain: 2,release:[1,1.5,3].choose
sleep [0.25,1].choose
end
end
end
``````