Création d'un cube troué avec FreeCAD (Arnaud)

De Wiki L.A.B
Aller à : navigation, rechercher
Cube-troue.png


Présentation et objectifs

Il s'agit de créer un modèle 3D d'un cube troué avec OpenSCAD. On va d'abord créer un polygone 2D (cadre d'un carré) puis lui appliquer une extrusion linéaire. On crée également les 2 cylindres qui vont ensuite être soustrait à la forme du cadre extrudé.

objet 3D final

Pré-requis

Il faut avoir déjà pratiquer les 3 tutoriaux précédents.

Matériel

Un ordinateur

Logiciels

FreeCAD

Nom de votre tutoriel

Réalisation d'un cube troué

Première Version :

Etape 1 :

On crée d'abord le polygone qui sera extrudé Pour celà, on crée une esquisse (Taches -> Créer une esquisse) que l'on oriente sur le plan XY. On crée successivement 2 carré avec l'outil "créer un rectangle dans l'esquisse". On sélectionne 2 cotés perpendiculaires du premier carré et on applique la contrainte d'égalité entre 2 lignes (signe =). On fixe la longueur du carré en sélectionnant un côté et en appliquant une contrainte de longueur de ligne (double flèche). On fait de même avec le 2eme rectangle.

polygone de départ

Etape 2 :

Il faut ensuite une extrusion linéaire sur le cadre précédemment créé. Pour cela il faut fermer l'esquisse, sélectionner la forme (sketch) et appliquer une protusion.

Cadre extrudé

Etape 3 :

On ajoute 2 cylindres perpendiculaires en utilisant les fonctions translete, rotation et cylinder

linear_extrude(10) {
   polygon(
	points=[[0,0],[0,10],[10,10],[10,0],[1,1],[1,9],[9,9],[9,1]],
	paths=[[0,1,2,3],[4,5,6,7]]
	);
}
translate([-1,5,5])
   rotate([0,90,0])
   cylinder(h=12,r=2,$fn=20);
translate([5,-1,5])
   rotate([-90,0,0])
   cylinder(h=12,r=2,$fn=20);
cube avec les cylindres à soustraire à la forme

Etape 4 :

On soustrait les 2 cylindres du cadre extrudé pour obtenir l'objet final.

difference(){linear_extrude(10) {
   polygon(
	points=[[0,0],[0,10],[10,10],[10,0],[1,1],[1,9],[9,9],[9,1]],
	paths=[[0,1,2,3],[4,5,6,7]]
	);
}
translate([-1,5,5])
   rotate([0,90,0])
   cylinder(h=12,r=2,$fn=20);
translate([5,-1,5])
   rotate([-90,0,0])
   cylinder(h=12,r=2,$fn=20);
}
cube avec les cylindres à soustraire à la forme

Conseils

Il est important de se représenter les différentes étapes de construction de l'objet à partir de formes simples et de les ordonner correctement.

Pour aller plus loin

On peut utiliser des variables pour pouvoir réutiliser ce code et créer des objets personnalisés de même type.