Columns (2)


Well, let’s do for a moment something that could seem like what Michael Hansmeyer has done. He worked with cubes, altough he decided to subdivide the cubes like folding them; here the issue will be simple rotations of the cube, that can give you unexpected results. Hansmeyer has used in his works processing, a graphic software that is open source and free, and I’m using here something older, albeit somehow simple and effective, povray, which also happens to be free to download and use at will (some are even using it to 3d print sugar elements…). In the end, this could be a design for a part of column.


If you ask the cube to spin around a vertical axis, you get in the end a cylinder (the upper image is made of just 10 cubes, so it is not still there).


But if you gently ask your cube to rotate also around an horizontal axis as it turns around the vertical axis, some things start to happen. The upper image shows 10 iterations of that, and the lower one 100 iterations.

column4 column-b-1

To better grasp what happens, lets use two slightly shorter red and green slabs in the upper and lower parts of the rotating cube…

column-b-2 column-b-3 column-c-1

Shape becomes rather flamboyant (and, to be honest, not architectural at all) when you change the proportion of the green and red companions.


10 iterations


100 iterations

column-c-41.000 iterations

The geometrical code for that last image is, in pov terms, as follows:

#declare n=0; 
#declare ndiv=1000;
#while (n<ndiv)

 box {<-1.1, -1.1, -1> < 1.1, 1.1, 1> translate <0,1.5,0> rotate <0,360*n/ndiv,360*n/ndiv> pigment{ color rgbf<1, .9, .5,0>} } 
 box {<-.1, -1, -.1> < .1, .1, -3.1> translate <0,1.5,0> rotate <0,(360/ndiv)*n,(360/ndiv)*n> pigment{ color rgbf<1, 0, 0,0>} } 
 box {<-.1, -.1, 1> < .1, .1, 3.1> translate <0,1.5,0> rotate <0,(360/ndiv)*n,(360/ndiv)*n> pigment{ color rgbf<0, 1, 0,0>} }
 sphere { <-1.1,-1.1, -1> 0.5 translate <0,1.5,0> rotate <0,(360/ndiv)*n,(360/ndiv)*n> pigment{ color rgbf<.7, .8, 1,0>} }
 sphere { <1.1,1.1, 1> 0.5 translate <0,1.5,0> rotate <0,(360/ndiv)*n,(360/ndiv)*n> pigment{ color rgbf<1, .5, .5,0>} }

#declare n=n+1 ;

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s