TITLE: Angst in the Paints
NAME: Michael Chelmecki
COUNTRY: United States
EMAIL: zerozerozerozero@wyan.org
WEBPAGE: A web page where people might find out more about you or your image
TOPIC: MINIMALISM
COPYRIGHT: I SUBMIT TO THE STANDARD RAYTRACING COMPETITION COPYRIGHT.
JPGFILE: minartga.jpg
RENDERER USED: 
    povray 3.6

TOOLS USED: 
    IrfanView - convert to JPEG, gamma correct

RENDER TIME: 
    17m 19s

HARDWARE USED: 
    AMD K6, Mr. Coffee

IMAGE DESCRIPTION: 

I was taken with the notion of a "minimalist" work of art displayed in a gallery
setting
full of excessive and pretentious ornamentation.  Legitimate students of art
history are
likely to find the "dorionicoryzantine" columns particularly offensive. The "art
work"
itself is the most deliberately overly simplistic yet convoluted construct since
the
introduction of "Trickle Down Economics".  Primarily, the image was an excuse to
have
fun fiddling about with CSG in POV-Ray.

DESCRIPTION OF HOW THIS IMAGE WAS CREATED: 

Straight POV-Ray - Lots of #while loops using basic CSG
font used: Liffey Script SF (Baln.ttf), Arial (arial.ttf)
40% "according to plan" - 50% trial and error - 10% lucky accidents

Here's the POV source code:
(Poorly organized and commented due to last minute finish - sorry)

// povray file for minartga - Minamalism, Art Gallery A.K.A. "Angst in the
Paints"
global_settings { assumed_gamma 2.2 }
#include "shapes.inc"
sky_sphere { pigment {rgb<.8,.8,1>}}
camera { location <5,8, -40> direction <0, 0, 3.4> up <0, 1, 0>right 
x*image_width/image_height look_at <.70, 4.8, 0>}  

light_source { <5,15, -15> colour rgb<.8,1,1> }light_source { <-3,15, -15>
colour rgb<1,.9,.9> }
#declare MGld =texture{ pigment{color rgb<.8,.75,.3> }
        finish{ambient .05 diffuse .55 reflection .4 phong 1 phong_size 30
metallic} rotate<90,0,0>} 
#declare BWht =texture{ pigment{color rgb<1,1,1> }
        finish{ambient .5 diffuse .3 reflection .05 phong 1 phong_size 30 }}
#declare BLBl =texture{ pigment{color rgb<.9,.9,1> }
        finish{ambient .5 diffuse .3 reflection .05 phong 1 phong_size 30 }}    
   
                
#declare BBlk =texture{ pigment{color rgb<.1,.1,.1> }
        finish{ambient .5 diffuse .3 reflection .05 phong 1 phong_size 10 }}    
   
#declare RdPt =texture{ pigment{color rgb<.7,.1,.07> }
        finish{ambient .4 diffuse .55 reflection .02 phong .2 phong_size 30 }}  
     
//Floor        
box{<-200,0,-200>,<200,-.1,200> texture{pigment{checker rgb<.95,.95,.95>
rgb<.8,.9,.8>}
finish{ambient .6 diffuse .25 reflection .05}}}   
cylinder{<-200,.6,0>,<-2.5,.6,0>,.07 texture{BWht}}
box{<-200,.6,.1>,<-2.5,-.1,-.07> texture{BWht}}
cylinder{< 200,.6,0>,< 2.5,.6,0>,.07 texture{BWht}} box{< 200,.6,.1>,<
2.5,-.1,-.07> texture{BWht}}

difference {box{<-500,0,0>,<500,200,20>}    
  cylinder{<0,-.1,0>,<0,7,0>,2.2}
      #declare dca=-75; #while (dca<80)
        cylinder{<0,-.1,2.0>,<0,7,2.0>,.3 rotate y*dca} 
          intersection{intersection{sphere{<0,0,0>,2.3} sphere{<0,2.3,0>,2.15
scale<1,1,3>} scale<.32,1,1> 
          translate<0,7,0> rotate y*dca} box{<-9,7.30,.02>,<9,9.15,9>}  }
     #declare dca=dca+15; #end  
  difference{cylinder{<0,7.1,0>,<0,7.2,0>,2.3}box{<-3,-.1,.1>,<3,8,-3>} }  
  sphere{<0,7,0>,2.2}
  box{<-1,-.1,-1>,<1,7,1> rotate<0,45,0> translate<-.95,0,0>} 
box{<-1,-.1,-1>,<1,7,1> rotate<0,45,0> translate<.95,0,0>}
texture{BWht}} 

#declare AEP=-90; #while (AEP<90) sphere{<0,0,0>,.05 translate<0,2.26,0> rotate
<0,0,AEP> translate <0,7,0> texture{BWht}}  
#declare AEP=AEP+2; #end 

#declare AEP=-90; #while (AEP<90) sphere{<0,0,0>,.05 translate<0,3.1,0> rotate
<0,0,AEP> translate <0,7,0> texture{BWht}}  
#declare AEP=AEP+1.47; #end 

//Central Ornament
#declare CPtlA = union{
sphere{<0,0,0>,.05 scale<1,1.7,1> translate <0,.07,0>} 
sphere{<0,0,0>,.05 scale<1,1.7,1> translate <0,.07,0> rotate<0,0,-25>}   
sphere{<0,0,0>,.05 scale<1,1.7,1> translate <0,.07,0> rotate<0,0, 25>} } 

#declare CPtl = difference{object {CPtlA} object {CPtlA scale<.9,.9,.9>
translate <0,.001,-.05>}}  

#declare COrn = union{sphere{<0,0,0>,.02} #declare PPos=0; #while (PPos<360) 
object {CPtl rotate<0,0,PPos+36>}  
#declare PPos=PPos+72; #end 
scale <1.8,1.8,1.4>}//end COrn
object{COrn translate <0,9.62,0> texture{BWht}}

#declare LVn = union{ #declare VEC=0; #while (VEC<290)
sphere{<0,0,0>,.02 scale<2,1,2> translate< .2+.004*VEC,0,0> rotate
<0,0,sin(VEC/80)*.07*VEC>} 
sphere{<0,0,0>,.02 scale<2,1,2> translate<-.2-.004*VEC,0,0> rotate
<0,0,-sin(VEC/80)*.07*VEC> }  


#declare VEC=VEC+1; #end } #declare OPos=24; #while(OPos<90) 
object{COrn scale <.6,.6,.7> translate<0,2.62,0> rotate<0,0,-OPos> translate
<0,7,0> texture{BWht}} 
object{COrn scale <.6,.6,.7> translate<0,2.62,0> rotate<0,0, OPos> translate
<0,7,0> texture{BWht}} 
object{LVn  translate<0,2.62,0> rotate<0,0,-OPos> translate <0,7,0>
texture{BWht}} 
object{LVn  translate<0,2.62,0> rotate<0,0, OPos> translate <0,7,0>
texture{BWht}}
#declare OPos=OPos+18; #end


//icanthus leaf
#declare iclf = union{ #declare ilma=15; #while (ilma<100)            
       union{sphere{<0,0,0>,.025-.015*sin((ilma-15)/45) }
       cylinder{<0,0,0>,<.18-.19*(ilma/120),.05,0>,.005}  
cylinder{<0,0,0>,<-.18+.19*(ilma/120),.05,0>,.005}
       translate <0,0,.2> rotate <-ilma,0,0>}
 #declare ilma=ilma+2; #end  scale <.7,1.6,.7> }  

// begin identical column elements
#declare idce= union{ box{<-.5,0,-.5>,<.5,.15,.5>} box{<-.5,6.85,-.5>,<.5,7,.5>}

box{<-.4,0,-.4>,<.4,.3,.4>} box{<-.4,6.7,-.4>,<.4,7,.4>}
union{ #declare szo=0; #while (szo<.96)
  cylinder{<-.4,.1,-.5+szo>,<-.4,.1,-.5+szo+.12>,.2}
cylinder{<.4,.1,-.5+szo>,<.4,.1,-.5+szo+.12>,.2} #declare szo=szo+.2;  #end
  box{<-.4,.3,-.5>,<.4,.1,.5>}
  #declare isa=0; #declare isr= .19; #while(isa<670)  
  sphere{<0,0,-.52,>,.02  translate<0,isr,0> rotate <0,0,0+isa> translate
<-.4,.1,0>}
  sphere{<0,0,-.52,>,.02  translate<0,isr,0> rotate <0,0,0-isa> translate <
.4,.1,0>} 
  #declare isa=isa+.05; #declare isr=isr-.00001;  #end
  cylinder{<-.4,.29,-.52>,<.4,.29,-.52>,.02} 
cylinder{<-.25,.16,-.52>,<.25,.16,-.52>,.02} 
  cylinder{<0,-.1,0>,<0,.22,0>,.48}
 translate<0,7.0,0>}
 
 union{ #declare ilma=15; #while (ilma<105)            
       union{sphere{<0,0,0>,.025-.015*sin((ilma-15)/45) }
       cylinder{<0,0,0>,<.2-.19*(ilma/120),.05,0>,.005}  
cylinder{<0,0,0>,<-.2+.19*(ilma/120),.05,0>,.005}
       translate <0,0,.2> rotate <-ilma,0,0>}
 #declare ilma=ilma+2; #end  scale <.7,1.6,.7> }  
  #declare iclfa = 0; #while (iclfa<360) 
  object{iclf translate<0,7.28,-.44> rotate<0,iclfa,0> translate<0,-.05,-.12>}
  object{iclf translate<0,7.28,-.44> rotate<0,iclfa+18,0> translate<0,
.15,-.12>}  
  #declare iclfa=iclfa+36; #end
 
cylinder{<0,7,0>,<0,7.34,0>,.34 translate<0,0,-.13>}
cone{<0,7,0>,.25,<0,7.72,0>,.32 translate<0,0,-.13>}


difference{sphere{<0,0,0>,.4  translate<0,7.9,-.13>}torus{.4,.02 
translate<0,7.9,-.13>}
 #declare llp=0;  #while (llp<180) torus{.4,.02 rotate<0,0,90> rotate<0,llp,0>
translate<0,7.9,-.13> } 
 #declare llp=llp+22.5; #end}  torus{.17,.04  translate<0,8.25  ,-.13>}  }//end
idce

#declare Clmn1 = union{  object{idce}
#declare ceh=.15; #while (ceh<6.7)   sphere{<0,0,0>,.3 translate<0,ceh,.05>
rotate <0,-ceh*850,0>} #declare ceh=ceh+.01;  #end   
texture{BWht}} 

#declare Clmn2 = union{ object{idce}
#declare ceh=.15; #while (ceh<6.7)   sphere{<0,0,0>,.3 translate<0,ceh,.05>
rotate <0,ceh*850,0>} #declare ceh=ceh+.01;  #end    
texture{BWht}} 

object{Clmn1 translate<-2.6,0,-.3>} object{Clmn2 translate< 2.6,0,-.3>} 
 
#declare Scrl=union{
#declare SCRA=0; #while (SCRA<=720)
union{sphere{<0,0,-.6>,.08} sphere{<0,0,.6>,.08}
sphere{<0,0,-.5>,.08} sphere{<0,0,.5>,.08}sphere{<0,0,-.4>,.08}
sphere{<0,0,.4>,.08}
sphere{<0,0,-.3>,.08} sphere{<0,0,.3>,.08}sphere{<0,0,-.2>,.08}
sphere{<0,0,.2>,.08}
sphere{<0,0,-.1>,.08} sphere{<0,0,.1>,.08}sphere{<0,0,0>,.08} 
translate <0,SCRA*.00035,0> rotate <0,0,SCRA>}
union{cylinder{<0,0,-.6-SCRA*.0006>,<0,0,.6+SCRA*.0006>,.06}
sphere{<0,0,-.6-SCRA*.0006>,.06} sphere{<0,0,.6+SCRA*.0006>,.06}
translate <0,720*.00035,0> rotate <0,0,720> translate<-.0016*SCRA,0,0>}
#declare SCRA=SCRA+1;    #end texture{BWht}}

#declare Cap = union{object{Scrl translate<1.2,4.5,0> rotate<0,30,0>}object{Scrl
translate<1.2,4.5,0> rotate<0,150,0>}
object{Scrl translate<1.2,4.5,0> rotate<0,270,0>} }
object{Cap} object{Cap translate <0,-4.27,0>}
torus{1.0,.15 translate <0,4.6,0> texture{BWht}}
torus{.95,.15 translate <0,4.4,0> texture{BWht}}  
torus{1.0,.15 translate <0,.33,0> texture{BWht}} 
torus{.95,.15 translate <0,.13,0> texture{BWht}} 
#declare MSI=.2; #declare MSP=MSI*-3; #while (MSP<=MSI*3)
#declare PMP=30; #while (PMP<=270)  difference{
intersection{box{<0,0,-.1>,<1.2,4,.1>}sphere{<0,0,0>,.62 scale <1,5.2,.3>
translate<.6,2,0>}}
sphere{<0,0,0>,.62 scale <.7,6.55,.55> translate<1.2,4,0>}
translate <0,.5,MSP> rotate<0,PMP,0>  texture{BWht}} 
 #declare PMP=PMP+120; #end   #declare MSP=MSP+MSI; #end 
 //Sign
 cylinder{<.9,0,0>,<.9,4.6,0>,.1 rotate<0,90,0>  texture{BWht} }
 cylinder{<.9,0,0>,<.9,4.6,0>,.1 rotate<0,210,0>  texture{BWht} }
 cylinder{<.9,0,0>,<.9,4.6,0>,.1 rotate<0,330,0>  texture{BWht} }  
 difference{ box{<-.78,-1.2,-.1>,<.78,1.2,.1> texture{MGld} }
 box{<-.69,-1.10,-.2>,<.69,1.10,-.05> texture{BLBl} }
 #declare FDA=0; #while(FDA<180) cylinder{<-2,0,-.1>,<2,0,-.1>,.04 
rotate<0,0,FDA>texture{MGld}} 
 #declare FDA=FDA+5; #end
 translate <4,4.8,0>}
 //Sign text
 text { ttf "Baln.ttf" "L'essense" .8, 0 scale<.44,.35,.2> translate
<3.45,5.55,-.07> texture{BBlk}}
 text { ttf "Baln.ttf" "de L'angst" .8, 0 scale<.38,.35,.2> translate
<3.4,5.25,-.07> texture{BBlk}}  
 text { ttf "Baln.ttf" "Existencial" .8, 0 scale<.41,.35,.2> translate
<3.4,4.95,-.07> texture{BBlk}}
 text { ttf "Baln.ttf" "par" .8, 0 scale<.41,.35,.2> translate <3.7,4.7,-.07>
texture{BBlk}}
 text { ttf "Baln.ttf" "Guy Bubon" .8, 0 scale<.35,.35,.2> translate
<3.4,4.35,-.07> texture{BBlk}} 
  text { ttf "Baln.ttf" "25,000" .8, 0 scale<.37,.35,.2> translate
<3.7,3.9,-.07> texture{BBlk}}
  text { ttf "Arial.ttf" "C" .8, 0 scale<.25,.27,.2> translate <3.46,3.88,-.07>
texture{BBlk}} 
 //Fudge Euro Currency Symbol (Non ASCII Character in most fonts)  
   box{<-.07,-.015,0>,<.07,.015,.2>  translate <3.5,3.995,-.07>texture{BBlk}}
   box{<-.07,-.015,0>,<.07,.015,.2>  translate <3.5,3.95,-.07>texture{BBlk}} 
 //Easel
  union{  cylinder{<0,0,0>,<0,-3.0,0>.05 texture{MGld}}
cone{<0,-2.99,0>,.07,<0,-3.2,0>.02 texture{BBlk} }
 rotate <0,0,20> rotate<0,30,0> translate<0,7.8,0> } 
  union{  cylinder{<0,0,0>,<0,-3.0,0>.05 texture{MGld}}
cone{<0,-2.99,0>,.07,<0,-3.2,0>.02 texture{BBlk} }
 rotate <0,0,20> rotate<0,150,0> translate<0,7.8,0> }
  union{  cylinder{<0,0,0>,<0,-3.0,0>.05 texture{MGld}}
cone{<0,-2.99,0>,.07,<0,-3.2,0>.02 texture{BBlk} }
 rotate <0,0,20> rotate<0,270,0> translate<0,7.8,0> } 
  difference{cylinder{<-1.2,0,0>,<1.2,0,0>,.12}
cylinder{<-2,.06,-.06>,<2,.06,-.06>,.08} texture{MGld} translate <0,5.5,-.5>} 

 //"Painting" 
  union{box{<-1,0,0>,<1,2.5,-.13>texture{BWht} }
  #declare SMA=-70; #while (SMA<=75)  sphere{<0,0,0>,.06 scale <1,1,.05>
  translate <0,.65+.03*sin(SMA/3)*cos(SMA/7),-.13>  rotate<0,0,SMA> translate
<0,.4,0>texture{RdPt}}  #declare SMA=SMA+2; #end 
  #declare SMA=-180; #while (SMA<=180)  sphere{<0,0,0>,.06 scale <1,1,.05>
  translate <0,.12+.008*sin(SMA/3)*cos(SMA/7),-.13>  rotate<0,0,SMA> translate
<-.3,1.6,0>texture{RdPt}}  #declare SMA=SMA+10; #end 
  #declare SMA=-180; #while (SMA<=180)  sphere{<0,0,0>,.06 scale <1,1,.05>
  translate <0,.13+.007*sin(SMA/7)*cos(SMA/2),-.13>  rotate<0,0,SMA> translate
<.35,1.55,0>texture{RdPt}}  #declare SMA=SMA+10; #end 
  rotate<11,0,0> translate <0,5.5,-.5> }
  
 

