Une queue d'aronde est un type de liaison mécanique entre deux pièces. Une queue d'aronde se compose d'un tenon en forme de trapèze dans l'une des pièces, et d'une rainure de même forme dans la seconde pièce. Wikipédia
Pour les besoins de Bleuette, j'ai développé une librairie OpenSCAD permettant de découper des pièces avec une forme en queue d'aronde (dovetail en anglais).
Petite note sur OpenSCAD : la première fois que je suis allé sur le site OpenSCAD, j'ai pris peur et j'ai fui lamentablement, depuis, j'utilise ce logiciel presque tous les jours : Ne vous fiez pas à son site plutôt austère et ses exemples complexes, contentez-vous de le téléchargez, même pas besoin de l'installer, il s'agit d'un simple binaire, lancez le et vous voilà prêt à créer des formes géométriques (ex: cube(size = [10, 10, 10]);) : c'est vraiment un logiciel / langage simple d'utilisation.
Revenons à nos queues d'aronde, prenons l'exemple d'un cube que nous voudrions couper en 2 parties :
dim = [20, 60, 5]; cube(size = dim, center = true);
Les dimensions du cube sont mises volontairement dans la variable dim, vous comprendrez plus loin la raison.
Commencez par importer le code en haut du fichier :
use <dovetail.scad>;
Jusque là, tout va bien ;)
Maintenant, il faut préparer la découpe en spécifiant les paramètres de découpe voulu :
teeth = [3, 4, 0.3];
Les paramètres expliqués :
- 3 : Le nombre de dent voulu
- 4 : La hauteur des dents
- 0.3 : Le jeu entre les 2 « machoires »
Voilà, nous sommes prêt à faire la découpe :
intersection() { cube(size = dim, center = true); cutter([0, -10, 0], dim, teeth, true); }
Nous lui demandons de calculer l'intersection d'un objet, en l'occurence un cube avec le module cutter dont les paramètres sont expliqués ci-dessous :
- [0, -10, 0] : Le vecteur là oû la découpe doit se faire, ici, ce sera à la distance -10 sur l'axe y
- dim : On lui donne les dimensions de l'objet qu'il doit découper, cela afin de calculer la largeur des dents en fonction de la quantité souhaité et de la largeur de l'objet, OpenSCAD ne disposant pas de fonction permettant de récupérer la taille de la bounding box d'un objet, on est obligé de faire ainsi...
- teeth : On lui spécifie les paramètres relatifs aux dents que l'on a abordé plus haut
- false : Notre pièce va être divisée en 2, ce paramètre permet de spécifier quel bout on veut obtenir, l'un ou l'autre : true ou false.
Voici le résultat de notre première découpe, avec le dernier paramètre à true, ou avec le dernier paramètre à false :
Voilà, c'est pas plus compliqué que ça, n'hésitez pas à modifier les paramètres jouant sur les dents afin d'obtenir le résultat voulu.
La librairie est disponible en pièce jointe de cet article ou pour être sûr d'avoir toujours la dernière version, allez directement sur GitHub.