Skip to main content

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);
    }
}

image.png