Mise à jour 24/03: Cliquez ici pour connaître les actions de Sculpteo liées au COVID-19

Créer un modèle 3D

En résumé

  • 1.1. Introduction
  • 1.2. L'éditeur de texte
  • 1.3. Espace d'affichage
  • 1.4. La Console
  • 2.1. Introduction au langage OpenSCAD
  • 2.2. Les commandes basiques : Actions
  • 2.3. Les commandes basiques : Operators
  • 2.4. Les commandes basiques : Variables, Comments
  • 2.5. Toutes les commandes
  • 2.6. Créer des formes: Le cube
  • 2.7. Créer des formes: La sphère
  • 2.8. Créer des formes: Les cylindres et cônes
  • 2.9. Dépalcer les objets
  • 2.10. Modifier des objets avec Operators
  • 2.11. Operators: Union
  • 2.12. Operators: Difference
  • 2.13. Operators: Intersection
  • 3.1. Le Rendu
  • 3.2. Exporté un fichier STL
  • 3.3. L'impression 3D

Afin de comprendre comment fonctionne OpenSCAD, vous devez déjà connaître quelques bases de code. Votre modèle 3D sera construit à partir d’une base primaire comme un cube, un cylindre ou une sphère. Ces éléments sont appelés objets. Les objets sont codés grâce à Actions, modifiés par Operators, avec Variables et Comments. Nous allons vous donner des exemple tout au long de ce tutoriel.

Les Actions sont utilisées pour créer des objets et finir des variables. Une chose à savoir, c’est que votre action doit se terminer par un point-virgule.

Exemple:

Cube(x,y,z);

Cylindre(h,r1,r2); 

Les Operators sont utilisés pour modifier des objets (taille et position) et se placent à l’intérieur d’accolades.

Exemple:

Union: combiner tous les objets à l’intérieur d’une accolade en un seul objet.

Union()

{Cube(x, center= true);

Sphere(x);

}

Les Variables comprennent des valeurs: nombres, vecteurs, et listes. OpenSCAD ne lit pas les Comments, ils n’ont aucun impact sur le code. Des option plus avancées sont également disponibles, comme les vectors, lists, modules et les fonctions.

OpenSCAD nous donne accès à une liste de commandes.

 

openscad_img_23.jpghttp://www.openscad.org/cheatsheet/index.html

Nous allons maintenant passer au code des formes 3D, et laisser OpenSCAD les traduire. Commençons avec une forme primaire, afin de créer un cube:

openscad_img_01.jpg

cube([3,5,7]);

Notez que nous n’avons pas défini le centre du cube, voyez ce qu’il se passe en ajoutant « vrai » ou « faux » (true or false).

Ajouter ‘’center= false’’ ne change rien.

openscad_img_02.jpg

cube([3,5,7, center= false]);  

Vous pouvez placer le centre du cube au milieu en mettant tous les axes à 0, 0, 0.

openscad_img_03.jpg

cube([3,5,7, center=true]);

Afin de créer une sphère il faut mettre le centre du modèle sur false. openscad_img_04.jpg 

cube([3,5,7, center=false]);

sphere([20]);  

Astuce: puisque nous n’avons pas spécifié si le numéro de la sphère dans l’accolade est le diamètre ou le rayon, OpenSCAD le voit automatiquement comme le rayon.

La sphère ne ressemble as tout à fait à une balle. Mais nous pourrons corriger ça ensuite dans le code:

openscad_img_05.jpg

cube([3,5,7, center=false]);

sphere([20, $fn=20]);

Vous pouvez ensuite augmenter le nombre, mais n’oubliez pas de garder à l’esprit l’épaisseur en fonction de la technique d’impression 3D que vous choisirez, car des problèmes peuvent apparaître durant le processus d’impression.

openscad_img_06.jpg

cube([3,5,7, center=false]);

sphere([20, $fn=100]);

Il est préférable de vous entrâiner un peu si vous n’êtes pas vraiment habitués à coder. Si vous souhaitez créer un cône, vous devez d’abord créer un cylindre en indiquant la valeur 0 sur l’axe Z. OpenSCAD lit le code de cette façon :

 

openscad_img_07.jpg

cube([3,5,7, center=false]);

sphere([20, $fn=100]);

cylinder([10,3,0]);

CHanger la valeur de Z à 3 résultera en un cylindre proportionnel.

 

openscad_img_08.jpg

cube([3,5,7, center=false]);

sphere([20, $fn=100]);

cylinder([10,3,3]);

Si vous souhaitez que votre cône, ou cylidnrdre soit plus lisse, vous pouvez appliuer les mêmes codes que pour la sphère.

 

openscad_img_09.jpg

cube([3,5,7, center=false]);

sphere([20, $fn=100]);

cylinder([10,3,3, $fn=100]);  

Nous allons ensuite parler de déplacement des objets. Pour faire cela nous allons utiliser le Translate Operator. N’oubliez pas que vous devez d’abord l’appliquer dans la ligne de code au dessus de l’objet.

 

openscad_img_10.jpg

cube([3,5,7, center=false]);

sphere([20, $fn=100]);

translate([10,0,0])

cylinder([10,3,3, $fn=100]);

openscad_img_11.jpg

cube([3,5,7, center=false]);

sphere([20, $fn=100]);

translate([10,6,0])

cylinder([10,3,3, $fn=100]);

openscad_img_13.jpg

cube([3,5,7, center=false]);

sphere([20, $fn=100]);

translate([10,6,5])

cylinder([10,3,3, $fn=100]);

Pour placer un objet sous un angle, nous devons appliquer le Rotate Operator.openscad_img_14.jpg 

cube([3,5,7, center=false]);

sphere([20, $fn=100]);

translate([10,6,5])

rotate([0,-90,0])

cylinder([10,3,3, $fn=100]);

Nous allons maintenant parler de fonctions qui vous seront très utiles pour la création de votre modèle 3D. Il s’agits des Operators: Union, Intersection and Difference. Le dernier est particulièrement util car il peut être utilisé pour évider votre modèle et ainsi baisser son coût.

Nous allons créer un cube avec des parois de 12 cm, placés sur le point 0 de tous les axes.

openscad_img_15.jpg

cube([12, center=true]);

Pour modifier le cube avec le code, modifiez le code en indiquant un radius de 8.

openscad_img_16.jpg

cube([12, center=true]);

sphere([8]);

Ce premier Operator s’appelle Union. Il permet à OpenSCAD d’unir deux objets pour qu’il n’agissent plus que comme un seul. N’oubliez pas d’ajouter les accolades dans votre code !

 

openscad_img_17.jpg

Union ()

{cube([12, center=true]);

sphere([8]);}

Parlons maintenant de Difference. Difference permet à OpenSCAD de séparer un objet en deux objets distincts .Cette fonctionnalité est particulièrement utile avec les objets évidés. Faites attention à l’ordre de vos objets. Dans cette exemple nous allons couper la forme d’une sphère dans un cube.

 

openscad_img_18.jpg

Difference ()

{cube([12, center=true]);

sphere([8]);}

Si vous souhaitez mettre le cube à l’extérieur de la sphère, vous devez changer l’ordre des objets dans le code.

openscad_img_19.jpg

Difference ()

{shpere([12, center=true]);

cube([8]);}

Enfin avec cette fonctionnalité, vous pouvez combiner deux objets.

openscad_img_20.jpg

Intersection ()

{cube([12, center=true]);

sphere([8]);}