Table des matières

Openscad

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.1)

C'est un logiciel libre qui fonctionne à la fois sous Linux, Mac OS et Microsoft Windows.

Bibliothèques utiles :

Liens & documentation

La documentation d'openscad ainsi que 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 2×2 sur toute sa hauteur.

Trucs et astuces

Import SVG

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 script peut permetre de convertir un fichier STL en fichier Openscad.

Editeurs de texte externes

Projets utilisant Openscad

1) Source : Wikipédia