// Edge-tangent polytope and the sphere of edge tangencies // David Eppstein, UC Irvine, 21 May 2001 global_settings { assumed_gamma 2.2 ambient_light <2,2,2> } light_source { <25, -5, -15> color <2,2,2> } light_source { <5, -10, -15> color <1.5,1.5,1.5> } // perp: <5,1,-6> <1,1,1> <7,-11,4> // perp: <5,2,-2> <0,1,1> <4,-5,5> #declare p=<1,1,1>/sqrt(3) #declare q=<7,-11,4>/sqrt(186) camera { location <5,1,-6> look_at <0, 0, 0> up -q*0.65 right p*0.65 translate <-0.1,0,-0.5> rotate <0,-5,0> } sphere { <0.0, 0.0, 0.0>, 2 texture { finish { specular 1 roughness 0.001 ambient 0.05 diffuse 0.01 reflection 0.5 phong 0.3 phong_size 60 } pigment { color rgbf<0.7, 0.2, 1.0, 0.7> } } } #declare P_Surf = texture { finish { ambient 0.2 diffuse 0.2 } pigment { color red 1 green 1 blue 1 } } polygon { 4, <0,2,-2>,<0,2,2>,<2,0,1>,<2,0,-1> texture { P_Surf } } polygon { 4, <0,2,-2>,<0,2,2>,<-2,0,1>,<-2,0,-1> texture { P_Surf } } polygon { 4, <0,-2,-2>,<0,-2,2>,<2,0,1>,<2,0,-1> texture { P_Surf } } polygon { 4, <0,-2,-2>,<0,-2,2>,<-2,0,1>,<-2,0,-1> texture { P_Surf } } polygon { 3, <0,2,2>,<2,0,1>,<0,-2,2> texture { P_Surf } } polygon { 3, <0,2,-2>,<2,0,-1>,<0,-2,-2> texture { P_Surf } } polygon { 3, <0,2,2>,<-2,0,1>,<0,-2,2> texture { P_Surf } } polygon { 3, <0,2,-2>,<-2,0,-1>,<0,-2,-2> texture { P_Surf } } #declare P_Ring = texture { finish { ambient 0.3 diffuse 0.3 } pigment { color red 1 green 0 blue 1/2 } } torus { 2/sqrt(2), 0.02 texture { P_Ring } rotate <-45,0,0> translate <0,1,-1> } torus { 2/sqrt(2), 0.02 texture { P_Ring } rotate <45,0,0> translate <0,1,1> } torus { 2/sqrt(2), 0.02 texture { P_Ring } rotate <-45,0,0> translate <0,1,-1> rotate <180,0,0> } torus { 2/sqrt(2), 0.02 texture { P_Ring } rotate <45,0,0> translate <0,1,1> rotate <180,0,0> } torus { 2*sqrt(1/5), 0.02 texture { P_Ring } rotate <90,-asin(2/sqrt(5))*180/pi,0> translate <8/5,0,-4/5> } torus { 2*sqrt(1/5), 0.02 texture { P_Ring } rotate <90,asin(2/sqrt(5))*180/pi,0> translate <8/5,0,4/5> } torus { 2*sqrt(1/5), 0.02 texture { P_Ring } rotate <90,-asin(2/sqrt(5))*180/pi,0> translate <8/5,0,-4/5> rotate <180,0,0> } torus { 2*sqrt(1/5), 0.02 texture { P_Ring } rotate <90,asin(2/sqrt(5))*180/pi,0> translate <8/5,0,4/5> rotate <180,0,0> }