Télécharger le fichier récapitulatif borromee.txt

Les anneaux de Borromée
( Borromean rings )




Voir le site de R. Ferréol   pour informations complémentaires sur les anneaux de Borromée.



Voir en 800x600

Les anneaux de Borromée  
( Borromean rings )


Voir en 800x600

Anneaux de Borromée plats  
( Borromean rings )


Voir en 800x600

Le maillage de Borromée
( Borromean mesh (?))

Les programmes PovRay des anneaux plats et du maillage sont seulement dans la version texte (cf haut de la page)




/* Anneaux de Borromée */

#include "colors.inc"

#macro xx(uu) cos(uu)
#end
#macro yy(uu) sin(uu)
#end
#macro zz(uu) cos(3*uu+pi/3)/3
#end

//Lights, camera
camera { orthographic
location < 0,0,-4>
look_at < 0,0, 0>
}

light_source { <-2, 3,-8> color rgb 1 shadowless }
light_source { <5, 3, -8> color rgb 1 shadowless }


// ----------------------------------------
plane { z,4
pigment {
gradient y
color_map {
[0.01 Blue]
[0.8 SkyBlue]
}
}
scale 5*y translate <0,-2,0>
}

// ---------------------------------------
#macro courbe(n,deb,fin,r)

#local pas=(fin-deb)/n;
#local uu = deb;
sphere{ <xx(uu),yy(uu),zz(uu)>,r }
#while (uu<=fin)
#local vv=uu+pas;
cylinder{ <xx(uu),yy(uu),zz(uu)>,<xx(vv),yy(vv),zz(vv)>,r }
sphere{ <xx(vv),yy(vv),zz(vv)>,r }
#local uu=vv;
#end //fin boucle
#end //macro

// ---------------------------------------
#declare umin = 0;
#declare umax = 2*pi;
#declare iter = 200;
#declare r = 0.2;
#declare coeff=2/3;

#declare anneau=
union { // union 1
union { courbe(iter,umin,umax,r) // union 2
translate <1,0,0>*coeff
texture { pigment { leopard
color_map {

[ 0.3 color red 1 green 1 blue 1]
[ 0.2 color red 0.9 green 0.9 blue 0.5]
[ 0.6 color red 1 green 0.7 blue 0]
[ 0.8 color red 0.5 green 0.5 blue 0.1 filter 0.5]
} // color_map

scale 0.1
} // fin pigment

finish { diffuse 0.2 ambient 0.6 reflection 0.1 roughness 0.01 specular 0.8 }
} // fin texture
} // fin union 1
union { courbe(iter,umin,umax,r) // union 3
translate <cos(2*pi/3),sin(2*pi/3),0>*coeff
texture { pigment { leopard
color_map {
[ 0.3 color red 1 green 0.85 blue 1]
[ 0.2 color red 0.9 green 0.7 blue 0.9]
[ 0.6 color red 0.8 green 0.3 blue 0.7]
[ 0.8 color red 0.7 green 0 blue 0 filter 0.5]
} // color_map

scale 0.1
} // fin pigment

finish { diffuse 0.2 ambient 0.6 reflection 0.1 roughness 0.01 specular 0.8 }
} // texture //
} // fin union 3
union { courbe(iter,umin,umax,r) // union 4
translate <cos(2*pi/3),-sin(2*pi/3),0>*coeff
texture { pigment { leopard
color_map {
[ 0.3 color red 0.7 green 1 blue 0.7]
[ 0.2 color red 0.5 green 1 blue 0.5]
[ 0.6 color red 0.3 green 0.8 blue 0.3]
[ 0.8 color red 0 green 0.6 blue 0 filter 0.5]
} // color_map

scale 0.1
} // fin pigment
finish { diffuse 0.2 ambient 0.6 reflection 0.1 roughness 0.01 specular 0.8 }
} // fin texture //
} // fin union 4

finish{ ambient 0.2 diffuse 0.2 roughness 0.0001 specular 0.3}

} // fin union 1

// ---------------------------------------
object { anneau
rotate -z*30
translate <-0.5,0,0>}
object { anneau
scale 0.5
rotate <65,30,0>
translate <1.65,1.2,3>}


Début