$fn=500; // Dimensions du cendrier cendrier_diametre = 120; // Diamètre total du cendrier cendrier_hauteur = 30; // Hauteur totale du cendrier paroi_epaisseur = 5; // Épaisseur de la paroi creux_nombre = 4; // Nombre de creux pour les cigarettes creux_largeur = 10; // Largeur du creux creux_profondeur = 10; // Profondeur du creux creux_hauteur = 10; // Hauteur du creux // Fonction principale module cendrier() { difference() { // Corps du cendrier cylinder(h = cendrier_hauteur, d = cendrier_diametre, center = false); // Creux intérieur translate([0, 0, paroi_epaisseur]) { cylinder(h = cendrier_hauteur - paroi_epaisseur, d = cendrier_diametre - 2 * paroi_epaisseur, center = false); } // Creux pour les cigarettes for (i = [0:360/creux_nombre:360]) { rotate([0, 0, i]) { translate([cendrier_diametre / 2 - creux_largeur / 2, 0, 30]) { cube([creux_largeur, creux_profondeur, creux_hauteur], center = true); } } } } } // Affichage du cendrier cendrier(); translate([-15, -10, 0]) linear_extrude(10) { text("Y", 30); }