// Paramètres du piano numérique

// Paramètres du touches blanches
largeur_touche_blanc = 15;    // Largeur (X)des touches blanches
hauteur_touche = 110;         // Hauteur (Z)des touches
epaisseur_touche = 7;         // Épaisseur (Y)des touches
espacement = 2;               // Espacement entre les touches blanches

// Paramètres des touches noires
largeur_touche_noir = 10;     // Largeur sur axe X des touches noires
hauteur_touche_noir = 70;    // Hauteur sur axe Z des touches noires
epaisseur_touche_noir = 10;    // Épaisseur sur axe Y des touches noires

nombre_de_touches = 12;       // Nombre total de touches du piano(blanches + noires)



// Module pour créer le piano
module piano() {
    // Dessiner les touches blanches et noires
    for (i = [0 : nombre_de_touches - 1]) {
        // Créer les touches blanches
        translate([i * (largeur_touche_blanc + espacement), 0, 0])
        color("white")
        cube([largeur_touche_blanc, epaisseur_touche, hauteur_touche], center = false);

        // Créer les touches noires, positionnées après certaines touches blanches
        if (i != 2 && i != 6 && i != 9 && i != 13) {
            translate([i * (largeur_touche_blanc + espacement) + largeur_touche_blanc - largeur_touche_noir / 2, 0, 0])
            color("black")
            cube([largeur_touche_noir, epaisseur_touche_noir, hauteur_touche_noir], center = false);
        }
    }
}

// Appeler le module pour afficher le piano
piano();