// ----------------------------------------------------------------------- // POV: Persistence Of Vision raytracer version 3.6 // Ron Bracale 2005-07-22 // YY03.pov - Bagua = Yin and Yang. // ----------------------------------------------------------------------- #include "colors.inc" light_source { < 2, 2, 10 > color White } camera { up < 0, 1, 0 > location < 0, 0, 5 > look_at < 0, 0, 0 > // this keeps it square: right x } #declare SRad = 0.75; // ----------------------------------------------------------------------- // YinYang Object // ----------------------------------------------------------------------- #declare wVar = 0; #declare wStep = 0.1; #declare objYinYang = union { #while (wVar <= 1) // -- Red shperes #declare xTransRed = SRad * cos(radians(180*(wVar))); #declare yTransRed = SRad * sin(radians(180*(wVar))); #declare zTransRed = 0 - wVar; sphere { < 0, 0, 0 > SRad hollow texture { pigment { color rgb < (1.00 - (wVar*0.75)), 0.0, 0.0 > } } finish { ambient 0.78 diffuse 0.12 reflection 0.05 } scale < 1, 1, 0.25 > translate < xTransRed, yTransRed, zTransRed > } // -- Blue shperes #declare xTransBlue = -SRad * cos(radians(180*(wVar))); #declare yTransBlue = -SRad * sin(radians(180*(wVar))); #declare zTransBlue = 0 - wVar; sphere { < 0, 0, 0 > SRad hollow texture { pigment { color rgb < 0.0, 0.0, (1.00 - (wVar*0.75)) > } } finish { ambient 0.78 diffuse 0.12 reflection 0.05 } scale < 1, 1, 0.25 > translate < xTransBlue, yTransBlue, zTransBlue > } #declare wVar = wVar + wStep; #end // Blue eye: sphere { < 0, 0, 0 > 0.15 texture { pigment { Blue } } finish { ambient 0.74 diffuse 0.01 reflection 0.25 } translate < 0.75, 0, 0.25 > } // Red eye: sphere { < 0, 0, 0 > 0.15 texture { pigment { Red } } finish { ambient 0.74 diffuse 0.01 reflection 0.25 } translate < -0.75, 0, 0.25 > } } // ----------------------------------------------------------------------- object { objYinYang rotate < 0, 0, -360*clock > }