// POLYHEDRA / Dodecahedra Family '00.12 // By Tsutomu HIGO E-mail: nj2t-hg@asahi-net.or.jp #version 3.1; global_settings { assumed_gamma 2.2 } camera { location <10,30,-35> angle 22 look_at <1.4,6.7,0> } light_source { <200,500,0> color rgb <1,1,1> } #declare Texpla= texture { pigment { color rgbt <0.5,0.2,1,0> } finish { reflection 0 ambient 0.4 phong 1 brilliance 1 } } #declare Texplb= texture { pigment { color rgbt <0.2,0.5,1,0> } finish { reflection 0 ambient 0.4 phong 1 brilliance 1 } } #declare Texplc= texture { pigment { color rgbt <0.7,0.5,1,0> } finish { reflection 0 ambient 0.4 phong 1 brilliance 1 } } #declare Yrot=50; #macro Poly12x20 (Ra,Rb,Rc) #declare Pente= intersection { plane { y,Ra rotate z*180/pi*2*1.017221968 texture { Texpla } } plane { -y,Ra rotate z*180/pi*2*1.017221968 texture { Texpla } } plane { y,Rb rotate z*180/pi*0.65235814 texture { Texplb } } plane { -y,Rb rotate z*180/pi*0.65235814 texture { Texplb } } plane { y,Rb rotate z*180/pi*1.382085796 texture { Texplb } } plane { -y,Rb rotate z*180/pi*1.382085796 texture { Texplb } } plane { y,Rc rotate z*-180/pi*0.553574359 texture { Texplc } } plane { -y,Rc rotate z*-180/pi*0.553574359 texture { Texplc } } plane { y,Rc rotate z*180/pi*1.017221968 texture { Texplc } } plane { -y,Rc rotate z*180/pi*1.017221968 texture { Texplc } } plane { z,Rc texture { Texplc } } plane { -z,Rc texture { Texplc } } bounded_by { sphere { <0,0,0> 1.05 } } } intersection { plane { y,Ra texture { Texpla } } plane { -y,Ra texture { Texpla } } object { Pente } object { Pente rotate y*72 } object { Pente rotate y*144 } object { Pente rotate y*-72 } object { Pente rotate y*-144 } bounded_by { sphere { <0,0,0> 1.05 } } } #end //Arcimedian 12x20 object { Poly12x20 (1.113516364*1.236067977/1.618033989,1.511522628/1.618033989,4) //scale 1.618033989 rotate y*Yrot translate <0,0,0> no_shadow } //12x20-12 //12cp object { Poly12x20 ((1.113516364*1.236067977/1.618033989+1.113516364*2.236067977/2.969449015)/2,(1.511522628/1.618033989+2.912781167/2.969449015)/2,4) rotate y*Yrot translate <12*sin(-pi*0.75/12),0,12-12*cos(-pi*0.75/12)> no_shadow } //Arcimedian 12c object { Poly12x20 (1.113516364*2.236067977/2.969449015,2.912781167/2.969449015,4) //scale 2.969449015 rotate y*Yrot translate <12*sin(-pi*1.5/12),0,12-12*cos(-pi*1.5/12)> no_shadow } //12fp object { Poly12x20 ((1.113516364*2.236067977/2.969449015+1.113516364/1.401258439)/2,(2.912781167/2.969449015+1)/2,4) rotate y*Yrot translate <12*sin(-pi*2.25/12),0,12-12*cos(-pi*2.25/12)> no_shadow } //Platonic 12f object { Poly12x20 (1.113516364/1.401258439,4,4) //scale 1.401258439 translate <12*sin(-pi*3/12),0,12-12*cos(-pi*3/12)> no_shadow } //12x20-20 //20cp object { Poly12x20 ((1.113516364*1.236067977/1.618033989+2.327438437/2.478018659)/2,(1+0.755761314*3/2.478018659)/2,4) rotate y*Yrot translate <12*sin(pi*0.75/12),0,12-12*cos(pi*0.75/12)> no_shadow } //Arcimedian 20c object { Poly12x20 (2.327438437/2.478018659,0.755761314*3/2.478018659,4) //scale 2.478018659 rotate y*Yrot translate <12*sin(pi*1.5/12),0,12-12*cos(pi*1.5/12)> no_shadow } //20fp object { Poly12x20 ((2.327438437/2.478018659+1)/2,(0.755761314*3/2.478018659+0.755761314/0.951056516)/2,4) rotate y*Yrot translate <12*sin(pi*2.25/12),0,12-12*cos(pi*2.25/12)> no_shadow } //Platonic 20f object { Poly12x20 (4,0.755761314/0.951056516,4) //scale 0.951056516 rotate y*Yrot translate <12*sin(pi*3/12),0,12-12*cos(pi*3/12)> no_shadow } //12x20 //12x20ep object { Poly12x20 ((1.113516364*1.236067977/1.618033989+1.113516364*3.090169944/3.8023945)/2,(1.511522628/1.618033989+3.668542481/3.8023945)/2,(1+3.736067978/3.8023945)/2) rotate y*Yrot translate <0,8*sin(pi*0.75/8),8-8*cos(pi*0.75/8)> no_shadow } //Arcimedian 12x20e object { Poly12x20 (1.113516364*3.090169944/3.8023945,3.668542481/3.8023945,3.736067978/3.8023945) //scale 3.8023945 rotate y*Yrot translate <0,8*sin(pi*1.5/8),8-8*cos(pi*1.5/8)> no_shadow } //12x20dp object { Poly12x20 ((1.113516364*1.854101966/2.23295051+1.113516364*3.090169944/3.8023945)/2,(2.157019853/2.23295051+3.668542481/3.8023945)/2,(2.118033989/2.23295051+3.736067978/3.8023945)/2) rotate y*Yrot translate <0,8*sin(pi*2.25/8),8-8*cos(pi*2.25/8)> no_shadow } //Arcimedian 12x20d object { Poly12x20 (1.113516364*1.854101966/2.23295051,2.157019853/2.23295051,2.118033989/2.23295051) //scale 2.23295051 rotate y*Yrot translate <0,8*sin(pi*3/8),8-8*cos(pi*3/8)> no_shadow } //12x20dq object { Poly12x20 ((3*1.113516364*1.854101966/2.23295051-1.113516364*3.090169944/3.8023945)/2,(3*2.157019853/2.23295051-3.668542481/3.8023945)/2,(3*2.118033989/2.23295051-3.736067978/3.8023945)/2) rotate y*Yrot translate <0,8*sin(pi*3.75/8),8-8*cos(pi*3.75/8)> no_shadow } //12x20dr object { Poly12x20 (2*1.113516364*1.854101966/2.23295051-1.113516364*3.090169944/3.8023945,2*2.157019853/2.23295051-3.668542481/3.8023945,2*2.118033989/2.23295051-3.736067978/3.8023945) rotate y*Yrot translate <0,8*sin(pi*4.5/8),8-8*cos(pi*4.5/8)> no_shadow }