{{ :logiciels:openscad.png?300|}} ====== Openscad ====== {{autolink>openscad}} [[http://www.openscad.org/|OpenSCAD]] est un logiciel de modélisation tridimensionnelle rudimentaire. Il a pour particularité de fonctionner de façon entièrement paramétrique, c'est-à-dire que la conception passe par la rédaction d'un script sur une sous-fenêtre située à gauche, tandis qu'une sous-fenêtre à droite permet de visualiser l'objet en 3D, mais pas de l'éditer.((Source : [[wpfr>openscad|Wikipédia]])) ====== ====== C'est un logiciel libre qui fonctionne à la fois sous Linux, Mac OS et Microsoft Windows. ===== Bibliothèques utiles : ===== * [[https://github.com/syvwlch/Thingiverse-Projects/tree/master/Threaded%20Library|Écrous et pas de vis]] ===== Liens & documentation ===== [[http://www.openscad.org/documentation.html|La documentation]] d'openscad ainsi que [[http://www.openscad.org/gallery.html|quelques exemples]] sont disponible sur le site du projet. Tutoriel en Français sur le site du Fablab de Lannion : http://fablab-lannion.org/wp-content/tutos/openscad/ La cheatsheet : la table des principales fonctions d'openscad : http://www.openscad.org/cheatsheet/ ===== Prise en main rapide ===== La base d'openSCAD est de créer en ligne de code les commandes à effectuer. Exemple 1 : créer ses premières pièces simples cube(1,center=true); cube : défini l'objet, dans ce cas un cube. Il faut maintenant lui donner des paramètres : 1 : défini la taille du cube. center=true indique que le centre de l'objet est au coordonnée x=0, y=0, z=0. l'intégralité des paramètres se trouve entre parenthèses Bien finir la ligne par un piont virgule. Sans ça, l'objet n'existera pas et la pièce fera bugguer le fichier (pas gravement). Par défaut, l'echelle d'openSCAD est le mm cylinder(h=1, r=1,center=true); cylinder : la pièce est un cylindre h : hauteur de la pièce r : taille du rayon de la pièce. NOTE. Il est possible de remplacer le "r" par "d" pour avoir le diamètre parametrable. sphere(r=1,center=true); sphere : l'objet est une sphere r : taille du rayon de la sphère Exemple 2 : Des pièces plus complexes cube([1,1,1],center=true); 1,1,1 : les dimensions de l'objet (x,y,z). Pour le moment, nous avons un cube de 1x, 1y, 1z Les dimension du cube sont entre des crochets (AltGR + 5, AltGR + ")" ) Donc, dans le cas suivant : cube([3,3,1],center=true); l'objet créé est un "cube" de 3 de long, sur 3 de large et 1 de haut. cylinder(h=5, r1=5, r2=0,center=true); r1 : rayon du cercle du"bas"par rapport à l'axe z r2 : rayon du cercle du"haut" L'objet est donc un cône de rayon 5, formant une pointe 5 plus haut. ==== Opérations ==== === 1) translations=== translate([valeur pour x,valeur pour y,valeur pour z]) Effectue une translation de 1 en x,y et z de ce qui est en dessous. Par exemple : translate([1,1,1]) cube([1,1,1],center=true); Cela va créer un cube de 1 d'arrete donc le centre se trouve au coordonnées x=1, y=1, z=1. === 2) rotation === rotate([degrés en x,degrés en y,degrés en z]) Effectue une rotation de l'ensemble des objets contenu dans l'espace de x,y,z degrés par rapport aux axes. Par exemple : rotate([90,0,0]){ cylinder(h=1, r=1,center=true);} effectue une rotation du cylindre sur l'axe des x. === 3) différence === difference(){ tralala } les accolades {...} permettent de définir les éléments sur lesquels s'appliquent cette opération. effectue une suppression de pièces par rapport à une autre. Par exemple difference(){ cube(5,5,1),center=true); cube([2,2,2],center=true);} La pièce est un carré de 5x5x1 percé en son centre d'un carré de 2x2 sur toute sa hauteur. ===== Trucs et astuces ===== ==== Import SVG ==== * Il existe des plugins inkscape pour transformer un dessin svg en fichier openscad. Pour plus de détails voir la page concernant [[logiciels:inkscape|]] ==== Import STL ==== Openscad permet nativement l'import de fichiers STL, mais il n'est pas forcement très tolérant aux erreurs, et lorsque les fichiers sont complexes il y a certaines chances que le STL importé ne puisse être rendu correctement. En cas de problème ce [[http://www.thingiverse.com/thing:62666|script]] peut permetre de convertir un fichier STL en fichier Openscad. ==== Editeurs de texte externes ==== * Il est plus confortable de passer par un éditeur externe pour concevoir sa pièce. Des logiciels comme geany ou sublime text permettent (en y ajoutant un plugin) de concevoir en temps réel sa pièce. L'éditeur inclu dans openscad brille par sa sobriété. Les éditeurs externes permettent de "lire" et "écrire" plus rapidement son code. ===== Projets utilisant Openscad ====== {{topic>projets?logiciels:openscad&nouser&nodate}}