Polina BUNTURI
Les objets sont une table et une chaine.
// Dimensions de la table
plateau_longueur = 60;
plateau_largeur = 40;
plateau_epaisseur = 2;
pied_taille = 5; // Taille des pieds (carrés)
pied_hauteur = 30; // Hauteur des pieds
// Plateau de la table
translate([0, 0, pied_hauteur]) {
cube([plateau_longueur, plateau_largeur, plateau_epaisseur]);
}
// Pieds de la table
// Pied avant gauche
translate([0, 0, 0]) {
cube([pied_taille, pied_taille, pied_hauteur]);
}
// Pied avant droit
translate([plateau_longueur - pied_taille, 0, 0]) {
cube([pied_taille, pied_taille, pied_hauteur]);
}
// Pied arrière gauche
translate([0, plateau_largeur - pied_taille, 0]) {
cube([pied_taille, pied_taille, pied_hauteur]);
}
// Pied arrière droit
translate([plateau_longueur - pied_taille, plateau_largeur - pied_taille, 0]) {
cube([pied_taille, pied_taille, pied_hauteur]);
}
// Dimensions des anneaux
anneau_rayon = 10; // Rayon de l'anneau
anneau_epaisseur = 2; // Épaisseur des anneaux
espacement = 15; // Distance entre les anneaux
// Nombre d'anneaux
nb_anneaux = 5;
// Module pour créer un anneau
module anneau(position, rotation_angle) {
translate(position)
rotate([0, rotation_angle, 0]) // Rotation pour alterner les orientations
rotate_extrude()
translate([anneau_rayon, 0, 0])
circle(anneau_epaisseur);
}
// Boucle pour générer une chaîne
translate([80, 0, 20]) { // Positionner à côté et au-dessus de la table
for (i = [0:nb_anneaux-1]) {
// Alterner la direction des anneaux pour qu’ils soient entrelacés
anneau([0, i * espacement, 0], i % 2 == 0 ? 90 : 0);
}
}