/*Surface de Clebsch ; Equation de hunt 81*(x^3+y^3+z^3)-189*(x^2*y+x^2*z+y^2*x+y^2*z+z^2*x+z^2*y)+54*x*y*z+ 126*(x*y+x*z+y*z)-9*(x^2+y^2+z^2)-9*(x+y+z)+1 =0 7 points de Eckardt à distance finie + 3 couple de droites parallèles( 3 à l'infini ) */ #declare a=1 ; #include "colors.inc" #declare a=4 ; camera { orthographic location <-2.5,0.6,-3>*0.75 look_at<0,0.2,0> } light_source { <-4,5,-10> color White} light_source { <-5,10,-20> color White shadowless} light_source { <3,10,-10> color rgb <0.8,0.8,1>*0.5 shadowless} box {<-20,-1.3,-20>,<5,20,5> pigment {SkyBlue} rotate <0,5, 0> } union{ union { // droites passant par les points Eckardt #declare b=0.08; #declare rc= 0.008; /*1*/ cylinder{< b,-.3333,-1.*b >,<-1.*b,-.3333,b > ,rc} /*1*/ cylinder{< 0.,-b-.3333,-b/3 >,<0.,b-.3333,b/3 > ,rc} /*1*/ cylinder{< -b/3,-b-.3333,0. >, ,rc} /*2*/ cylinder{< -b+.1667,0,b+.1667 >,< b+.1667,0,-b+.1667 > ,rc}//2 /*2*/ cylinder{< -b/3+.1667,0,-b+.1667 >, ,rc} /*2*/ cylinder{ < -b+.1667,0.,-0.3333*b +.1667>,< b+.1667,0.,0.3333*b +.1667>,rc} /*3*/ cylinder{< b+.3333,.3333,-1.*b +.3333>,< -b+.3333,.3333,1.*b +.3333>,rc} /*3*/ cylinder{< -1.*b+.3333,b+.3333,.3333 >,,rc} /*3*/ cylinder{ < .3333,b+.3333,-1.*b+.3333 >,<.3333,-1.*b+.3333,b+.3333 > ,rc} /*4*/ cylinder{< -2.667*b-.3333,0.,-1.*b >,<2.667*b-.3333,0.,b > ,rc} /*4*/ cylinder{< -1.*b-.3333,-.3333*b,0. > ,< b-.3333,.3333*b,0. >,rc} /*4*/ cylinder{< -.3333,b,-b >,< -.3333,-b,b > ,rc} /*5*/ cylinder{ < -1.*b+.1667,b+.1667,0. >,,rc} /*5*/ cylinder{ < -0.3333*b+.1667,-b+.1667,0. >,< 0.3333*b+.1667,b+.1667,0. >,rc} /*5*/ cylinder{< -1.*b+.1667,-.3333*b+.1667,0. >, ,rc} /*6*/ cylinder{<-b, b,-0.333 >, ,rc} /*6*/ cylinder{< -.3333*b,0.,-b-.3333 >,< .3333*b,0.,b-.3333 > ,rc} /*6*/ cylinder{< 0.,-.3333*b,-b-.3333 >,< 0.,.3333*b,b-.3333 > ,rc} /*7*/ cylinder{< 0.,-b+.1667,-0.3333*b+.1667 >,< 0.,b+.1667,0.3333*b+.1667 > ,rc} /*7*/ cylinder{< 0.,b+.1667,-b+.1667 >,< 0.,-b+.1667,b+.1667 > ,rc} /*7*/ cylinder{< 0.,-.3333*b+.1667,-b+.1667 >,< 0.,.3333*b+.1667,b+.1667 > ,rc} pigment{Yellow} finish {ambient 0.4 diffuse 0.5 roughness 0.0001 reflection 0.1 specular .8}} union { // points Eckardt #declare rs= 0.02; /*1*/ sphere{< 0.,-.3333,0. >,rs } /*2*/ sphere{< .1667,0.,.1667 >,rs } /*3*/ sphere{< .3333,.3333,.3333 >,rs } /*4*/ sphere{< -.3333,0.,0. >,rs } /*5*/ sphere{< .1667,.1667,0. >,rs } /*6*/ sphere{< 0.,0.,-.3333 >,rs } /*7*/ sphere{< 0.,.1667,.1667 >,rs } pigment{Blue} finish {ambient 0.4 diffuse 0.5 roughness 0.0001 reflection 0.1 specular .8} } union{ // droites entières #declare r=0.002 ; #declare b=4; /*1*/ cylinder{< b,-.3333,-1.*b >,<-1.*b,-.3333,b > ,r } /*2*/ cylinder{< b+.3333,0.,-1.*b >,<-1.*b+.3333,0.,b > ,r } /*3*/ cylinder{< b+.6667,.3333,-1.*b >,<-1.*b+.6667,.3333,b > ,r } /*4*/ cylinder{< 2.927*b+.2696,1.309*b+.637e-1,-1.*b >,<-2.927*b+.2696,-1.309*b+.637e-1,b > ,r } /*5*/ cylinder{< -1.*b,-.3333*b+.1111,0. >, ,r } /*6*/ cylinder{< 5.236*b+2.285,2.236*b+.8727,-1.*b >,<-5.236*b+2.285,-2.236*b+.8727,b > ,r } /*7*/ cylinder{< -2.342*b+.2412,.4472*b+.3903,-1.*b >,<2.342*b+.2412,-.4472*b+.3903,b > ,r } /*8*/ cylinder{< -3.*b-.3333,0.,-1.*b >,<3.*b-.3333,0.,b > ,r } /*9*/ cylinder{< -2.236*b+.1273,.764*b+.49e-1,-1.*b >,<2.236*b+.1273,-.764*b+.49e-1,b > ,r } /*10*/ cylinder{< -1.*b,b+.6667,.3333 >, ,r } /*11*/ cylinder{< -1.*b,b+.3333,0. >, ,r } /*12*/ cylinder{< -1.*b,b,-.3333 >, ,r } /*13*/ cylinder{< .4472*b+.3903,-2.342*b+.2412,-1.*b >,<-.4472*b+.3903,2.342*b+.2412,b > ,r } /*14*/ cylinder{< .764*b+.49e-1,-2.236*b+.1273,-1.*b >,<-.764*b+.49e-1,2.236*b+.1273,b > ,r } /*15*/ cylinder{< 0.,-3.*b-.3333,-1.*b >,<0.,3.*b-.3333,b > ,r } /*16*/ cylinder{< -1.*b,-3.*b-.3333,0. >, ,r } /*17*/ cylinder{< 1.309*b+.637e-1,2.927*b+.2696,-1.*b >,<-1.309*b+.637e-1,-2.927*b+.2696,b > ,r } /*18*/ cylinder{< 2.236*b+.8727,5.236*b+2.285,-1.*b >,<-2.236*b+.8727,-5.236*b+2.285,b > ,r } /*19*/ cylinder{< -.3333,b,-1.*b >,<-.3333,-1.*b,b > ,r } /*20*/ cylinder{< 0.,b+.3333,-1.*b >,<0.,-1.*b+.3333,b > ,r } /*21*/ cylinder{< .3333,b+.6667,-1.*b >,<.3333,-1.*b+.6667,b > ,r } /*22*/ cylinder{< -.4472*b-.569e-1,.342*b+.9217e-1,-1.*b >,<.4472*b-.569e-1,-.342*b+.9217e-1,b > ,r } /*23*/ cylinder{< -.3333*b+.1111,0.,-1.*b >,<.3333*b+.1111,0.,b > ,r } /*24*/ cylinder{< -.427*b-.1030,.1910*b+.4363,-1.*b >,<.427*b-.1030,-.1910*b+.4363,b > ,r } /*25*/ cylinder{< .1910*b+.4363,-.427*b-.1030,-1.*b >,<-.1910*b+.4363,.427*b-.1030,b > ,r } /*26*/ cylinder{< 0.,-.3333*b+.1111,-1.*b >,<0.,.3333*b+.1111,b > ,r } /*27*/ cylinder{< .342*b+.9217e-1,-.4472*b-.569e-1,-1.*b >,<-.342*b+.9217e-1,.4472*b-.569e-1,b > ,r } pigment{Red} } poly{3, < 81,-189,-189,-9,-189,54,126,-189,126,-9,81,-189,-9,-189,126,-9,81,-9,-9,1 > pigment{White*0.6 transmit 0.2} finish {ambient 0.4 diffuse 0.5 roughness 0.001 reflection 0.02 specular .8} }//fin poly clipped_by { sphere{ < 0,0,0 > , 0.8 translate < 0,0,0 > } } bounded_by { clipped_by } rotate <-30,-180,-27> scale 2.5 translate <0,0.,0> } text { ttf "times.ttf" "AE" 0.5,0 pigment { Cyan*1.2 } scale 0.08 rotate <0,40,0> translate <1.9,-1.3,-0.4> }