/* Connaissances travaillées différences (pour les trous des points) pièces de bases (cube pour le corps, sphere pour le minkowsky et cylindre pour les trous) rotation pour pérforer les différentes faces translation pour ordonner les points à perforer color pour voir mieux les trous (optionnel) Compétences repérage dans l'espace déplacements dans l'espace mise en série d'opérateurs temps de réalisation, entre 1h et 1h30 après l'initiation pour commencer à avoir un bon début. Pour aller plus loin : Créer automatiquement les positions des trous (boucle for) réecrire certaines parties pour rendre le code plus homogène (rotations et translation un peu brutales) réécrire les parties de perforation de manière plus uniforme équilibrer le poids des faces CC-By Bully & Hélène */ //paramètres $fn=100;//définition des faces rondes taillede=50;// taille du corps du dé //corps du dé. difference(){ color("blue",1){//colorie le coprs en bleu minkowski(){//donne le coté arrondi au cube cube(taillede, center=true); //cube de la taille définie sphere(d=taillede/10);} //sphere de diamètre définie qui permet d'arrondir les angles }//fin couleur bleu //Faces 1/6 color("yellow",1){//colorisation des faces translate([0,0,0.5*taillede]) {//translate d'une demie hauteur le cylindre à enlever cylinder(d=taillede/5,h=0.3*taillede);//cylindre à enlever } translate([0.3*taillede,0,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([-0.3*taillede,0,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([0.3*taillede,0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([-0.3*taillede,0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([0.3*taillede,-0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([-0.3*taillede,-0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } //Faces 2/5 rotate([90,0,0]){ translate([0,0,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([0.3*taillede,0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([-0.3*taillede,0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([0.3*taillede,-0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([-0.3*taillede,-0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } }//fin rotate rotate([-90,0,0]){ translate([-0.3*taillede,0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([0.3*taillede,-0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } }//fin rotate //Faces 3/4 rotate([0,90,0]){ translate([0,0,0.5*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([0.3*taillede,0.3*taillede,0.5*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([-0.3*taillede,-0.3*taillede,0.5*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([0.3*taillede,0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([-0.3*taillede,0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([0.3*taillede,-0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } translate([-0.3*taillede,-0.3*taillede,-0.8*taillede]) { cylinder(d=taillede/5,h=0.3*taillede); } }//fin rotate }//fin couleur jaune }//fin diff