// Dimensions du cube et des cavités cube_size=50; sphere_radius=15; offset=20; difference(){ //Cube externe cube([cube_size,cube_size,cube_size],center=true); //Cavité 1: sphère du centre du haut translate([0,0,offset]) sphere(r=sphere_radius); //Cavité 2:sphère du centre bas translate([0,0,-offset]) sphere(r=sphere_radius); //Cavité 3: Cavité à droite translate([offset,0,0]) sphere(r=sphere_radius); //Cavité 4: cavité à gauche translate ([-offset,0,0]) sphere(r=sphere_radius); //Cavité 5: cavité dans la sphère supérieure translate ([0,0,offset]) sphere(r=sphere_radius/2); } // Canal horizontal translate([0,offset/2,0]) rotate([0,90,0]) cylinder(h=offset,r=cannel_radius/2, center=true); module torus(r1,r2){ rotate_extrude(){ translate([r1,0,0]) circle(r=r2); }; } rotate([90,90,0]) translate([0,0,0]) torus(r1=15,r2=2);