The following project was produced using POV Ray (Persistence of Vision Ray Tracer), a program that renders the code it is given. In pairs, we took building with inspired geometry and tried to recreate the form or the idea behind the geometry of the form. From there we could experiment with the geometrical options. My teammate, Gabriel Kakon, and I chose the Baha’i House of Worship in Santiago, Chile by Siamak Harari {read about it here}. The building possesses an organic symbolism from their spiritual interpretation of divine numbers. It was also an excellent choice to study in this context. Below are some of the images produced by the code which appears at the very bottom fo this post.
// POVRAY_KAKON_OWENS.pov
// POVRAY exercise in modelling the Bahai Temple for South America
// G. KAKON and J. OWENS
// April, 2007
// POV Ray for Windows 3.6
//
#include “colors.inc”
#include “shapes.inc”
//perspective (default) camera
camera {
//location <0, 5, 0>
location <3, .6, 3>
//location <2.5,3,-2>
look_at <0,0,0>
right x*image_width/image_height
}
// light source
light_source { <20, 100, 30> color rgb <.3,.2,0>}
//light_source { <2, -5, 3> color White}
light_source { <0, -.5, 0> color Yellow }
light_source { <0, 1.5, 0> color White}
// background
background { color rgb <0, 0, 0>
}
// ———————————————————– ground
difference {
box {<-3000,-1,-3000>,<3000,0,3000>
texture { pigment{ color rgb <.8,.8,.7>}}}
cylinder {<0,-2,0>,<0,.1,0>,.6
texture { pigment{ color rgb <.8,.6,0>}}}
}
// ———————————————————– end of ground
// ———————————————————– axes
#declare axes =
object{
union {
cylinder {<0,0,0>,<3,0,0>,.03
texture { pigment {color Red}}}
cylinder {<0,0,0>,<0,3,0>,.03
texture { pigment {color Green}}}
cylinder {<0,0,0>,<0,0,3>,.03
texture { pigment {color Blue}}}
}
}
//object {axes}
// ———————————————————– shell
#declare stretch = 1.5;
#declare scaler = .95;
#declare Shell =
difference {
object {
sphere{<0,0,0>,1 scale<1,stretch,1>}
translate<0,stretch,0>
scale (1/stretch)}
object {
sphere{<0,0,0>,1 scale<1,stretch,1>}
translate<0,stretch,0>
scale (1/stretch)*scaler}
//texture{ pigment { color White
// filter .5}
// finish { ambient 0.15 diffuse 0.8
// phong 1 reflection 0.82}
//} // end of texture
}
// ———————————————————– end of shell
// ———————————————————– wing
#declare wing =
intersection {
object { Shell }
prism {
linear_sweep
linear_spline
-2, 2, 3,
< 0.0, 0.0>, < -2, 0>, < -2*cos(45), -2*sin(45)>
}
//texture{ pigment { color White
// filter .2}
// finish { ambient 0.15 diffuse 0.8
// phong 1 reflection 0.82}
// } // end of texture
}
// ———————————————————– end of wing
//object { Shell}
//object { wing }
// ———————————————————– top
#declare top =
#declare cut1 =
difference {
object { wing }
object {
box {<-2,-3,2>,<2,.45,-2>}
}
texture{ pigment { color White
filter .2}
finish { ambient 0.15 diffuse 0.8
phong 1 reflection 0.82}
} // end of texture
} //end local
difference {
object { cut1 }
object {
sphere {<-1.8,2.95,2.15>,3}
}
//texture{ pigment { color White
// filter .2}
// finish { ambient 0.15 diffuse 0.8
// phong 1 reflection 0.82}
// } // end of texture
}
// ———————————————————– end of top
//object { top}
// ———————————————————– stem
#declare stem =
union {
object { top }
object {
cylinder {<-.25,.2,-.25>,<-.38,.45,-.38>,.01
}
}
translate <-.2,0,-.30>
rotate 185*y
rotate -5*x
rotate 10*z
texture{ pigment { color rgb <1,.95,.8>
filter .2}
finish { ambient 0.4 diffuse 0.9
reflection 0.3}
} // end of texture
}
// ———————————————————– end of stem
//object {stem translate <0,-.4,0>}
#declare Count = 0;
#declare r = 9;
#declare n = 9; //CHANGE NUMBER OF PETALS
#declare out =
union {
#while (Count <= n)
object {stem
//translate <-.02*r,0,0>
rotate <0,Count*(360/(n+1)),0>
}
#declare Count = Count+1;
#end }
object {out translate <0,-.4,0>}




