Découvrons les imprimantes 3D - FDM
La création de trophées
Utilisation de OpenSCAD pour générer le socle :
Vous pouvez modifier les 6 parametres décris dans le code ci-dessous, ceux-la
// Paramètres de la base (en mm)longueur = 100;      // Longueur de la baselargeur  = 50;      // Largeur de la basehauteur  = 30;      // Hauteur de la base
// Dimensions de la rainureepaisseur_rainure = 3.2;   // Ãpaisseur de la rainure (tolérance pour la plaque à glisser)largeur_rainure  = 30;   // Dimension de l'ouverture (longueur sur le plan)profondeur_rainure= 15;   // Profondeur de la rainure dans le socle
// Paramètre d'angle (en degrés)// Si angle = 0, le socle aura des faces verticales ; sinon la face supérieure sera mise en retrait par "d"angle = 900; // Privilégier un chiffre élevé pour voir un changement
// Calcul de l'offset sur les côtés pour la face supérieured = hauteur * tan(angle * PI/180);
// Définition des 8 sommets du polyèdrevertices = [  [0, 0, 0],          // V0  [longueur, 0, 0],      // V1  [longueur, largeur, 0],    // V2  [0, largeur, 0],       // V3  [d, d, hauteur],             // V4  [longueur - d, d, hauteur],         // V5  [longueur - d, largeur - d, hauteur],    // V6  [d, largeur - d, hauteur]          // V7];
// Définition des faces du polyèdrefaces = [  [0, 3, 2, 1],  // face inférieure corrigée (ordre inversé pour une normale vers le bas)  [4, 5, 6, 7],  // face supérieure  [0, 1, 5, 4],  // côté 1  [1, 2, 6, 5],  // côté 2  [2, 3, 7, 6],  // côté 3  [3, 0, 4, 7]   // côté 4];
// Module qui génère le socle avec la rainure centrée sur la face supérieure.module socle() { difference() {  // Corps principal (le polyèdre peut devenir trapézoïdal si angle > 0)  polyhedron(points = vertices, faces = faces);     // Soustraction de la rainure.  // La rainure est modélisée par un cube vertical centré sur le plan XY.  translate([ (longueur - largeur_rainure) / 2, (largeur - epaisseur_rainure) / 2, hauteur - profondeur_rainure ])   cube([largeur_rainure, epaisseur_rainure, profondeur_rainure], center = false); }}
// Affichage du soclesocle();