// Paramètres de l'étoile points = 5; // Nombre de branches rayon_externe = 50; // Rayon externe des branches rayon_interne = 20; // Rayon interne entre les branches hauteur_totale = 10; // Hauteur totale de l'étoile (épaisseur) diametre_aimant = 10; // Diamètre de l'aimant profondeur_aimant = 3; // Profondeur de la cavité pour l'aimant // Fonction pour créer une étoile 2D module etoile() { polygon(points=[ for (i = [0 : 2 * points - 1]) let (angle = i * 360 / (2 * points)) [cos(angle) * (i % 2 == 0 ? rayon_externe : rayon_interne), sin(angle) * (i % 2 == 0 ? rayon_externe : rayon_interne)] ]); } // Création de la cavité pour l'aimant à l'intérieur de l'étoile module cavite_aimant() { translate([0, 0, 0]) cylinder(h = profondeur_aimant, d = diametre_aimant); // Cavité cylindrique à l'intérieur } // Créer l'étoile avec la cavité à l'intérieur difference() { // Extrusion de l'étoile en 3D linear_extrude(height = hauteur_totale) etoile(); // Ajouter la cavité pour l'aimant translate([0, 0, 0]) // Positionner la cavité au centre de l'étoile cavite_aimant(); }