Freecad Manuel FR
Freecad Manuel FR
Freecad Manuel FR
J’ai fait de mon mieux pour rendre compréhensible le résultat de la traduction automatique
et j’ai utilisé parfois mon expérience de DAO/CAO pour affiner cette traduction.
Je demande donc à chaque lecteur de bien vouloir me faire parvenir ses remarques
par le forum de FreeCad : https://forum.freecadweb.org/
FreeCAD est également fondamentalement un projet social, car il est développé et maintenu par une
communauté de développeurs et d'utilisateurs unis par leur passion pour FreeCAD.
Ce manuel est une expérience consistant à prendre la voie inverse du wiki officiel de la documentation
FreeCAD (official FreeCAD documentation wiki). Le wiki est écrit en collaboration par des dizaines de
membres de la communauté et, comme la plupart des wikis, il contient d'énormes quantités d'informations,
mais il est très difficile d'accès et de navigation par les nouveaux arrivants. Cela en fait une ressource
précieuse à titre de référence, mais pas un outil très pratique pour apprendre FreeCAD. Ce manuel vous
guidera à travers les mêmes informations disponibles sur le wiki. Cependant, nous espérons que le rythme
plus progressif, basé sur les exemples, et le ton plus unifié donné par un nombre plus restreint d'auteurs, le
rendra plus approprié pour un premier contact avec FreeCAD et qu'il deviendra un parfait compagnon pour le
wiki.
Ce manuel a été écrit pour la version stable actuelle de FreeCAD qui est la version 0.16.
Tout le contenu de ce manuel est publié sous la licence Creative Commons 4.0 et peut être utilisé, téléchargé,
copié et modifié de manière libre. Les fichiers source de ce manuel sont hébergés sur ce wiki et sur le compte
original du github utilisé pour écrirela première version de ce livre. Plus faciles à lire, les versions HTML, PDF,
MOBI et EPUB sont disponibles sur GitBook. Une version imprimée est en préparation.
Ce livre a été écrit principalement par Yorik, mais en utilisant beaucoup d'informations construites par les
utilisateurs de FreeCAD, principalement du wiki FreeCAD. Le véritable auteur de ce livre est en fait toute la
communauté FreeCAD !
FreeCAD est une application open source de modélisation 3D paramétrique, conçue principalement pour
concevoir des objets de la vie courante. La modélisation paramétrique décrit un certain type de modélisation,
où la forme des objets 3D que vous concevez est contrôlée par des paramètres. Par exemple, la forme d'une
brique peut être contrôlée par trois paramètres: hauteur, largeur et longueur. Dans FreeCAD, comme dans
d'autres modeleurs paramétriques, ces paramètres font partie de l'objet et restent modifiables à tout moment
après la création de l'objet. Certains objets peuvent avoir d'autres objets comme paramètres, par exemple,
vous pourriez avoir un objet qui prend notre brique comme entrée et crée une colonne à partir de celle-ci.
Vous pouvez voir un objet paramétrique comme un petit programme qui crée les géométries voulues à partir
de paramètres.
FreeCAD n'est pas conçu pour un type de travail particulier ou pour créer un certain type d'objets. Au lieu de
cela, il permet une large gamme d'utilisations, et permet aux utilisateurs de produire des modèles de toutes les
tailles et de tous les objets, depuis les petits composants électroniques jusqu'aux pièces imprimables en 3D et
jusqu'aux bâtiments. Chacune de ces tâches comporte différents ensembles dédiés d'outils et de flux de
travail disponibles.
FreeCAD est également multiplateforme (il fonctionne exactement de la même manière sur les plates-formes
Windows, Mac OS et Linux) et open-source. Étant open-source, FreeCAD bénéficie des contributions et des
efforts d'une grande communauté de programmeurs, amateurs et utilisateurs du monde entier. FreeCAD est
essentiellement une application créée par les personnes qui l'utilisent, au lieu d'être créée par une entreprise
qui tente de vous vendre un produit. Et bien sûr, cela signifie également que FreeCAD est gratuit, non
seulement pour l'utilisation, mais aussi pour distribuer, copier, modifier ou même vendre.
FreeCAD fonctionne sans aucune différence sur Windows, Mac OS et Linux. Cependant, les méthodes
d'installation diffèrent légèrement selon votre plate-forme. Sur Windows et Mac, la communauté FreeCAD
fournit des paquets précompilés (installeurs) prêts à télécharger, alors que sous Linux, le code source est mis
à la disposition des responsables de distribution de Linux, qui sont responsables de l'emballage de FreeCAD
pour leur distribution spécifique. Par conséquent, sur Linux, vous pouvez généralement installer FreeCAD
directement à partir de l'application du gestionnaire de logiciels.
Versions de FreeCAD
Les versions officielles de FreeCAD, que vous pouvez trouver sur la page ci-dessus et dans le gestionnaire de
logiciels de votre distribution, sont des versions stables. Cependant, le développement de FreeCAD est
rapide! Les nouvelles fonctionnalités et les corrections de bogues sont ajoutées presque tous les jours.
Puisque cela peut parfois prendre beaucoup de temps entre les versions stables, vous pourriez être intéressé
par essayer une version plus efficace de FreeCAD. Ces versions de développement, ou pré-versions, sont
mises à disposition de temps en temps vers la page de téléchargement mentionnée ci-dessus (download page
) ou, si vous utilisez Ubuntu, la communauté FreeCAD gère également PPA (Personal Package Archives) ou
«builds quotidiens» régulièrement mis à jour avec les changements les plus récents.
Si vous installez FreeCAD dans une machine virtuelle, sachez que la performance peut être faible ou, dans
certains cas, inutilisable en raison des limites du support OpenGL sur la plupart des machines virtuelles.
3. Acceptez les termes de la licence LGPL (ce sera l'un des rares cas où vous pouvez vraiment cliquer
sur le bouton "accepter" sans lire le texte. Pas de clauses cachées) :
2. Cliquez sur le bouton "installer" et c'est tout, FreeCAD s’installe. N'oubliez pas de noter ensuite!
Les paramètres de préférences dans FreeCAD se trouvent sous menu Edit -> Preferences. Vous pouvez
parcourir les différentes pages pour voir s'il y a autre chose que vous voudriez changer, mais voici quelques
éléments fondamentaux :
1. Langue : FreeCAD choisira automatiquement la langue de votre système d'exploitation, mais vous
pourriez vouloir changer cela. FreeCAD est presque entièrement traduit en 5 ou 6 langues, plus
beaucoup d'autres qui ne sont actuellement traduites que partiellement. Vous pouvez facilement aider
à traduire FreeCAD (help to translate FreeCAD).
3. Créer un document au démarrage : combiné à l'option ci-dessus, cela démarre FreeCAD prêt à
travailler.
5. Autorisation et licence : vous pouvez définir les paramètres par défaut qui seront utilisés pour votre
nouveau dossiers. Envisagez de rendre vos fichiers partageables directement depuis le début, en
utilisant une licence plus amicale de copyleft comme Creative Commons.
6. Rediriger les messages Python vers la sortie : ces deux options sont toujours bonnes à cocher, car
elles vous permettront de voir ce qui ne va pas dans le rapport de fonctionnement quand il y a un
problème avec l'exécution d'un script python particulier.
1. Une bibliothèque de pièces (Parts library), qui contient toutes sortes de modèles utiles, ou des
modèles créés par des utilisateurs FreeCAD qui peuvent être utilisés gratuitement dans vos projets. La
bibliothèque peut être utilisée et est accessible directement depuis votre installation FreeCAD.
2. Une collection de greffons (collection of addons), la plupart des ateliers supplémentaires, qui étendent
la fonctionnalité de FreeCAD pour certaines tâches. Les instructions d'installation sont fournies sur
chaque page complémentaire.
3. Une collection de macros (collection of macros), qui sont également disponibles sur le wiki FreeCAD
(the FreeCAD wiki) ainsi que des informations sur la façon de les utiliser. Le wiki contient beaucoup
plus de macros.
Si vous utilisez Ubuntu ou l'un de ses dérivés, le PPA FreeCAD-extras contient la plupart de ces addons. Sur
d'autres plates-formes, n’importe quel addon, y compris la bibliothèque de pièces, peut être facilement installé
à l'aide d'une macro addon-installer fournie dans le dépôt addons. La procédure suivante montre comment
installer l'addon-installer (d'autres macros peuvent être installées de la même manière) :
2. Placez la macro dans votre dossier de destination FreeCAD Macros. Le chemin de destination de
FreeCAD Macros est indiqué au bas de la boîte de dialogue de Exécuter macro dans FreeCAD :
Le centre de démarrage est un «écran de bienvenue» pratique, qui présente des informations utiles pour les
nouveaux arrivants, comme les derniers fichiers sur lesquels vous avez travaillé, les nouveautés du Monde
FreeCAD, ou des informations rapides sur les ateliers les plus courants. Il vous informera également si une
nouvelle version stable de FreeCAD est disponible.
Mais après un certain temps, ou après avoir fait quelques changements dans les préférences, vous allez
beaucoup plus probablement vous trouver directement dans l'un des autres ateliers, avec un nouveau
document ouvert. Ou tout simplement, fermez l'onglet de la page de démarrage et créez un nouveau
document :
Les ateliers sont un groupe d'outils (boutons de barre d'outils, menus et autres contrôles d'interface) qui sont
regroupés par spécialité. Pensez à un atelier où vous avez différentes personnes travaillant ensemble : une
personne qui travaille avec du métal, une autre avec du bois. Chacun d'eux a, en son atelier, une table
séparée avec des outils spécifiques pour son travail. Cependant, ils peuvent tous travailler sur les mêmes
objets. Il en va de même dans FreeCAD.
Le contrôle le plus important de l'interface FreeCAD est le sélecteur d’atelier (Workbench), que vous utilisez
pour passer d'un atelier à l'autre :
Les ateliers perturbent souvent les nouveaux utilisateurs, car il n'est pas toujours facile de savoir dans lequel
rechercher un outil spécifique. Mais ils apprennent rapidement, et après peu de temps, ressentent le contexte
- en réalisant un moyen pratique d'organiser la multitude d'outils que FreeCAD offre, et ils sont également
entièrement personnalisables (voir ci-dessous).
Plus loin dans ce manuel, vous trouverez également un tableau montrant le contenu de tous les ateliers.
• La vue 3D est le composant principal de l'interface. Il peut être désactivé hors de la fenêtre principale,
vous pouvez avoir plusieurs vues du même document (ou des mêmes objets), ou plusieurs documents
ouverts en même temps. Vous pouvez sélectionner des objets ou des parties d'objets en cliquant
dessus, et vous pouvez obtenir une vue panoramique, zoomer et faire pivoter la vue avec les boutons
de la souris. Cela sera expliqué plus avant dans le prochain chapitre.
◦ L'onglet Modèle vous montre le contenu et la structure de votre document ci-dessus et les
propriétés (ou les paramètres) des objets sélectionnés ci-dessous. Ces propriétés sont séparées
en deux catégories :
◦ L'onglet Tâches est l'endroit où FreeCAD vous demandera des valeurs spécifiques à l'outil que
vous utilisez à cet instant, par exemple, en entrant une valeur «longueur» lorsque l'outil Ligne est
utilisé. Il se ferme automatiquement après avoir appuyé sur le bouton OK (ou Annuler). De plus, en
double-cliquant sur l'objet associé dans la vue combinée, la plupart des outils vous permettront de
rouvrir ce panneau de tâches afin de modifier les paramètres.
• La console Python est également cachée par défaut. C'est là que vous pouvez interagir avec le
contenu du document à l'aide du langage Python (Python language). Étant donné que chaque action
que vous faites sur l'interface FreeCAD exécute effectivement un morceau de code Python, l'ouverture
de cette console vous permet de regarder le code se déployer en temps réel, ce qui vous permet de
découvrir un peu Python sur votre chemin, presque sans le remarquer.
N’importe lequel des panneaux ci-dessus peut être activé / désactivé à partir du menu Affichage -> Panneaux.
Ces options de personnalisation avancées sont disponibles à partir du menu Outils -> Personnaliser :
L'espace FreeCAD 3D est un espace euclidien (euclidian space). Il a un point d'origine et trois axes: X, Y et Z.
Si vous regardez votre scène d'en haut, de manière conventionnelle, l'axe X pointe vers la droite, l’axe Y vers
l'arrière, et l'axe Z vers le haut. Dans le coin inférieur droit de la vue FreeCAD, vous pouvez toujours voir d'où
vous regardez la scène :
Chaque point de chaque objet qui existe dans cet espace peut être situé par ses coordonnées (x, y, z).
Par exemple, un point avec des coordonnées (2, 3, 1) se situera à 2 unités sur l'axe X, 3 unités sur l'axe Y et 1
unité sur l'axe Z :
Vous pouvez regarder cette scène sous n'importe quel angle, comme si vous teniez une caméra. Cette
caméra peut être déplacée à gauche, à droite, en haut et en bas (pan), tourné autour de ce que vous regardez
(tourner) et vous rapprocher ou plus loin de la scène (zoom).
Inventor
CTRL +
2
1
CAD (default)
Blender
SHIFT +
SHIFT + ALT +
Geste
+ DRAG + DRAG
• Les touches fléchées pour déplacer la vue vers la gauche / vers la droite et vers le haut / vers le bas
• SHIFT + flèche gauche et SHIFT + flèche droite pour faire pivoter la vue de 90 degrés
• Les touches numériques, 1 à 6, pour les six vues standard, haut, avant, droite, bas, arrière et gauche
Ces contrôles sont également disponibles dans le menu Affichage et certains dans la barre d'outils Affichage.
Un panneau appelé "Sélection de Vue", disponible dans le menu Affichage, peut également être activé, ce qui
vous montre ce qui est actuellement sélectionné :
Vous pouvez également utiliser la sélection de vue pour sélectionner des objets en recherchant un objet
particulier.
À l'intérieur du document, les objets peuvent être déplacés en groupes et ont un nom unique. La gestion des
groupes, des objets et des noms d'objets se fait principalement à partir de l'arborescence. Là, vous pouvez
créer des groupes, déplacer des objets vers des groupes, supprimer des objets ou des groupes. En cliquant
avec le bouton droit de la souris dans la vue arborescente ou sur un objet, vous pouvez renommer des objets,
modifier leur couleur, les cacher ou les afficher, ou éventuellement réaliser d'autres opérations, selon l'atelier
du moment.
S'il y a au moins un document ouvert dans FreeCAD, il existe toujours un seul et unique document. C'est le
document qui apparaît dans la vue en 3D du moment, le document sur lequel vous êtes actuellement en train
de travailler. Si vous changez d'onglet sur un autre document, celui-ci devient le document actif. La plupart des
opérations fonctionnent toujours sur le document actif.
Les documents FreeCAD sont enregistrés avec l'extension .FcStd, qui est un composé à base de format zip,
similaire à LibreOffice. Si quelque chose va très mal, il est souvent possible de le décompresser et de
résoudre le problème ou de sauver les données.
Les objets paramétriques, dans FreeCAD, sont en réalité de petits morceaux d'un programme qui fonctionnent
chaque fois que l'un des paramètres a changé. Les objets peuvent avoir beaucoup de types de paramètres
différents : des nombres (nombres entiers comme 1, 2, 3 ou à virgule flottante comme 3.1416), des tailles
réelles (1m m, 2.4m, 4.5ft), des coordonnées (x, y, z), des chaînes de texte ("hello!") ou même d’autres objets.
Ce dernier type permet de créer rapidement des chaînes d'opérations complexes, chaque nouvel objet étant
basé sur un précédent, et en ajoutant de nouvelles fonctionnalités.
Dans l'exemple ci-dessous, un objet parallélipipédique solide (Pad) est basé sur une forme 2D rectangulaire
(Sketch ou esquisse) et a une longueur d'extrusion. Avec ces deux propriétés, il produit une forme solide en
extrudant la forme de base par la distance donnée. Vous pouvez alors utiliser cet objet comme base pour
d'autres opérations, comme le dessin d'une nouvelle forme 2D sur l'une de ses faces (Sketch001) et puis faire
une soustraction (Pocket), jusqu'à ce que vous arriviez à votre objet final.
Toutes les opérations intermédiaires (formes 2D, pad, poche, etc.) sont toujours là, et vous pouvez toujours
modifier n'importe lequel de leurs paramètres à tout moment. Toute la chaîne sera reconstruite (recalculée)
chaque fois que cela s'avère nécessaire.
1. Le recalcul n'est pas toujours automatique. Les opérations lourdes, qui pourraient modifier une grande
partie de votre document, et donc prendre un certain temps, ne sont pas exécutées automatiquement.
Au lieu de cela, l'objet (et tous les objets qui en dépendent) seront marqués pour le recalcul (une petite
icône bleue apparaît sur eux dans l'arborescence). Vous devez alors appuyer sur le bouton de recalcul
pour que tous les objets marqués soient recalculés.
2. L'arbre de dépendance doit toujours circuler dans la même direction. Les boucles sont interdites. Vous
pouvez avoir l'objet A qui dépend de l'objet B qui dépend de l'objet C. Mais vous ne pouvez pas avoir
l'objet A qui dépend de l'objet B qui dépend de l'objet A. Cela serait une dépendance circulaire.
Cependant, vous pouvez avoir beaucoup d'objets qui dépendent du même objet, par exemple, les
objets B et C dépendent tous deux de A. Le menu outil → graphique de dépendance vous montre un
diagramme de dépendance comme sur l'image ci-dessus. Ça peut être utile pour détecter les
problèmes.
Tous les objets ne sont pas paramétriques dans FreeCAD. Souvent, les géométries que vous importez
d'autres fichiers ne contiennent aucun paramètre et seront des objets simples et non paramétriques.
Cependant, ceux-ci peuvent souvent être utilisés comme base ou point de départ pour les objets
paramétriques nouvellement créés, en fonction, bien sûr, de ce que requiert l'objet paramétrique, et de la
qualité de la géométrie importée.
Tous les objets, cependant, paramétriques ou non, auront quelques paramètres de base, comme un Nom, qui
est unique dans le document et ne peut pas être édité, un label, qui est un nom défini par l’utilisateur et qui
peut être édité, et un emplacement (placement) qui définit sa position dans l'espace 3D.
Enfin, il convient de noter que les objets paramétriques personnalisés sont faciles à programmer en python
(easy to program in python).
Certains de ces formats de fichiers ont des options. Celles-ci peuvent être configurées à partir du menu
Édition ->Préférences -> Importer / exporter :
Quatre ateliers sont également conçus pour travailler par paires, et l'un d'entre eux est entièrement inclus
dans l'autre : Arch contient tous les outils Draft, et PartDesign tous les outils Sketcher. Cependant, pour plus
de clarté, ils sont séparés ci-dessous.
Part
L’atelier Part fournit des outils de base pour travailler avec des pièces solides : primitives, telles que cube et
sphère, des opérations géométriques simples et des opérations booléennes. Êtant le principal point d'ancrage
avec OpenCasCade, l’atelier Part fournit la base du système de géométrie de FreeCAD, et presque tous les
autres ateliers produisent une géométrie partielle.
Crée un congé (arrondi) sur une ou Crée un objet par révolution d'un autre
Congé plusieurs arêtes d'un objet Révolution objet autour d'un axe
Crée une coupe par l'intersection d'un Coupe à Crée une coupe par l'intersection d'un
Coupe objet avec un plan de coupe plans objet avec plusieurs plans de coupe
multiples
Crée une surface réglée entre deux Balayage d'un ou plusieurs profils le
Surface courbes données long d'un chemin (ligne fermée ou non)
Balayage
Réglée
Crée un lissage d'un profil jusqu'à un Crée une copie décalée de l'objet
Lissage autre profil ou d'une série de profils Décalage sélectionné
Affecte une épaisseur aux faces d'une
forme
Epaisseur
Déplace l'objet (ou les objets) d'un Déplace l'objet (ou les objets) par
Déplacer emplacement à un autre par translation Pivoter rotation autour d'un point
Renvoie ou joint des objets dans un Renvoie ou sépare des objets en objets
Upgrade objet de niveau supérieur Downgrade de niveau inférieur
dessine un segment d'arc à partir du dessine un arc de cercle sur deux points
centre, rayon, angle de départ et angle Arc par 3 et un troisième point pour la
Arc d'arrivée. circonférence.
points
dessine une ellipse à partir du centre, dessine une ellipse à partir du grand
d'un point sur le grand rayon et d'un Ellipse par 3 diametre (2 points) et d'un point sur le
Ellipse point sur le petit rayon. petit rayon.
points
crée une arête liée à une géométrie bascule un élément vers / depuis le
Géométrie externe. Mode mode construction.
externe Construction
Remarque : dans une esquisse, les éléments de construction (en bleu) sont ignorés lors d'une opération de
géométrie 3D et sont seulement visibles quand l’esquisse qui les contient est en mode édition.
Dans FreeCAD v0.16, il a été ajouté la possibilité de créer une géométrie directement dans le Mode
Construction, et l'icone a été changée. Le fait de sélectionner une géométrie existante et de cliquer sur cet
outil bascule la géométrie en mode Construction. Dans FreeCAD v0.16, quand on clique sur cet outil alors
qu'aucune géométrie n'est sélectionnée, cela change le mode pour les prochains objets à créer (Normal /
Construction).
Contraintes d'esquisse
Les contraintes sont utilisées pour définir des règles entre les éléments d'esquisse et pour verrouiller
l'esquisse le long des axes vertical et horizontal.
Pour ces contraintes vous pouvez utiliser une expression. Les données peuvent prendre la forme d'une feuille
de calcul de l'atelier Spreadsheet.
Autres contraintes :
Outil Description Outil Description
crée une esquisse symétrique selon Recopie les éléments d’une esquisse
Esquisse l'axe X, l'axe Y ou l'origine. Copier une dans l’esquisse en mode édition [v 0.17]
miroir esquisse
Applique une pente angulaire aux Copie une fonction par symétrie par
Dépouille faces d'un objet (dépouille). Symétrie rapport à un plan ou une face (plane).
Crée une répétition linéaire d’une Crée une répétition polaire d’une
Répétition fonction. Répétition fonction.
Linéaire Polaire
Crée une transformation multiple d’une Copie une fonction à une échelle
Transformatio fonction. différente
Scaled
n multiple
Crée un bâtiment incluant les objets Crée un site incluant les objets
Bâtiment sélectionnés. Site sélectionnés.
Ajouter un système d'axes dans le Crée un toit en pente à partir d'une face
Système d'axes document. Toiture sélectionnée.
• L’atelier de rendu réaliste (Raytracing Workbench) offre des outils pour l'interface avec des
programmes externes tels que povray ou luxrender. Depuis FreeCAD, cet espace de travail vous
permet de produire des rendus de haute qualité à partir de vos modèles.
• L’atelier Analyse des Eléments Finis (FEM Workbench) traite de l'analyse des éléments finis (Finite
Elements Analysis) et permet d'effectuer des calculs de résistance pré et post-traitement et d'afficher
les résultats graphiquement.
Ateliers externes
Un certain nombre d'autres ateliers très utiles produits par les membres de la communauté FreeCAD existent
également. Bien qu'ils ne soient pas inclus dans une installation standard de FreeCAD, ils sont faciles à
installer en tant que plug-ins. Ils sont tous référencés dans le dépôt FreeCAD-addons. Parmi les plus
développés se trouvent les suivants :
Comme nous l'avons vu plus tôt dans ce manuel, FreeCAD peut gérer de nombreux types de géométrie, mais
le type préféré et le plus utile pour le genre d'objets 3D que nous voulons concevoir avec FreeCAD, c'est-à-
dire les objets du monde réel, est, sans aucun doute, solide, la géométrie BREP, qui est principalement prise
en charge par l’atelier Part (Part Workbench). Contrairement aux maillages de polygones (polygon meshes),
qui sont fabriqués uniquement de points et triangles, les objets BREP ont leurs faces définies par des courbes
mathématiques, qui permettent une précision absolue, peu importe l'échelle.
La différence entre les deux peut être comparée à la différence entre bitmap et images vectorielles. Comme
pour les images bitmap, les maillons polygonaux ont leurs surfaces courbes fractionnées en une série de
points. Si vous le regardez très près, ou que vous l'imprimez très grand, vous n’allez pas voir une surface
courbe mais une surface facettisée. Dans les images vectorielles et les données BREP, la position de
n'importe quel point sur une courbe n'est pas stockée dans la géométrie mais est calculée à la volée, avec
une précision exacte.
Dans FreeCAD, toute la géométrie basée sur BREP est gérée par un autre logiciel open source,
OpenCasCade. L'interface principale entre FreeCAD et le noyau OpenCasCade est l’atelier Part. La plupart
des autres ateliers créent leurs fonctionnalités au dessus de l’atelier Part.
Bien que d'autres ateliers proposent souvent des outils plus avancés pour construire et manipuler la
géométrie, puisqu'ils manipulent tous les objets Part, il est très utile de savoir comment ces objets fonctionnent
en interne et peuvent utiliser les outils de Part car, plus simples, ils peuvent très souvent vous aider à
contourner les problèmes que les outils les plus intelligents ne parviennent pas à résoudre correctement.
Pour illustrer le fonctionnement de l’atelier Part, nous modéliserons cette table, en utilisant uniquement des
opérations CSG (à l'exception des vis, pour lesquelles nous utiliserons l'un des greffons (addons), et les
dimensions, qui seront vues dans le chapitre suivant) :
• Sélectionnez la boite obtenue, puis définissez les propriétés suivantes (dans l'onglet Données):
◦ Longueur: 80mm (ou 8cm, ou 0.8m, FreeCAD fonctionne dans n'importe quelle unité)
◦ Largeur: 80mm
◦ Hauteur: 75cm
• Dupliquez la boîte en appuyant sur Ctrl + C puis sur Ctrl + V (ou menu Edition -> Copier et coller)
◦ Position x: 8mm
◦ Position y: 8mm
• Maintenant, nous pouvons soustraire l'un de l'autre: Sélectionnez le premier, c'est-à-dire celui qui
reste donc avec la touche CTRL enfoncée, sélectionnez l'autre, qui sera soustrait (l'ordre est
important) et appuyez sur le bouton Soustraction (soustraction booléenne) :
• Maintenant, créez les trois autres pieds en copiant notre cube de base 6 autres fois. Puisqu'il est
toujours copié, vous pouvez simplement coller (Ctrl + V) 6 fois. Modifiez leur position comme suit :
◦ Cube002: x: 0, y: 80cm
◦ Cube004: x: 120cm, y: 0
Vous avez peut-être pensé que, au lieu de dupliquer le cube de base six fois, nous pourrions dupliquer le pied
complet trois fois. C'est tout à fait vrai, comme toujours dans FreeCAD, il existe plusieurs façons d'obtenir un
même résultat. C'est une chose précieuse à retenir, parce que, lorsque nous progresserons vers des objets
plus complexes, certaines opérations pourraient ne pas donner un résultat correct et nous devons souvent
essayer d'autres façons.
• Nous allons maintenant faire des trous pour les vis, en utilisant la même méthode de coupe. Puisque
nous avons besoin de 8 trous, deux dans chaque pied, nous pourrions faire 8 objets à soustraire. Au
lieu de cela, explorons d'autres façons et faisons 4 cylindres, qui seront réutilisés par deux pieds. Alors,
créons quatre cylindres en utilisant l'outil Cylindre . Vous pouvez à nouveau, en faire un seul et le
doubler ensuite. Donnez à tous les cylindres un rayon de 6 mm. Cette fois, nous devrons les faire
pivoter, ce qui se fait également via la propriété Placement :
◦ Cylindre002: hauteur: 90cm, angle: 90 °, axe: x: -1, y: 0, position: x: 40mm, y: -10mm, Z: 70cm
◦ Cylindre003: hauteur: 90cm, angle: 90 °, axe: x: -1, y: 0, position: x: 124cm, y: -10mm, Z: 70cm
• Maintenant, faisons les soustractions. Sélectionnez le premier pied, puis, avec la touche CTRL
enfoncée, sélectionnez un des cylindres qui le traversent, appuyez sur le bouton Couper. Le trou sera
fait, et le cylindre caché. Trouvez-le dans l'arborescence en développant le pied percé.
• Sélectionnez un autre pied percé par ce cylindre caché, puis répétez l'opération, cette fois-ci en
sélectionnant le tube dans l'arborescence avec Ctrl +, car il est caché dans la vue 3D (vous pouvez
également le rendre visible et le sélectionner dans la vue 3D). Répétez ceci pour les autres pieds
jusqu'à ce que chacun d'eux ait ses deux trous :
Une autre particularité de FreeCAD est que le concept de l'objet 3D et le concept de l'opération 3D ont
tendance à se fondre en une même chose. La coupe est à la fois une opération, et l’objet 3D résultant de cette
opération. Dans FreeCAD, cela s'appelle une "fonctionnalité", plutôt que objet ou opération.
• Maintenant, faisons le dessus de la table, ce sera un simple bloc de bois ; faisons-le avec une autre
boîte de longueur: 126cm, largeur: 86cm, hauteur: 8cm, position: x: 10mm, y: 10mm, z, 67cm. Dans
l'onglet Affichage, vous pouvez lui donner une belle couleur brun-semblable au bois en changeant sa
Propriété couleur :
Maintenant que nos cinq pièces sont complètes, c'est le bon moment pour leur donner des noms plus parlants
que "Cut015". En cliquant avec le bouton droit sur les objets dans l'arborescence (ou en appuyant sur F2),
vous pouvez renommer de façon plus significative pour vous-même ou pour une autre personne qui ouvrirait
votre travail plus tard. On dit souvent que le fait de donner simplement des noms concrets à vos objets est
beaucoup plus important que la façon dont vous les modélisez.
• Nous allons maintenant placer des vis. Il existe aujourd'hui un complément extrêmement utile
développé par un membre de la communauté FreeCAD, que vous pouvez trouver sur le dépôt de
greffons FreeCad (FreeCAD addons), appelé Fasteners, qui rend l'insertion de vis très facile.
L'installation d’ateliers supplémentaires est simple et décrite dans les pages des greffons (addons).
• Une fois que vous avez installé l’atelier Fasteners et redémarré FreeCAD, il apparait dans la liste des
ateliers, et nous pouvons l’utiliser. Ajouter une vis à l'un de nos trous est effectué en sélectionnant
d'abord l'arête circulaire de notre trou :
• Vertices (sommets) : ce sont des points (généralement des points d'extrémité) sur lesquels tout le
reste est construit. Par exemple, une ligne comporte deux sommets.
• Arêtes : les arêtes sont de la géométrie linéaire comme les lignes, les arcs, les ellipses ou les courbes
NURBS. Elles ont généralement deux sommets, mais certains cas particuliers en ont seulement un (un
cercle fermé par exemple).
• Lignes composites : une ligne composite est une succession d'arêtes connectées par leurs
extrémités. Elle peut contenir des arêtes de n'importe quel type, et elle peut être fermée ou non.
• Faces : les faces peuvent être planes ou courbes, et peuvent être formées par une ligne composite
fermée qui forme la bordure de la face, ou plus d'une, dans le cas où la face a des trous.
• Solides : lorsqu'une coquille est complètement fermée, c'est-à-dire qu'elle n'a pas de "fuite", elle
devient solide. Les solides portent la notion d'intérieur et d'extérieur. De nombreux ateliers s'appuient
sur cette notion pour que les objets qu'ils produisent puissent être construits dans le monde réel.
• Composés : Les composés sont simplement des agrégats d'autres formes, quel que soit leur type, en
une seule forme.
Dans la vue 3D, vous pouvez sélectionner individuellement des sommets, des arêtes ou des faces. En
sélectionnant l'un d’entre eux, vous sélectionnez également l'objet entier.
Téléchargements
• Le fichier produit dans cet exercice:
https://github.com/yorikvanhavre/FreeCADmanual/blob/master/files/table.FCStd
L’atelier Draft, bien qu'il adopte des façons de travailler hérité du dessin traditionnel 2D du monde de la CAO
n'est pas limité au royaume 2D. Tous ses outils fonctionnent dans l'ensemble de l'espace 3D et beaucoup de
ses outils, par exemple Déplacement ( Move ) ou Rotation ( Rotate), sont couramment utilisés partout
dans FreeCAD car ils sont souvent plus intuitifs que changer les paramètres de placement manuellement.
Parmi les outils offerts par l’atelierDraft, vous trouverez des outils de dessin traditionnels comme ligne (
Line), cercle ( Circle) ou polyligne ( Wire), des outils de modification comme déplacer ( Move), faire
pivoter ( Rotate) ou décaler ( Offset), un système de plan de travail / grille (working plane/grid system) qui
vous permet de définir précisément dans quel plan vous travaillez, et un système d'accrochage complet
(snapping system) qui rend très facile de dessiner et de positionner précisément des éléments l'un par rapport
à l'autre.
Pour montrer le travail et les possibilités de l'ébauche de travail, nous réaliserons un exercice simple, dont le
résultat sera ce petit dessin, montrant le plan d'étage d'une petite maison qui ne contient qu'un dessus de
cuisine (un plan d'appartement très absurde, mais on peut faire ce que nous voulons ici, n'est-ce pas?) :
L’atelier Draft dispose également de deux barres d'outils spéciales : l'une avec les paramètres visuels, où
vous pouvez modifier le plan de travail actuel, activer / désactiver le mode de construction (construction
mode), définir la couleur de la ligne, la couleur de la face, l’épaisseur de la ligne et la taille du texte à utiliser
pour les nouveaux objets, Et un autre avec des filtres d’accrochages. Là, vous pouvez activer / désactiver la
grille et définir / désactiver les filtres d’accrochages particuliers (Snap locations) :
• Commençons par passer en mode construction, ce qui nous permettra de dessiner des lignes
directrices sur lesquelles nous allons dessiner notre géométrie finale.
• Nous pouvons ensuite dessiner quelques lignes verticales pour définir où nos portes et fenêtres seront
placées, en utilisant l'outil Ligne ( Line). L’intersection de ces lignes avec nos deux rectangles nous
donnera des intersections utiles pour enrayer nos murs. Dessinez la première ligne du point (15cm,
1m, 0) au point (15cm, 3m, 0).
• Dupliquez cette ligne 5 fois, en utilisant l'outil Déplacer ( Move) avec le mode Copy activé. Activez
également le mode relatif, ce qui nous permettra de définir des déplacements selon des distances
relatives, ce qui correspond à la position exacte de chaque ligne. Donnez à chaque nouvelle copie un
point de départ, vous pouvez le laisser à (0,0,0) par exemple, et les points finaux relatifs suivants :
◦ Line002: x: 120cm
◦ Line004: x: 80cm
◦ Line005: x: 15cm
• C'est tout ce dont nous avons besoin maintenant, nous pouvons donc désactiver le mode de
construction. Vérifiez que toute la géométrie de la construction a été placée dans un groupe
"Construction", ce qui permet de le masquer tout à la fois ou même de le supprimer complètement
plus tard.
• Maintenant, dessinons nos deux pièces murales à l'aide de l'outil Polyligne ( Wire ). Assurez-vous
que le filtre d’accrochage intersection ( intersection snap ) est activé, car nous devrons créer les
intersections de nos lignes et de nos rectangles. Dessinez deux polylignes comme suit, en cliquant
sur tous les points de leurs contours. Pour les fermer, cliquez sur le premier point, ou appuyez sur le
bouton Fermer :
• Dessinons maintenant les fenêtres et les portes. Assurez-vous que le filtre d’accrochage Point
Milieu ( midpoint snap ) est activé et tracez six lignes comme suit :
• Ensuite, créez l'arc d'ouverture avec l'outil Arc ( Arc). Choisissez le même point que le centre de
rotation que nous avons utilisé dans l'étape précédente comme centre, cliquez sur l'autre point de la
ligne pour donner le rayon, puis les points de début et de fin comme suit :
• Ensuite, ajoutons un lavabo et une table de cuisson. Dessiner ces types de symboles à la main peut
être très fastidieux, et ils sont généralement faciles à trouver sur Internet, par exemple sur
http://www.cad-blocks.net. Dans la section Téléchargements ci-dessous, pour plus de commodité,
nous avons récupéré un évier et une table de cuisson sur ce site et les avons sauvegardés en tant
que fichiers DXF. Vous pouvez télécharger ces deux fichiers en visitant les liens ci-dessous et en
cliquant avec le bouton droit sur le bouton Raw, puis en sélectionnant Enregistrer sous.
• L'insertion d'un fichier DXF dans un document FreeCAD ouvert peut être effectuée soit en
choisissant l'option du menu Fichier -> Importer, soit en faisant glisser et déposer le fichier DXF
depuis votre explorateur de fichiers dans la fenêtre FreeCAD. Le contenu des fichiers DXF peut ne
pas apparaître directement au centre de votre vue actuelle, selon l'endroit où ils se trouvaient dans
le fichier DXF. Vous pouvez utiliser le menu Affichage -> Affichage standard -> Afficher tout pour
faire un zoom arrière et trouver les objets importés. Insérez les deux fichiers DXF et déplacez-les à
un emplacement approprié sur le dessus de la table :
• Vous pouvez modifier la position d'un texte de cote en double-cliquant sur la dimension dans
l'arborescence. Un point de contrôle vous permettra de déplacer le texte graphiquement. Dans notre
exercice, les textes "0.15" ont été déplacés pour une meilleure clarté.
• Vous pouvez modifier le contenu du texte de cote en éditant leur propriété Override. Dans notre
exemple, les textes des dimensions des portes et des fenêtres ont été édités pour indiquer leurs
hauteurs :
• Les lignes de repère (également appelées «leaders») qui relient les textes à l'élément qu'ils
décrivent se font simplement avec l'outil Polyligne. Dessinez les polylignes, à partir de la position du
texte, jusqu’à l'endroit décrit. Une fois que cela est fait, vous pouvez ajouter une bille ou une flèche à
la fin des fils en définissant leur propriété End Arrow (extrémité de la flèche) sur True.
• En appuyant sur le bouton Sélectionner le plan de travail ( working plane) après avoir
sélectionné une face d'un objet, vous pouvez également placer le plan de travail n'importe où et, par
conséquent, dessiner des objets Draft dans différents plans, par exemple sur le dessus des murs.
Ceux-ci peuvent ensuite être extrudés pour former d'autres solides 3D. Expérimentez le réglage du
plan de travail sur l'une des faces supérieures des murs, puis tracez des rectangles là-haut.
Fondamentalement, ce que fait l’atelier Draft, c'est fournir des moyens graphiques pour créer des opérations
partielles de base. Pendant que dans Part, vous positionnez généralement les objets en définissant leur
propriété de placement à la main, dans Draft vous pouvez le faire à l'écran. Il y a des moments où c’est mieux,
d'autres fois où l'autre est préférable. N'oubliez pas, vous pouvez créer des outils personnalisés dans un de
ces ateliers, ajouter les outils de l'autre et obtenir le meilleur des deux mondes.
Téléchargements
• Le fichier créé lors de cet exercice:
https://github.com/yorikvanhavre/FreeCADmanual/Blob/master/files/cabin.FCStd
• Le fichier DXF de l'évier: https://github.com/yorikvanhavre/FreeCADmanual/Blob/master/files/sink.dxf
• Le fichier DXF de la table de cuisson:
https://github.com/yorikvanhavre/FreeCADmanual/Blob/master/files/cooktop.dxf
• Le fichier final DXF produit lors de cet exercice: Https://github.com/yorikvanhavre/FreeCAD-
manual/blob/master/files/cabin.dxf
Lorsque vous imprimez des objets en 3D, il est extrêmement important que vos objets soient des solides. Car
ils deviendront des objets solides réels, c'est évident. Rien ne les empêche d'être creux à l'intérieur, bien sûr.
Mais vous devez toujours avoir une idée claire de quels points sont à l'intérieur de la matière et quels points se
trouvent à l'extérieur, car l'imprimante 3D ou la machine CNC doit savoir exactement ce qui est rempli de
matière et ce qui ne l'est pas. Pour cette raison, dans FreeCAD, l’atelier PartDesign (PartDesign Workbench)
est l'outil idéal pour construire de telles pièces, car il veillera toujours pour vous à ce que vos objets restent
des solides et réalisables.
Pour illustrer comment fonctionne l’atelier PartDesign, créons ce morceau bien connu de Lego :
La chose pratique avec les pièces de Lego est que les dimensions sont faciles à obtenir sur internet, au moins
pour les pièces standard. Il est assez facile de les modéliser et de les imprimer sur une imprimante 3D, et
avec un peu de patience (l'impression 3D nécessite souvent beaucoup d'ajustements et de réglages), vous
pouvez faire des pièces totalement compatibles et qui s’encastrent parfaitement dans des blocs Lego
d'origine.
Dans l’exemple ci-dessous, nous allons créer un morceau 1,5 fois plus grand que l'original.
Nous allons maintenant utiliser exclusivement les outils des ateliers Esquisses (Sketcher) et PartDesign. Étant
donné que tous les outils de l’atelier Sketcher sont également inclus dans l’atelier PartDesign, nous pouvons
rester dans PartDesign et nous n'aurons pas à basculer entre les deux.
Lorsqu'une esquisse comporte une quantité définie de contraintes qui interdit les déplacements de tous les
points de l’esquisse, nous parlons d'une esquisse totalement contrainte. Quand il y a des contraintes
redondantes, qui pourraient être supprimées sans que la géométrie ne soit déplacée, on dit qu’elle est sur-
contrainte. Cela devrait être évité, et FreeCAD vous informera si un tel cas se produit.
Les esquisses disposent d’un mode d'édition, où leur géométrie et leurs contraintes peuvent être modifiées.
Quand vous avez terminé l'édition, et quittez le mode d'édition, les esquisses se comportent comme n'importe
quel autre objet FreeCAD, et peuvent être utilisées comme éléments de construction pour tous les outils de
conception de pièces, mais aussi dans d'autres ateliers, tels que Part ou Arch. L’atelier Draft (Draft workbench)
dispose également d'un outil qui convertit les éléments Draft en esquisses, et vice versa.
• Commençons par modéliser une forme parallélipipédique qui sera la base de notre brique Lego. Plus
tard nous allons creuser l'intérieur, et ajouter les 8 bossages sur le dessus. Commençons donc en
faisant une esquisse rectangulaire que nous allons ensuite extruder :
• Cliquez sur le bouton Nouvelle esquisse ( New Sketch). Une boîte de dialogue apparaîtra pour
demander où vous voulez construire votre esquisse, choisissez le plan XY, qui est le plan "sol".
L'esquisse sera créée et sera immédiatement changée en mode édition, et la vue sera orientée pour
regarder votre esquisse selon la normale au plan de travail.
• Vous remarquerez que quelques contraintes ont été automatiquement ajoutées à notre rectangle: les
segments verticaux ont eu une contrainte verticale, les segments horizonaux une contrainte
horizontale, et chaque sommet une contrainte point-sur-point qui collent les segments ensemble. Vous
pouvez expérimenter le déplacement du rectangle en traînant ses lignes avec la souris, toute la
géométrie continuera à obéir aux contraintes.
◦ Sélectionnez l'un des segments verticaux et ajoutez une contrainte de distance vecticale (
Vertical Distance Constraint). Donnez-lui une dimension de 23,7 mm.
◦ Sélectionnez l'un des segments horizontaux et ajoutez une contrainte de distance horizontale (
Horizontal Distance Constraint). Donnez-lui la valeur de 47.7mm.
◦ Enfin, sélectionnez l'un des points d'angle, puis le point d'origine (qui est le point à l’intersection des
axes rouge et vert), puis ajoutez une contrainte de coïncidence ( Point on Point Constraint). Le
rectangle va alors passer au point d'origine, et votre croquis devient vert, ce qui signifie qu’il est
maintenant complètement contraint. Vous pouvez essayer de déplacer ses lignes ou points, rien ne
bouge plus.
• Notre esquisse de base est maintenant prête, nous pouvons quitter le mode d'édition en appuyant sur
le bouton Fermer en haut du panneau de tâches, ou simplement en appuyant sur la touche Échap. Si
nécessaire, plus tard, nous pouvons réactiver le mode d'édition à tout moment en double-cliquant sur
le nom de l'esquisse dans l’arbre de construction.
• Extrudons l’esquisse en utilisant l'outil Extrusion ( Pad), et donnons-lui une dimension de 14,4 mm.
Les autres options peuvent être laissées à leurs valeurs par défaut :
• Nous allons maintenant définir l'intérieur du bloc, en utilisant l'outil Poche ou Cavité ( Pocket), qui est
la version PartDesign de Part Cut. Pour faire une poche, nous allons créer une esquisse sur la face
inférieure de notre bloc, qui sera utilisée pour enlever une partie du bloc.
• Lorsque la face inférieure est sélectionnée, appuyez sur le bouton Nouvelle esquisse ( New sketch).
• La géométrie externe n'est pas "réelle", elle sera cachée lorsque nous quitterons le mode édition. Mais
nous pouvons l'utiliser pour placer des contraintes. Placez les 4 contraintes suivantes :
◦ Sélectionnez les deux points supérieurs à gauche du rectangle et sur la ligne importée de gauche
et ajoutez une contrainte de distance horizontale ( Horizontal Distance Constraint) de 1,8 mm.
◦ Sélectionnez de nouveau les deux points supérieurs à gauche du rectangle et sur la ligne importée
de gauche. Ajoutez une contrainte de distance vecticale ( Vertical Distance Constraint) de 1,8
mm.
◦ Sélectionnez les deux points inférieurs à droite du rectangle et sur la ligne importée de droite et
ajoutez une contrainte de distance horizontale ( Horizontal Distance Constraint) de 1,8 mm.
◦ Sélectionnez de nouveau les deux points inférieurs à droite du rectangle et sur la ligne importée de
droite et ajoutez une contrainte de distance verticale ( Vertical Distance Constraint) de 1,8 mm.
• Quittez le mode d'édition et vous pouvez maintenant effectuer l'opération de poche : l'esquisse étant
sélectionnée, appuyez sur le bouton Poche ( Pocket). Donnez-lui une longueur de 12,6 mm, qui
laissera la face supérieure de notre bloc avec une épaisseur de 1,8 mm (rappelez-vous, la hauteur
totale de notre bloc était de 14,4 mm).
• Importez l’arête gauche de la face de base avec l'outil Géométrie Externe ( External geometry).
• Placez deux contraintes verticales et deux contraintes horizontales de 6 mm entre le centre de chaque
cercle et les points d'angle du bord importé, donc chaque cercle a son centre à 6mm de la bordure de
la face :
• Quittez le mode d'édition, sélectionnez cette nouvelle esquisse et créez une extrusion ( Pad) de
2.7mm :
C'est le grand avantage de travailler avec l'atelier Part Design : tant que vous prenez garde à
construire une forme à partir de la forme précédente, vous construisez réellement un dernier objet
solide.
• Nous pouvons maintenant dupliquer nos deux bossages quatre fois, alors nous en aurons huit.
Sélectionnez le dernier bossage que nous venons de créer.
• Donnez-lui une longueur de 36 mm (qui est l’amplitude totale que nous souhaitons occuper avec nos
copies), dans la direction «Axe d'esquisse horizontale», et faites-en 4 occurrences :
• Maintenant, travaillons sur les trois «tubes» qui remplissent le vide que nous avons créé sur la face
inférieure. Nous avons plusieurs possibilités : créer une esquisse avec trois cercles, l’extruder puis
créer une poche trois fois, ou créer une esquisse de base avec deux cercles concentriques et les
extruder pour former le tube déjà complet, ou même d'autres combinaisons. Comme toujours dans
FreeCAD, il y a de nombreuses façons d'atteindre un même résultat. Parfois, une façon ne
fonctionnera pas comme nous voulons, et nous devons essayer d'autres façons. Ici, nous allons
prendre l'approche la plus sûre, et faire les choses l’une après l'autre.
• Sélectionnez la face qui se trouve au fond de l'espace que nous avons creusé précédemment à
l'intérieur du bloc.
• Créez une nouvelle esquisse, ajoutez un cercle avec un rayon de 4.8825mm, importez le bord gauche
de la face et positionnez le centre verticalement et horizontalement à 10,2 mm du coin supérieur de la
face :
• Créez une copie linéaire de cette dernière extrusion, donnez-lui une longueur de 24mm et 3
occurrences. Nous avons maintenant trois bossages dans l'espace creux :
• Créez une nouvelle esquisse, importez le bord circulaire de notre face, créez un cercle avec un rayon
de 3,6 mm, et ajoutez une contrainte de coïncidence ( Point on Point Constraint) entre le centre du
cercle importé et celui notre nouveau cercle. Nous avons maintenant un cercle parfaitement centré, et
une fois encore complètement contraint :
• Créez une copie linéaire de cette poche, avec une longueur de 24 mm et 3 occurrences.
C'est la dernière étape, notre pièce de lego est maintenant terminée, on peut lui donner une belle
couleur de la victoire !
L’adaptation de ce modèle pour un autre type de brique, par exemple une avec 2x2 bossages, au lieu de 2x4,
serait du gâteau, il faudrait simplement changer quelques dimensions et le nombre d'occurrences dans les
copies linéaires. Nous pourrions créer aussi facilement des pièces plus grandes qui n’existent pas dans le jeu
original de Lego.
Mais nous pourrions aussi avoir besoin de nous débarrasser de l’historique, par exemple si nous voulons
modéliser un château avec cette brique, et ne voulons pas que cet historique soit répété 500 fois dans notre
fichier.
Il existe deux façons simples de se débarrasser de l’historique, on utilise l'outil de création de copie simple
(Create simple copy) de l’atelier Part (Part Workbench), qui créera une copie de notre pièce qui ne dépend
plus de l'historique (vous pouvez supprimer l'historique complet après), l'autre façon est d'exportater la pièce
dans un fichier STEP et de la reimporter.
Assemblage
Mais le meilleur des deux mondes existe également, qui est l'atelier Assembly2 (Assembly2 Workbench), un
greffon (addon) qui peut être installé à partir du dépôt FreeCAD-addons. Cet atelier s'appelle "2" car il existe
également un atelier intégré d'assemblage en développement, qui n'est pas encore prêt. L’atelier Assembly2,
cependant, fonctionne déjà très bien pour construire des assemblages, et comporte également quelques
contraintes d'objet à objet que vous pouvez utiliser pour contraindre la position d'un objet par rapport à un
autre. Dans l'exemple ci-dessous, cependant, il sera plus rapide et plus facile de positionner les pièces à l'aide
du déplacement ( Draft Move) et de la rotation ( Draft Rotate) de l’atelier Draft que d'utiliser les contraintes
d’Assembly2.
06/06/17 Manuel_Freecad.odt Page 87 / 166
• Enregistrez le fichier que nous avons fait jusqu'ici.
• Appuyez sur Importer une pièce à partir d'un autre document FreeCAD.
• La pièce finale sera importée dans le document actuel. L'atelier Assembly2 déterminera
automatiquement quelle est la pièce finale dans notre fichier qui doit être utilisée, et le nouvel objet
reste lié au fichier d’origine. Si nous revenons en arrière et modifions le contenu du premier fichier,
nous pouvons appuyer sur le bouton Mettre à jour les pièces importées dans l'assemblage pour
mettre à jour les pièces ici.
• En utilisant le bouton Importer une pièce à partir d'un autre document FreeCAD plusieurs fois, et
en déplaçant et en orientant les pièces convenablement (avec les outils de l’atelier Draft ou en
manipulant leurs propriétés de placement), nous pouvons créer rapidement un petit assemblage :
Téléchargements
• Le modèle produit lors de cet exercice:
https://github.com/yorikvanhavre/FreeCADmanual/Blob/master/files/lego.FCStd
Si vous avez été prudent lors de la modélisation, la plupart des difficultés que vous pourriez rencontrer lors de
l'impression de votre modèle en 3D a déjà été évitée. Cela implique essentiellement :
• de vérifier que vos objets 3D sont des solides. Les objets du monde réel sont des solides, le modèle
3D doit aussi être un solide. Nous avons vu dans des chapitres précédents que FreeCAD vous aide
beaucoup et que l’atelier Part Design (PartDesign Workbench) vous informera si vous faites une
opération qui empêche votre modèle de rester un solide. L’atelier Part (Part Workbench) contient
également un outil de vérification de la géométrie ( Check Geometry) pratique pour vérifier les
défauts éventuels.
• de vérifier les dimensions de vos objets. Un millimètre sur le modèle sera un millimètre dans la vie
réelle. Chaque dimension importe.
Ci-dessous, nous supposerons que les deux premiers critères sont respectés, et que maintenant, vous êtes
en mesure de produire des objets solides avec des dimensions correctes. Nous allons maintenant voir
comment traiter le troisième point.
Étant donné que beaucoup de ces imprimantes sont construites par soi-même, il y a souvent de petites
différences de l'une à l'autre. Ces programmes offrent généralement des possibilités de configuration avancée
qui permettent d’adapter exactement la sortie aux particularités de votre imprimante 3D.
L'impression 3D réelle, cependant, est un sujet trop vaste pour ce manuel. Mais nous verrons comment
exporter et utiliser ces trancheuses pour vérifier que la sortie est correcte.
Toute la gestion du maillage, dans FreeCAD, est effectuée par un atelier spécifique, l’atelier Mesh (Mesh
Workbench). Cet atelier contient, outre le plus important, les outils qui convertissent les objets Part en objets
Mesh, plusieurs utilitaires qui ont pour but d'analyser et de réparer les maillages.
Bien que le travail avec des maillages ne soit pas la fonction principale de FreeCAD, lorsque vous travaillez
avec la modélisation 3D, vous avez souvent besoin de traiter des objets maillés, car leur utilisation est très
répandue parmi d'autres applications. Cet atelier vous permet de les gérer complètement dans FreeCAD.
• Convertissons un des objets que nous avons modelés dans les chapitres précédents, comme la pièce
de lego (qui peut être téléchargée à partir de la fin du chapitre précédent).
• Un objet maillage sera créé, exactement par dessus notre objet solide. Pour comparer les deux vous
pouvez soit cacher le solide, soit déplacer l'un des objets par rapport à l’autre.
• Modifiez la propriété Vue -> Mode d’affichage du nouvel objet maillage en Lignes de plans, afin de
voir comment s'est déroulée la triangulation.
• Si vous n'êtes pas satisfait et pensez que le résultat est trop grossier, vous pouvez répéter l’opération,
en abaissant la valeur d'écart. Dans l'exemple ci-dessous, le maillage gauche a utilisé la valeur par
défaut de 0,10, tandis que celui de droite utilise 0,01 :
Dans la plupart des cas, cependant, les valeurs par défaut donneront un résultat satisfaisant.
• Nous pouvons maintenant exporter notre maillage à un format de maillage, tel que STL, qui est
actuellement le format le plus utilisé dans l'impression 3D, en utilisant le menu Fichier -> Exporter et
choisir le format de fichier STL.
Si vous ne possédez pas d'imprimante 3D, il est généralement très facile de trouver des services
commerciaux qui vont imprimer et vous envoyer les objets imprimés par courrier. Parmi les plus célèbres, on
trouve Shapeways et Sculpteo, mais vous en trouverez généralement beaucoup d'autres dans votre propre
ville. Dans toutes les grandes villes, vous trouverez également aujourd'hui des Fab labs, qui sont des
laboratoires ou ateliers équipés d'une gamme de machines de fabrication 3D, incluant presque toujours au
moins une imprimante 3D. Les FabLabs sont habituellement des espaces communautaires, qui vous
permettront d'utiliser leurs machines, moyennant des frais ou gratuitement selon le FabLab, mais aussi vous
apprendre à les utiliser et à promouvoir d'autres activités autour de la fabrication 3D.
La configuration correcte des paramètres pour l'impression 3D est un processus compliqué, où vous devez
avoir une bonne connaissance de votre imprimante 3D ; il n'est donc pas très utile de générer du G-code
avant de pouvoir effectivement imprimer (votre fichier de G-code peut ne pas fonctionner correctement sur une
autre imprimante), mais c'est utile pour nous de toute façon, pour vérifier que notre fichier STL sera
imprimable sans problème.
Ceci est notre fichier STL exporté ouvert dans Slic3r. En utilisant l'onglet Aperçu, et en déplaçant le curseur
droit, nous pouvons visualiser le chemin que la tête d'imprimante 3D suivra pour construire notre objet.
Une fois que vous avez installé Cura et l'atelier Cura, vous pourrez l'utiliser pour produire le fichier G-code
directement à partir des objets Part, sans avoir besoin de les convertir en maillages et sans avoir besoin
d'ouvrir une application externe. Produire un autre G-code à partir du fichier de notre brique Lego, en utilisant
l’atelier Cura cette fois, se déroule comme suit :
• Chargez le fichier contenant notre brique Lego (il peut être téléchargé à la fin du chapitre précédent)
• Déplacez la brique Lego à un endroit approprié, comme le centre du lit d'impression. N'oubliez pas que
les objets PartDesign ne peuvent pas être déplacés directement, donc vous devez soit déplacer sa
toute première esquisse (le premier rectangle), ou déplacer (et créer) une copie, qui peut être faite
avec l'outil Part -> Créer copie simple (Part -> Create Simple Copy). La copie peut être déplacée, par
exemple avec l’outil Déplacer de Draft ( Draft -> Move).
• Sélectionnez l'objet à imprimer et sélectionnez dans le menu Impression 3D -> Trancher avec le
moteur Cura.
• Dans le panneau de tâches qui s'ouvre, assurez-vous que le chemin d'accès à l'exécutable Cura est
correctement défini. Comme nous n'allons pas vraiment imprimer, nous pouvons laisser toutes les
autres options telles qu'elles sont. Appuyez sur OK. Deux fichiers seront générés dans le même
répertoire que votre fichier FreeCAD, un fichier STL et un fichier G-code.
• Le G-code généré peut également être réimporté dans FreeCAD (en utilisant le préprocesseur slic3r)
pour vérification.
La génération des parcours d’outils en G-code dans FreeCAD se fait avec l’atelier Path (Path Workbench). Il
dispose d'outils qui génèrent des parcours d’outils complets et d'autres qui ne génèrent que des portions d'un
projet G-code, qui peuvent être assemblés pour former une opération de fraisage complète.
La génération de parcours de fraisage CNC est un autre sujet qui est trop vaste pour être adapté à ce manuel,
nous allons donc montrer comment construire un projet de cheminement simple, sans se soucier de la plupart
des détails de l'usinage CNC réel.
• Chargez le fichier contenant notre pièce de lego, et passez à l’atelier Path (Path Workbench).
• Puisque la pièce finale ne contient plus une face supérieure rectangulaire, cachez la dernière étape de
la pièce de lego, et montrez le premier bloc parallélipipédique que nous avons fait, qui a une face
supérieure rectangulaire.
• Sélectionnez la face supérieure et appuyez sur le bouton Contour de face ( Face Profile).
• Réglez la propriété Copies du réseau linéaire sur 8, et son intervalle à -2 mm dans la direction Z
(profondeur de passe), et déplacez la position du réseau linéaire de 2 mm dans la direction Z, de sorte
que la coupe commencera un peu au dessus du bloc, et inclura aussi la hauteur des bossages.
• Maintenant, nous avons défini un parcours d’usinage qui, après exécution par la fraiseuse, va
contourner un volume rectangulaire sur un bloc de matériau. Nous devons maintenant réaliser l'espace
entre les bossages, afin de les révéler. Cachez le bloc, et montrez à nouveau la pièce finale, afin que
nous puissions choisir la face qui se trouve entre les bossages.
• Sélectionnez la face supérieure et appuyez sur le bouton Poche ( Face Pocket). Définissez la
propriété Décalage (Offset) à 1mm (toujours le rayon de la fraise), et la hauteur de dégagement d’outil
à 20mm. C'est la hauteur de l'endroit où l’outil se déplace lorsque vous passez d'une boucle du
parcours à l'autre. Sinon, la fraise pourrait couper tout droit à travers un de nos bossages :
• Définir la propriété Utiliser les Placements du projet à Vrai, car nous avons changé le placement des
tableaux, et nous voulons que cela soit pris en compte dans le projet.
• Dans l'arborescence, faites glisser et déposez les deux tableaux dans le projet. Vous pouvez
réorganiser des réseaux à l'intérieur du projet si nécessaire, en double-cliquant dessus.
• Le projet peut maintenant être exporté en G-code, en le sélectionnant, en choisissant le menu Fichier
→ Exporter, en sélectionnant le format G-code, et dans la boîte de dialogue contextuelle qui s'ouvrira,
en sélectionnant un post processeur adapté à votre machine.
Il existe de nombreuses applications disponibles pour simuler l’usinage réel, l'une d'entre elles étant
également multi-plate-forme et open-source, comme FreeCAD, est Camotics.
Téléchargements
• Le fichier STL généré dans cet exercice:
https://github.com/yorikvanhavre/FreeCADmanual/Blob/master/files/lego.stl
• Le fichier généré lors de cet exercice:
https://github.com/yorikvanhavre/FreeCADmanual/Blob/master/files/path.FCStd
• Le fichier G-code généré dans cet exercice:
https://github.com/yorikvanhavre/FreeCADmanual/Blob/master/files/lego.gcode
Les exemples typiques sont les instructions Ikea (Ikea instructions), les dessins d'architecture (architectural
drawings) ou les plans (blueprints). Ces dessins contiennent généralement non seulement le dessin lui-même,
mais aussi de nombreuses annotations, telles que les textes, dimensions, chiffres, symboles qui aideront les
autres à comprendre ce qui doit être fait et comment.
Dans FreeCAD, l'atelier chargé de faire de tels dessins est l’atelier Dessin (Drawing Workbench).
L’atelier Dessin vous permet de créer des feuilles de dessin qui peuvent être vierges, ou d’utiliser un modèle
pré-défini pour avoir déjà une série d'éléments sur la feuille, tels que les bordures et le titre. Sur ces feuilles,
vous pouvez ensuite placer les vues des objets 3D que vous avez modélisés précédemment et configurer
comment ces vues doivent apparaître sur la feuille. Enfin, grâce à un greffon (addon) appelé atelier de
Dimensionnement de Dessin (Drawing Dimensioning Workbench), vous pouvez également placer toutes
sortes d'annotations sur la feuille, telles que dimensions, textes et autres symboles habituels couramment
utilisés dans les dessins techniques.
Les feuilles de dessin, une fois complétées, peuvent être imprimées ou exportées sous forme de fichiers SVG,
PDF ou DXF.
Dans l'exercice suivant, nous verrons comment créer un dessin simple d'un modèle de chaise trouvé dans la
bibliothèque FreeCAD (FreeCAD library) en allant dans Meubles -> Chaises -> IkeaChair. La bibliothèque
FreeCAD peut facilement être ajoutée à votre installation FreeCAD (reportez-vous au chapitre d'installation de
ce manuel), ou vous pouvez télécharger simplement le modèle à partir de la page Web de la bibliothèque ou
via le lien direct fourni au bas de ce chapitre.
• Appuyez sur la petite flèche à côté du bouton Nouvelle page de dessin ( New Drawing Page).
• Sélectionnez le modèle A4 Portrait / ISO7200. Un nouvel onglet s'ouvre dans votre fenêtre FreeCAD,
montrant la nouvelle page.
• Un objet Vue sera créé sur notre page. Donner à la vue les propriétés suivantes :
◦ X: 100
◦ Y: 150
◦ Échelle: 0,1
◦ Rotation: 270
• Répétez l'opération deux fois pour créer deux autres vues. Nous allons définir leurs valeurs X et Y, qui
indiquent la position de la vue sur la page, afin de les distinguer de la vue de dessus, et leur
orientation, pour créer différentes orientations de vue. Donnez à chaque nouvelle vue les propriétés
suivantes :
◦ Vue001 (vue de face) : X: 100, Y: 130, échelle: 0.1, Rotation: 90, direction: (-1,0,0)
◦ Vue002 (vue latérale) : X: 180, Y: 130, échelle: 0.1, Rotation: 90, direction: (0, -1,0)
• Nous pouvons régler un peu l'apparence de nos vues si nous voulons, par exemple nous pouvons
régler leur propriété Largeur de trait à 0,5.
Nous allons maintenant placer des dimensions et des indications sur notre dessin. Il existe deux façons
d'ajouter les dimensions d'un modèle, l’une consistant à placer les dimensions dans le modèle 3D en utilisant
l’outil de dimensionnement de l’atelier Draft ( Dimension ), puis à montrer ces dimensions sur notre dessin
avec l'outil Draft View (qui peut être utilisé avec une seule dimension ou un groupe contenant des
dimensions), ou nous pouvons faire les choses directement sur la feuille de dessin, en utilisant l’atelier
Dimensionnement du Dessin (Drawing Dimensioning Workbench), qui peut être installé à partir des greffons
FreeCAD (FreeCAD addons). Nous allons utiliser cette dernière méthode.
• Appuyez sur le bouton Ajouter une dimension linéaire. Les nœuds disponibles sont mis en
surbrillance en vert sur la page de dessin :
• Cliquez deux de ces points, puis cliquez sur un troisième point pour placer la ligne de cote :
• Répétez l'opération, jusqu'à ce que toutes les dimensions que vous souhaitez indiquer soient placées.
Prenez une minute pour parcourir les différentes options proposées dans le panneau des tâches pour
une dimension linéaire. Par exemple, en désactivant l'option de mise en place automatique du texte,
vous pourrez placer le texte de la dimension ailleurs, comme sur l'image ci-dessous :
• Nous allons maintenant placer deux indications, en utilisant l'outil Symboles Soudure/Stries, en
sélectionnant celui par défaut (sans symbole de stries). Dessinez les deux lignes comme sur l'image ci-
dessus.
• Placez maintenant deux textes à l'aide de l'outil Ajouter un texte et modifiez leur propriété texte selon
vos désirs.
• Notre dessin est maintenant terminé, tout ce qu'il reste à faire est de remplir les informations du
cartouche. Avec la plupart des modèles FreeCAD par défaut, cela peut se faire facilement, en modifiant
la propriété Editable Texts de la page.
Notre page peut maintenant être exportée au format SVG pour être plus développée dans des applications
graphiques comme inkscape, ou au format DXF en sélectionnant menu Fichier -> Exporter. L’atelier
Dimensionnement du dessin dispose également de son propre outil d'exportation DXF, qui prend également
en charge les annotations ajoutées avec cet atelier. Le format DXF est reconnu dans presque toutes les
applications de CAO 2D existantes. Les pages de dessin peuvent également être directement imprimées ou
exportées vers PDF.
L'atelier Arch (Arch Workbench) de FreeCAD met en œuvre une série d'outils et d'installations pour la
modélisation BIM. Bien qu'il ait un but différent, il est conçu pour fonctionner dans une intégration étroite avec
le reste de FreeCAD : Tout ce qui est fait avec n'importe quel autre atelier de FreeCAD peut devenir un objet
Arch ou être utilisé comme base pour un objet Arch.
Comme dans l’atelier PartDesign (PartDesign Workbench), les objets produits par l’atelier Arch sont destinés à
être construits dans le monde réel. Par conséquent, ils doivent être des solides. Les outils de l’atelier Arch
s'occupent généralement de cela automatiquement, et fournissent également des outils utiles pour vous aider
à vérifier la validité des objets.
L'atelier Arch comprend également tous les outils de l’atelier Draft (Draft Workbench), et utilise son réseau et
son système d'accrochage. Avant de commencer, il est toujours recommandé de parcourir les pages de
préférences de Draft et Arch et de configurer les paramètres par défaut à votre convenance.
• Ouvrez le menu Editer -> Préférences -> Draft -> Grille et Accrochage et réglez le paramètre
d'espacement de la grille à 1000 mm, donc nous avons une grille d'un mètre, ce qui sera pratique
pour la taille de notre bâtiment.
• Sur la barre d'outils Accrochage, assurez-vous que le bouton Accrochage automatique ( grid snap)
de la grille soit activé, afin que nous puissions utiliser la grille autant que possible.
• Dessinez quatre lignes avec l'outil Ligne de Draft ( Draft Line). Vous pouvez entrer les coordonnées
manuellement ou simplement sélectionner les points sur la grille avec la souris :
• Répétez ceci pour les 3 autres lignes, jusqu'à ce que vous ayez 4 murs.
• Sélectionnez les quatre murs et définissez leur propriété Hauteur à 3.00m et leur propriété
Alignement à gauche. Si vous n'avez pas dessiné les lignes dans le même ordre que nous l'avons fait
plus haut, certains des murs pourraient avoir leurs directions gauche et droite inversées, et il faudra
peut-être régler Alignement à droite. Vous obtiendrez quatre murs croisés, à l'intérieur des lignes de
base :
• Sélectionnez les quatre murs en appuyant sur la touche Ctrl, le dernier étant le mur que vous avez
choisi de devenir l'hôte.
• Appuyez sur le bouton Ajouter ( Add). Les quatre murs ont maintenant été transformés en un seul :
• Plaçons maintenant une porte. Dans FreeCAD, les portes sont considérées comme un cas particulier
des fenêtres, ce qui se fait à l'aide de l'outil Fenêtre (Window).
• Commencez par sélectionner le mur. Ceci n'est pas nécessaire, mais une bonne habitude à prendre.
Si un objet est sélectionné lors du démarrage de l'outil Fenêtre, vous forcerez la fenêtre à s’insérer
dans cet objet, même si vous vous placez sur un autre objet.
• Réglez le plan de travail (Working Plane) sur auto, donc nous ne sommes pas restreints au plan de
masse.
• Assurez-vous que l'option Accrochage au point le plus proche ( Near snap) est activée, afin que
nous puissions accrocher les objets à des faces.
• Après avoir cliqué, notre fenêtre est placée sur la bonne face, mais pas exactement où nous voulons :
• Répétez l'opération pour placer une fenêtre: sélectionnez le mur, appuyez sur l'outil Fenêtre,
sélectionnez le préréglage Ouverture à 2 vantaux (Open 2-pane) et placez une fenêtre de 1 m x 1 m
dans la même face que la porte. Réglez le placement de l'esquisse sous-jacente à la position x =
0,6m, y = 0, z = 1,1 m, de sorte que la ligne supérieure de la fenêtre soit alignée sur le haut de la
porte.
• Créez un rectangle ( rectangle) avec une longueur de 5m, une hauteur de 4m, et placez-le à la
position x: -0.5m, y: -0.5m, z: 0.
• Sélectionnez le rectangle.
• Cliquez sur l'outil Structure ( structure) pour créer une dalle à partir du rectangle.
• Réglez la propriété de hauteur de la dalle à 0,2 m et sa direction normale à (0,0, -1) car nous
voulons qu'elle soit extrudée vers le bas. Nous pourrions aussi simplement l'avoir déplacée de 0,2 m
vers le bas, mais il est toujours recommandé de conserver les objets extrudés au même endroit que
leur profil de base.
• Définissez la propriété Rôle de la dalle sur dalle. Ceci n'est pas nécessaire dans FreeCAD, mais il est
important pour l'exportation IFC, car il garantira que l'objet est exporté avec le type IFC correct.
• Nous devons maintenant dupliquer cette poutre plusieurs fois. Nous pourrions le faire une par une en
utilisant l'outil de clonage ( clone), mais il y a une meilleure façon de faire toutes les copies à la fois
en utilisant une copie en réseau :
• Sélectionnez la poutre
• Appuyez sur le bouton Plan de travail ( working plane). Le plan de travail est maintenant réglé sur
cette face.
• Créez un rectangle ( rectangle), en l’accrochant sur deux points opposés des poutres frontières :
• Cliquez sur le bouton structure ( structure) et créez une dalle avec une hauteur de 0,2 m.
Voilà, notre modèle est maintenant terminé. Nous devrions maintenant l'organiser afin qu'il s’exporte
correctement vers IFC. Le format IFC exige que tous les objets d'un bâtiment se trouvent à l'intérieur d'un
objet de construction, et éventuellement dans un historique. Il exige également que tous les bâtiments soient
placés sur un site, mais l'exportateur IFC de FreeCAD ajoutera automatiquement un site par défaut si
nécessaire, donc nous n'avons pas besoin d'en ajouter un ici.
Le format IFC (IFC format) est l'un des atouts les plus précieux dans un monde BIM gratuit, car il permet
l'échange de données entre toute application et acteur du monde de la construction, de manière ouverte (le
format est ouvert, gratuit et maintenu par un consortium indépendant). L'exportation de vos modèles BIM
comme IFC garantit que tout le monde peut les voir et les analyser, peu importe l'application utilisée.
Dans FreeCAD, l'importation et l'exportation IFC se font en interconnectant un autre logiciel, appelé
IfcOpenShell. Pour pouvoir exporter vers IFC depuis FreeCAD, le paquet IfcOpenShell-python doit être installé
sur votre système. Assurez-vous de sélectionner celui qui utilise la même version python que FreeCAD. La
version python utilisée par FreeCAD est informée lors de l'ouverture du panneau Vue -> Panneaux ->
console Python (View -> Panels -> Python console) dans FreeCAD. Lorsque cela est fait, nous pouvons
alors exporter notre modèle :
• Sélectionnez l'objet supérieur que vous souhaitez exporter, c'est-à-dire l'objet Bâtiment.
• Sélectionnez le menu Fichier -> Exporter -> Industrie Fondation Classes et enregistrez votre fichier.
Nous allons maintenant placer certaines cotes. Contrairement au chapitre précédent, où nous avons tracé
toutes les cotes directement sur la feuille de dessin, nous utiliserons une autre méthode ici, et placerons les
cotes du projet (Draft dimensions) directement dans le modèle 3D. Ces cotes seront alors placées sur la
feuille de dessin. Nous allons d'abord créer deux groupes pour nos cotes, un pour les cotes qui apparaîtront
dans la vue en plan (coupe horizontale dans le langage du bâtiment), et un autre pour celles qui apparaissent
sur l'élévation (vue de face dans le langage du bâtiment).
• Cliquez avec le bouton droit de la souris sur le document «maison» dans l'arborescence et créez deux
nouveaux groupes : Dimensions du plan et Dimensions de l'élévation.
• Assurez-vous que l’option Accrochage restreint ( restrict) est activée, de sorte que tout ce que vous
dessinez reste sur le plan de travail.
• Dessinez quelques cotes ( dimensions), par exemple comme sur l'image ci-dessous. En appuyant
sur Shift et Ctrl tout en cliquant sur les points de cote, vous obtiendrez des options supplémentaires.
• Réglez le plan de travail (Working Plane) sur le plan XZ, c'est-à-dire le plan vertical frontal.
• Répétez l'opération, dessinez quelques cotes et placez-les dans le groupe Dimensions d'élévation.
• Vérifiez la liste des objets considérés par le plan de section en double-cliquant dessus dans
l'arborescence. Les plans de coupe ne rendent que des objets spécifiés du modèle, pas tous. Les
objets considérés par le plan de coupe peuvent être modifiés ici.
• Répétez l'opération pour créer un autre plan de coupe, donnez-lui la même longueur et hauteur
d'affichage, et donnez-lui le Placement suivant: position: x: 2m, y: -2m, z: 1.5m, angle: 90 °, axe: x: 1,
y: 0, z: 0. Assurez-vous que ce nouveau plan de coupe considère également l'objet Bâtiment.
• Appuyez sur le bouton Créer une vue ( Draft View). Cet outil offre quelques fonctionnalités
supplémentaires par rapport à l'outil de conception de dessin standard (Drawing View) et prend en
charge les plans de coupe de l'atelier Arch.
◦ X: 50
◦ Y: 140
◦ Échelle: 0,03
◦ Largeur de ligne: 0.15
◦ Montrer la coupe: vrai
◦ Afficher le remplissage: vrai
• Sélectionnez l'autre plan de section et créez une nouvelle vue, avec les propriétés suivantes :
◦ X: 250
◦ Y: 150
◦ Échelle: 0,03
◦ Rendu: solide
◦ X: 50
◦ Y: 140
◦ Échelle: 0,03
◦ Largeur de ligne: 0.15
◦ Taille de la police: 10mm
◦ X: 250
◦ Y: 150
◦ Échelle: 0,03
◦ Largeur de ligne: 0.15
◦ Taille de la police: 10mm
◦ Direction: 0, -1,0
◦ Rotation: 90 °
Téléchargements
• Le fichier produit lors de cet exercice:
https://github.com/yorikvanhavre/FreeCADmanual/Blob/master/files/house.FCStd
• Le fichier IFC exporté à partir du fichier ci-dessus:
https://github.com/yorikvanhavre/FreeCADmanual/Blob/master/files/house.ifc
• Le fichier SVG exporté à partir du fichier ci-dessus:
https://github.com/yorikvanhavre/FreeCADmanual/Blob/master/files/house.svg
Dans FreeCAD, cependant, les feuilles de calcul ont une utilité supplémentaire : leurs cellules peuvent
recevoir un nom et peuvent être référencées par n'importe quel champ pris en charge par le moteur des
expressions (expressions engine). Cela transforme les feuilles de calcul en puissantes structures de contrôle,
où les valeurs insérées dans des cellules spécifiques peuvent générer des dimensions du modèle. Il n'y a
qu'une chose à garder à l'esprit, car FreeCAD interdit les dépendances circulaires entre les objets, une même
feuille de calcul ne peut pas être utilisée pour définir une propriété d'un objet et, en même temps, récupérer
une valeur de propriété à partir du même objet. Cela rendrait la feuille de calcul et l'objet dépendant l’un de
l'autre.
Dans l'exemple suivant, nous allons créer quelques objets, récupérer certaines de leurs propriétés dans une
feuille de calcul, puis utiliser la feuille de calcul pour générer directement les propriétés d'autres objets.
• Modifiez leur propriété de Placement (ou utilisez l'outil Déplacer Draft Move) pour les séparer un
peu, afin que nous puissions mieux observer les effets de ce que nous allons faire :
• Double-cliquez sur l'objet Nouvelle feuille de calcul dans l'arborescence. L'éditeur de feuille de calcul
s'ouvre :
L'éditeur de feuilles de calcul de FreeCAD, bien qu'il ne soit pas aussi complet et puissant que les applications
de tableurs plus complètes que nous avons énumérées ci-dessus, a néanmoins la plupart des outils et des
fonctions de base couramment utilisés, comme la possibilité de modifier l'aspect des cellules (Taille, couleur,
alignement), joindre et diviser les cellules, utiliser des formules telles que =2+2, ou référencer d'autres cellules
avec =B1.
Dans FreeCAD, à ces comportements communs, on a ajouté une possibilité très intéressante : la possibilité
de faire référence non seulement à d'autres cellules, mais aussi d'autres objets du document, et de récupérer
des valeurs à partir de leurs propriétés. Par exemple, récupérons quelques propriétés des 3 objets que nous
avons créés ci-dessus. Les propriétés sont ce que nous pouvons voir dans la fenêtre de l'éditeur de
propriétés, sous l'onglet Données (Data ), lorsqu'un objet est sélectionné.
• Commençons par entrer quelques textes dans les cellules A1, A2 et A3, alors nous nous souvenons de
ce qui se passera plus tard, par exemple Cube Length (longueur de l’arête du cube), Cylinder Radius
(rayon du cylindre) et Sphere Radius (rayon de la sphère). Pour entrer du texte, écrivez simplement
dans le « Conteneur » disposé au-dessus de la feuille de calcul ou double-cliquez sur une cellule.
• Bien que ces résultats soient exprimés avec leurs unités, les valeurs peuvent être manipulées comme
n'importe quel nombre, essayez, par exemple, d'entrer dans la cellule C1 : =B1*2.
• Nous pouvons maintenant modifier une de ces valeurs dans l'éditeur de propriétés, et la modification
sera immédiatement reflétée dans la feuille de calcul. Par exemple, modifions la longueur de notre
cube à 20mm :
• Nous pouvons maintenant fermer l'onglet tableur (sous la vue 3D). Ceci n'est pas obligatoire, il n'y a
pas de problème pour ouvrir plusieurs feuilles de calcul.
• Modifiez le nom de la nouvelle feuille de calcul en quelque chose de plus significatif, comme Entrée
(faites-le en cliquant avec le bouton droit de la souris sur la nouvelle feuille de calcul et en choisissant
Renommer).
• Dans la cellule A1, mettons un texte descriptif, par exemple: "Dimensions du cube".
• Dans la cellule B1, écrivez =5mm (en utilisant le signe = on s'assure que la valeur est interprétée
comme une valeur numérique, pas un texte).
• Dans l'éditeur de propriétés, cliquez sur la petite icône Expression ( expression ) située sur le côté
droit du champ Longueur. Cela ouvrira l'éditeur d'expressions (expressions editor), où vous pouvez
écrire Spreadsheet001.cubedims. Répétez ceci pour Hauteur et Largeur :
Enfin, notez que les contraintes dans un croquis peuvent également recevoir la valeur d'une cellule de
tableur :
Vous pouvez également donner des alias aux contraintes dimensionnelles (horizontales, verticales ou
distances) dans une esquisse (vous pouvez ensuite utiliser ces valeurs à l'extérieur de l’esquisse) :
L'obtention de cette simulation se fait dans FreeCAD avec l’atelier FEM (FEM Workbench). Cela implique
différentes étapes : Préparer la géométrie, définir son matériau, effectuer le maillage, diviser en parties plus
petites, comme nous l'avons fait dans le chapitre Préparer les objets pour l’impression 3D (Preparing
objects for 3D printing), et finalement calculer la simulation.
Préparation de FreeCAD
La simulation elle-même est réalisée par un autre logiciel, utilisé par FreeCAD pour obtenir les résultats.
Comme il existe plusieurs applications de simulation FEM intéressantes disponibles, l’atelier FEM (FEM
Workbench) a été conçu pour pouvoir en utiliser plus d'une. Cependant, actuellement, seul CalculiX est
entièrement implémenté. Un autre logiciel, appelé NetGen, qui est responsable de la génération du maillage
de subdivision, est également nécessaire. Des instructions détaillées pour installer ces deux composants sont
fournies dans la documentation FreeCAD (FreeCAD documentation).
• Supprimez ou masquez l'objet de la page, les plans de section et les dimensions, de sorte qu’il ne
nous reste que notre modèle.
• Masquez également les poutres métalliques du toit. Comme ce sont des objets très différents du reste
de la maison, nous simplifierons notre calcul en ne l'incluant pas. Au lieu de cela, nous considérons
que la dalle du toit est directement placée sur le dessus du mur.
• Maintenant, déplacez la dalle du toit vers le bas, de sorte qu'elle repose sur le mur : éditez l'objet
Rectangle que nous avons utilisé comme base de la dalle du toit et changez son Positionnement->
Position-> Valeur X de 3,18 m à 3,00 m.
• L’atelier FEM peut actuellement calculer des déformations sur un seul objet. Par conséquent, nous
devons joindre nos deux objets (le mur et la dalle). Passez à l’atelier Part (Part Workbench),
sélectionnez les deux objets et appuyez sur Union ( Union). Nous avons maintenant obtenu un objet
fusionné :
• Une nouvelle analyse sera créée et des panneaux de configuration seront ouverts. Ici, vous pouvez
définir les paramètres de maillage à utiliser pour produire le maillage FEM. Le paramètre principal à
éditer est la taille maximale qui définit la taille maximale (en millimètres) de chaque pièce du maillage.
Pour l'instant, nous pouvons laisser la valeur par défaut de 1000 :
• Un panneau de tâches s'ouvrira pour nous permettre de choisir un matériau. Dans la liste déroulante
Matériaux, choisissez le matériau en béton générique et appuyez sur OK.
• Nous sommes maintenant prêts à appliquer des forces. Commençons par préciser quelles faces sont
fixées dans le sol et ne peuvent donc pas bouger. Appuyez sur le bouton Contrainte Fixe (
Constraint).
• Cliquez sur la face inférieure de notre bâtiment et appuyez sur OK. La face inférieure est maintenant
indiquée comme inébranlable :
• Cliquez sur la face supérieure du toit, mettez la pression sur 10 MPa (la pression est appliquée par
millimètre carré) et cliquez sur le bouton OK. Notre force est maintenant appliquée :
• Dans le panneau de tâches qui s'ouvrira, cliquez d'abord sur le bouton Écrire le fichier .inp pour créer
le fichier d'entrée pour CalculiX, puis le bouton Exécuter CalculiX. Quelques instants après, le calcul
sera effectué :
• Définissez le type de résultat que vous souhaitez voir sur le maillage, par exemple "déplacement
absolu", cochez la case à cocher affichage sous Déplacement et déplacez le curseur à côté de celui-
ci. Vous pourrez voir la déformation augmenter lorsque vous appliquez plus de force :
Téléchargements
• Le fichier créé lors de cet exercice: https://github.com/yorikvanhavre/FreeCAD-
manual/blob/master/files/fem.FCStd
Bien sûr, produire de telles images photo-réalistes nécessite beaucoup de travail et une application 3D qui
offre des outils spécifiques à cela, tels que des contrôles précis pour les matériaux et l'éclairage. FreeCAD
étant une application plus orientée vers la modélisation technique, elle ne présente pas d’outil de rendu
avancé.
Heureusement, le monde open-source offre de nombreuses applications pour produire des images réalistes.
Probablement le plus célèbre est Blender, qui est très populaire et largement utilisé dans les industries du
cinéma et du jeu. Les modèles 3D peuvent très facilement et fidèlement être exportés de FreeCAD et importés
dans Blender, où vous pouvez ajouter des matériaux et des éclairages réalistes, et produire les images finales
ou même des animations.
Certains autres outils de rendu open source sont conçus pour être utilisés dans une autre application, et
prendront soin de faire les calculs complexes pour produire des images réalistes. À travers son atelier
Raytracing (Raytracing Workbench), FreeCAD peut utiliser deux de ces outils de rendu : POV-Ray et
Luxrender. POV-Ray est un projet très ancien, et est considéré comme un moteur classique de raytracing,
tandis que Luxrender est beaucoup plus récent et est catégorisé comme un moteur de rendu impartial
(unbiased renderer). Les deux ont leurs points forts et leurs faiblesses, selon le type d'image que l'on veut
rendre. La meilleure façon de savoir est de regarder des exemples sur les deux sites Web des moteurs de
rendu.
Installation
Avant d'être en mesure d'utiliser l'un de ces deux rendus dans l’atelier Raytracing dans FreeCAD, les
applications doivent être installées sur votre système. C'est généralement très simple, les deux installateurs
sont fournis pour de nombreuses plates-formes ou sont généralement inclus dans les référentiels logiciels de
la plupart des distributions Linux.
Une fois que POV-Ray ou Luxrender est installé, nous devons définir le chemin d'accès à son exécutable
principal dans les préférences de FreeCAD. Cela n'est généralement nécessaire que sur Windows et Mac. Sur
Linux FreeCAD va le choisir parmi les emplacements standard. L'emplacement des exécutables de Povray ou
Luxrender peut être trouvé en recherchant simplement dans votre système les fichiers appelés Povray (ou
Povray.exe sur Windows) et Luxrender (ou Luxrender.exe sur Windows).
• Commencez par charger le fichier table.FCStd que nous avons modélisé plus tôt ou à partir du lien au
bas de ce chapitre.
• Appuyez sur la petite flèche vers le bas à côté du bouton Nouveau projet Povray ( New Povray
project), et choisissez le modèle RadiosityNormal.
• Un message d'avertissement peut apparaître indiquant que la vue en 3D actuelle n'est pas dans le
mode perspective et le rendu sera donc différent. Corrigez ceci en choisissant Non, en allant dans le
menu Affichage-> Vue en perspective et en choisissant à nouveau le modèle RadiosityNormal.
• Vous pouvez également essayer d'autres modèles après avoir créé un nouveau projet, simplement en
éditant les Propriétés du modèle.
• L’atelier Raytracing fonctionne de la même manière que l’atelier Drawing (Drawing Workbench) : une
fois que le dossier de projet est créé, nous devons ajouter des vues de nos objets. Nous pouvons
maintenant le faire en sélectionnant tous les objets qui composent la table, en appuyant sur le bouton
Insérer une pièce ( Insert part) :
• Les vues ont pris les valeurs de couleur et de transparence à partir de leurs pièces d'origine, mais vous
pouvez modifier cela dans les propriétés de chaque vue individuelle si vous le souhaitez.
• Nous sommes maintenant prêts à produire notre premier rendu avec Povray. Appuyez sur le bouton
Effectuer le rendu ( Render).
06/06/17 Manuel_Freecad.odt Page 144 / 166
• Remarque pour les utilisateurs de Windows : lors de la réception (dans povray) d'un avertissement
indiquant que "les restrictions d'E / S interdisent l'accès en écriture ..."
◦ Ouvrez Povray.
◦ Choisissez "Options> Restrictions E / S du script" et assurez-vous qu'il est défini sur "Aucune
restriction"
• Vous devrez donner un nom de fichier et un chemin d'accès pour l'image .png qui sera enregistrée par
Povray.
• Lorsque cela est fait, cliquez simplement sur l'image pour fermer la fenêtre de povray. Le résultat de
l'image sera chargée dans FreeCAD :
• Appuyez sur la petite flèche vers le bas à côté du bouton Nouveau projet Luxrender ( New Luxrender
project) et choisissez le Modèle LuxOutdoor.
• Sélectionnez tous les composants de la table. Si vous avez toujours le projet Povray dans votre
document, assurez-vous également de sélectionner le projet lux lui-même, de sorte que les vues
créées dans la prochaine étape ne vont pas dans le mauvais projet par erreur.
• Si vous quittez la fenêtre ouverte, Luxrender continuera à calculer et à donner le rendu définitif, en
affinant progressivement l'image. C'est à vous de décider quand l'image atteint une qualité suffisante
pour vos besoins et d’arrêter le calcul du rendu.
• Il existe également de nombreux contrôles à tester ou régler, sur le panneau de gauche. Tous ces
contrôles modifient l'aspect de l'image en temps réel, sans arrêter le calcul du rendu.
• Lorsque vous estimez que la qualité est suffisante, appuyez simplement sur Calcul du Rendu-> stop,
puis sur Fichier-> Exporter vers une image-> Gamme dynamique faible en mode toner (File-
>Export to image->Tonemapped low dynamic range ) pour enregistrer l'image rendue dans un
fichier .Png.
Vous pouvez étendre considérablement les possibilités de rendu de FreeCAD en créant de nouveaux modèles
pour Povray ou Luxrender. Ceci est expliqué dans la documentation de l’atelier Raytracing (Raytracing
Workbench documentation).
Téléchargements
• Le modèle de table: https://github.com/yorikvanhavre/FreeCADmanual/Blob/master/files/table.FCStd
• Le fichier produit lors de cet exercice:
https://github.com/yorikvanhavre/FreeCADmanual/blob/master/files/render.FCStd
FreeCAD utilise largement Python. Avec cela, vous pouvez accéder et contrôler presque toutes les
caractéristiques de FreeCAD. Vous pouvez, par exemple, créer de nouveaux objets, modifier leur géométrie,
analyser leur contenu, ou même créer de nouveaux contrôles d'interface, des outils et des panneaux. Certains
ateliers de FreeCAD et la plupart des ateliers supplémentaires sont entièrement programmés en python.
FreeCAD dispose d'une console python avancée, disponible dans le menu Affichage-> Panneaux-> Console
Python. Il est souvent utile pour effectuer des opérations pour lesquelles il n'existe pas encore de barre
d'outils, ou pour vérifier des formes pour certains problèmes, ou pour effectuer des tâches répétitives :
Mais la console python a également une autre utilisation très importante : chaque fois que vous appuyez sur
un bouton d’une barre d'outils ou effectuez d'autres opérations dans FreeCAD, un code python est imprimé
dans la console et exécuté. En laissant la console Python ouverte, vous pouvez voir littéralement le code
Python se dérouler au fur et à mesure que vous travaillez, et en un rien de temps, presque sans le savoir,
vous apprendrez quelques éléments du langage python.
FreeCAD possède également un système de macros (macros system) qui vous permet d'enregistrer les
actions à reproduire plus tard. Ce système utilise également la console Python, en enregistrant simplement
tout ce qui est fait.
Dans ce chapitre, nous découvrirons très généralement le langage Python. Si vous êtes interessé pour en
apprendre davantage, le wiki de la documentation de FreeCAD contient une vaste section liée à la
programmation Python (python programming).
Si c'est la première fois que vous utilisez le codage Python, pensez à lire cette brève introduction à la
programmation Python (introduction to Python programming) avant d'aller plus loin, cela rendra les concepts
de base de Python plus clairs.
Doc = FreeCAD.newDocument ()
Si vous tapez ceci dans la console python de FreeCAD, vous remarquerez que dès que vous entrez
"FreeCAD." (le mot FreeCAD suivi d'un point), une fenêtre apparaît, permettant rapidement de compléter le
reste de votre ligne. Encore mieux, chaque entrée dans la liste des autocomplétions a une bulle d’aide
expliquant ce qu'elle fait. Il est donc très facile d'explorer la fonctionnalité disponible.
Dès que vous appuyez sur Entrée, notre nouveau document sera créé. Cela ressemble à la pression sur le
bouton "nouveau document" dans la barre d'outils. En Python, le point sert à indiquer quelque chose qui est
contenu dans quelque chose d'autre (newDocument est une fonction qui se trouve dans le module FreeCAD).
La fenêtre qui s'affiche vous montre donc tout ce qui est contenu dans "FreeCAD". Si vous souhaitiez ajouter
un point après le nouveau document, au lieu des parenthèses, cela vous montrerait tout ce qui est contenu
dans la nouvelle fonction newDocument. Les parenthèses sont obligatoires lorsque vous appelez une fonction
Python, comme celle-ci. Nous allons mieux illustrer cela ci-dessous.
Revenons maintenant à notre document. Voyons ce que nous pouvons faire avec ça :
doc.
Explorez les options disponibles. Habituellement, les noms qui commencent par une lettre majuscule sont des
attributs, ils contiennent une valeur, alors que les noms commençant par une petite lettre sont des fonctions
(également appelées méthodes), ils "font quelque chose". Les noms commençant par un trait de soulignement
sont habituellement là pour le fonctionnement interne du module, et vous ne devriez pas vous en occuper.
Utilisons l'une des méthodes pour ajouter un nouvel objet à notre document :
box=doc.addObject("Part::Box","myBox")
Notre boîte est ajoutée dans l'arborescence, mais rien ne se passe encore dans la vue 3D, car quand on
travaille avec Python, le document n'est jamais recalculé automatiquement. Nous devons le faire
manuellement, chaque fois que nous avons besoin :
Doc.recompute()
Vous pouvez obtenir une liste de tous les types d'objets possibles, comme Part :: Box:
Doc.supportedTypes()
box.
box.Hight
Cela va imprimer la hauteur actuelle de notre boîte. Maintenant, essayons de changer cela :
box.Height=5
Si vous sélectionnez votre boîte avec la souris, vous verrez cela dans le panneau des propriétés, sous l’onglet
Données, notre propriété Hauteur apparaît avec la nouvelle valeur. Toutes les propriétés d'un objet FreeCAD
qui apparaissent dans les onglets Données et Affichage sont directement accessibles par Python aussi, par
leur noms, comme nous l'avons fait avec la propriété Height. Les propriétés des données sont accessibles
directement depuis l’objet lui-même, par exemple :
Box.Length
Les propriétés de vue sont stockées dans un ViewObject. Chaque objet FreeCAd possède un ViewObject, qui
stocke les propriétés de visualisation de l'objet. Lors de l'exécution de FreeCAD sans son interface graphique
(par exemple lors du lancement par un terminal avec l’option de ligne de commande -c, ou l'utilisation à partir
d'un autre script Python), le ViewObject n'est pas disponible, car Il n'y a pas de visuel du tout.
Box.ViewObject.LineColor
myvec=FreeCAD.Vector(2,0,0)
print(myvec)
print(myvec.x)
print(myvec.y)
othervec=FreeCAD.Vector(0,3,0)
sumvec=myvec.add(othervec)
Une autre caractéristique commune des objets FreeCAD est leur Positionnement (placement). Comme nous
l'avons vu dans les chapitres précédents, chaque objet a une propriété de placement, qui contient la position
(Base) et orientation (Rotation) de l'objet. Il est facile de manipuler avec Python, par exemple pour déplacer
notre objet :
Nous avons également vu que la grande majorité des ateliers de FreeCAD dépendent d'un atelier très
fondamental : l’atelier Part (Part Workbench). En fait, d'autres ateliers, tels que Draft ou Arch, font exactement
ce que nous allons faire dans ce chapitre : ils utilisent le code Python pour créer et manipuler la géométrie
Part.
Donc, la première chose que nous devons faire pour travailler avec la géométrie des pièces, c'est de faire
l’équivalent en Python à la connexion vers l’atelier Part : importer le module Part :
import Part
Prenez une minute pour explorer le contenu du module Part, en tapant Part. Et la navigation à travers les
différentes méthodes proposées ici. Le module Part offre plusieurs fonctions commodes telles que makeBox,
makeCircle, etc ... qui vont créer un objet pour vous instantanément. Essayez ceci, par exemple :
Part.makeBox (3,5,7)
Lorsque vous appuyez sur Entrée après avoir tapé la ligne ci-dessus, rien n'apparaîtra dans la vue 3D, mais
quelque chose comme ça sera imprimé dans la console Python :
C'est là qu'un concept important intervient. Ce que nous avons créé ici est une forme de pièce. Ce n'est pas
un document objet de FreeCAD (pas encore). Dans FreeCAD, les objets et leur géométrie sont indépendants.
Pensez à un document objet de FreeCAD en tant que conteneur, qui accueillera une forme. Les objets
paramétriques auront également des propriétés telles que Longueur et Largeur et recalculeront leur forme à la
volée, chaque fois que l'une des propriétés change. Ce que nous avons fait ici est de calculer une forme
manuellement.
Nous pouvons maintenant créer facilement un document objet "générique" dans le document actuel (assurez-
vous que vous avez au moins un nouveau document ouvert), et donnez-lui une forme de boîte comme nous
venons de le faire :
Notez comment nous avons traité myObj.Shape, voyez que cela se fait exactement comme nous l'avons fait
dans le chapitre précédent, lorsque nous avons changé d'autres propriétés d'un objet, comme
box.Height=5. En réalité, Shape est également une propriété, tout comme Hauteur. Seulement il faut une
forme de Part (Part Shape), pas un nombre. Au prochain chapitre, nous examinerons plus en profondeur la
façon dont ces objets paramétriques sont construits.
Pour l'instant, explorons nos formes de pièces plus en détail. À la fin du chapitre à propos de la modélisation
traditionnelle avec l’atelier Part nous avons montré un tableau qui explique comment les formes sont
construites dans Part ainsi que leurs différents composants (sommets, arêtes, faces, etc.). Les mêmes
composants existent ici et peuvent être récupérés à partir de Python. Toute forme de Part a toujours les
attributs suivants : sommets, arêtes, lignes, faces, coquilles et solides. Tous constituent des listes, qui peuvent
contenir n'importe quel nombre d'éléments ou être vides :
print(boxShape.Vertexes)
print(boxShape.Edges)
print(boxShape.Wires)
print(boxShape.Faces)
print(boxShape.Shells)
print(boxShape.Solids)
Par exemple, découvrons la zone de chaque face de notre forme de boîte ci-dessus :
for f in boxShape.Faces:
print(f.Area)
Ou, pour chaque arête, son point de départ et son point final :
for e in boxShape.Edges:
print("New edge")
print("Start point:")
print(e.Vertexes[0].Point)
print("End point:")
print(e.Vertexes[1].Point)
Comme vous le voyez, si notre boxShape a un attribut "Vertexes", chaque Edge de la BoxShape a également
un attribut "Vertexes". Comme nous pouvons nous y attendre, le BoxShape aura 8 sommets (Vertexes), tandis
que l’arête en aura seulement 2, qui font partie de la liste des 8.
print(boxShape.ShapeType)
print(boxShape.Faces[0].ShapeType)
print(boxShape.Vertexes[2].ShapeType)
Donc, pour reprendre tout le diagramme des Formes Part : Tout commence par Vertices (sommets). Avec un
ou deux sommets, vous formez un Edge (arête) (les cercles complets n'ont qu'un seul sommet). Avec une ou
plusieurs arêtes, vous formez une ligne composite (wire). Avec une ou plusieurs lignes fermées, vous formez
une face (les lignes supplémentaires deviennent des «trous» dans la face). Avec une ou plusieurs Faces, vous
créez une coquille (Shell). Quand une coquille est entièrement fermée (étanche), vous pouvez former un
solide. Et enfin, vous pouvez joindre n'importe quel nombre de Formes (Shapes) de tous types ensemble, ce
qui s'appelle alors un Composé (Compound).
06/06/17 Manuel_Freecad.odt Page 151 / 166
Nous pouvons maintenant essayer de créer des formes complexes à partir de zéro, en construisant tous leurs
composants un par un. Par exemple, essayons de créer un volume comme celui-ci :
V1 = FreeCAD.Vector(0,10,0)
V2 = FreeCAD.Vector(30,10,0)
V3 = FreeCAD.Vector(30,-10,0)
V4 = FreeCAD.Vector(0,-10,0)
L1 = Part.Line(V1,V2)
L2 = Part.Line(V4,V3)
Notez-vous que nous n'avons pas eu besoin de créer Vertices ? Nous pourrions immédiatement créer
Parts.Lines à partir des Vecteurs FreeCAD. C'est parce que nous n'avons pas encore créé Edges.
print(Edge.Curve)
vous montrera de quel type de Edge il s’agit, c'est-à-dire s'il est basé sur une ligne, un arc, etc. Mais revenons
à notre exercice et construisons les segments d'arc. Pour cela, nous aurons besoin d'un troisième point, afin
que nous puissions utiliser le commode Part.Arc, qui prend 3 points :
VC1 = FreeCAD.Vector(-10,0,0)
C1 = Part.Arc(V1,VC1,V4)
VC2 = FreeCAD.Vector(40,0,0)
C2 = Part.Arc(V2,VC2,V3)
Maintenant, nous avons 2 lignes (L1 et L2) et 2 arcs (C1 et C2). Nous devons les transformer en arêtes
(edges) :
E1 = Part.Edge(L1)
E2 = Part.Edge(L2)
E3 = Part.Edge(C1)
E4 = Part.Edge(C2)
Alternativement, les géométries de base ont également une fonction toShape() qui fait exactement la même
chose :
E1 = L1.toShape()
E2 = L2.toShape()
...
Une fois que nous avons une série d’arêtes (Edges), nous pouvons maintenant former une ligne composite
(Wire), en lui donnant une liste d’arêtes (Edges). Nous n’avons pas besoin de prendre soin de l’ordre.
W = Part.Wire([E1,E2,E3,E4])
Et nous pouvons vérifier si notre Wire (ligne composite) a été correctement compris, et qu'il est correctement
fermé :
print( W.isClosed() )
Ce qui imprimera "True" ou "False". Pour faire une Face, nous avons besoin de lignes composites fermées
(Wires), donc c'est toujours une bonne idée de vérifier cela avant de créer la Face. Maintenant, nous pouvons
créer une Face, en lui donnant une seule ligne composite (Wire) (ou une liste de lignes composites si nous
avons des trous) :
F = Part.Face(W)
P = F.extrude(FreeCAD.Vector(0,0,10))
print(P.ShapeType)
Parce que lors de l'extrusion d'une seule Face, nous obtenons toujours un solide. Ce ne serait pas le cas, par
exemple, si nous avions extrudé la ligne composite suivante (Wire) à la place :
S = W.extrude(FreeCAD.Vector(0,0,10))
print(s.ShapeType)
Ce qui, bien sûr, nous donnera une coquille creuse, les faces supérieure et inférieure manquant.
Maintenant que nous avons notre forme définitive, nous sommes impatients de la voir à l'écran ! Alors, créons
un objet générique, et attribuons le à notre nouveau Solid :
myObj2 = FreeCAD.ActiveDocument.addObject("Part::Feature","My_Strange_Solid")
myObj2.Shape = P
FreeCAD.ActiveDocument.recompute()
Alternativement, le module Part fournit également un raccourci qui fait l'opération ci-dessus plus rapidement
(mais vous ne pouvez pas choisir le nom de l'objet) :
Part.show(P)
Tout ce qui précède, et bien plus encore, est expliqué en détail sur la page Part Scripting, en même temps que
des exemples.
Cependant, nous avons également vu dans tous les chapitres précédents de ce manuel comment les objets
paramétriques sont puissants. Il suffit de changer une propriété, et la forme est recalculée à la volée.
En interne, les objets paramétriques ne font rien de différent de ce que nous venons de faire : ils recalculent le
contenu de leur propriété Shape, à plusieurs reprises, chaque fois qu'une autre propriété a été modifiée.
FreeCAD fournit un système très pratique pour créer de tels objets paramétriques complètement en Python.
Ils consistent en une classe Python simple, qui définit toutes les propriétés dont l'objet a besoin, et ce qui se
passera quand une de ces propriétés changera. La structure de l'objet paramétrique est aussi simple que
ceci :
class myParametricObject:
def __init__(self,obj):
obj.Proxy = self
obj.addProperty("App::PropertyFloat","MyLength")
...
def execute(self,obj):
print ("Recalculating the shape...")
print ("The value of MyLength is:")
print (obj.MyLength)
...
Toutes les classes Python ont généralement une méthode d'initialisation (__init__ method). Ce qui est à
l'intérieur de cette méthode est exécuté lorsque cette classe est instanciée (ce qui signifie, en argot de
programmation, qu'un objet Python est créé à partir de cette classe. Comprenez une classe comme un
"modèle" pour en créer des copies en direct). Ici dans notre fonction d'initialisation (__init__ function), nous
faisons deux choses importantes : 1- stocker notre classe elle-même dans l'attribut "Proxy" de notre document
objet FreeCAD, c'est-à-dire que le document objet de FreeCAD portera ce code en lui-même, et 2- créer
toutes les propriétés dont notre objet a besoin. Il existe de nombreux types de propriétés disponibles, vous
pouvez obtenir la liste complète en tapant ce code :
FreeCAD.ActiveDocument.addObject("Part::FeaturePython","dummy").supportedProperties()
Ensuite, la deuxième partie importante est la méthode d'exécution. Tout code dans cette méthode sera
exécuté lorsque l'objet est marqué pour être recalculé, ce qui se produira lorsqu'une propriété a été modifiée.
C'est tout ce qu'il y a à faire. Dans l'exécution, vous devez faire tout ce qui doit être fait, c'est-à-dire calculer
une nouvelle forme, et attribuer à l'objet lui-même quelque chose comme obj.Shape = myNewShape. C'est
pourquoi la méthode d'exécution prend un argument "obj" qui sera l'objet du document FreeCAD lui-même,
afin que nous puissions le manipuler dans notre code python.
Une dernière chose est importante à retenir : lorsque vous créez de tels objets paramétriques dans un
document FreeCAD, lorsque vous enregistrez le fichier, le code python ci-dessus n'est pas stocké dans le
fichier. C'est pour des raisons de sécurité, si un fichier FreeCAD contenait un code, n’importe qui pourrait
distribuer des fichiers FreeCAD contenant des codes malveillants qui pourraient nuire à d'autres personnes les
utilisant sur leurs ordinateurs. Donc, si vous distribuez un fichier contenant des objets fabriqués avec ce qui
précède, ce code doit également être présent sur l'ordinateur qui ouvrira le fichier. La manière la plus simple
de faire est généralement de sauvegarder le code ci-dessus dans une macro et de distribuer la macro avec
Ci-dessous, nous ferons un petit exercice, en construisant un objet paramétrique qui est une simple Face
rectangulaire paramétrique. Des exemples plus complexes sont disponibles sur Exemple d'objet paramétrique
(parametric object example) et dans le code source de FreeCAD lui-même (FreeCAD source code).
Nous allons donner à notre objet deux propriétés : Longueur et Largeur, que nous utiliserons pour construire
un rectangle. Puis, puisque notre objet aura déjà une propriété de placement prédéfinie (tout objet
géométrique en a une par défaut, il n'est pas nécessaire de l'ajouter nous-mêmes), nous décalerons notre
rectangle à l'emplacement / orientation définis dans le Placement, de sorte que l'utilisateur pourra déplacer le
rectangle n'importe où en éditant la propriété Placement.
# we create 4 edges
e1 = Part.Line(v1,v2).toShape()
e2 = Part.Line(v2,v3).toShape()
e3 = Part.Line(v3,v4).toShape()
e4 = Part.Line(v4,v1).toShape()
# we create a wire
w = Part.Wire([e1,e2,e3,e4])
# we create a face
f = Part.Face(w)
# All shapes have a Placement too. We give our shape the value of the
placement
# set by the user. This will move/rotate the face automatically.
f.Placement = obj.Placement
# all done, we can attribute our shape to the object!
obj.Shape = f
Au lieu de coller le code ci-dessus dans la console Python, nous devrions plutôt l'enregistrer quelque part,
alors nous pourrons le réutiliser et le modifier ultérieurement. Par exemple dans une nouvelle macro (menu
Outils -> Macros → Créer). Nommez-le, par exemple, "ParamRectangle". Cependant, les macros FreeCAD
sont enregistrées avec une extension .FCMro, que Python ne reconnaît pas lors de l'importation. Donc, avant
d’utiliser le code ci-dessus, nous devrons renommer le fichier ParamRectangle.FCMacro en
ParamRectangle.py. Cela se fait simplement à partir de votre explorateur de fichiers, en naviguant vers le
dossier Macros indiqué dans le menu Outils -> Macros.
Une fois cela fait, nous pouvons maintenant l’utiliser dans la console Python :
import ParamRectangle
En explorant le contenu de ParamRectangle, nous pouvons vérifier qu'il contient notre Classe
ParametricRectangle.
06/06/17 Manuel_Freecad.odt Page 157 / 166
Pour créer un nouvel objet paramétrique à l'aide de notre classe ParametricRectangle, nous utiliserons le
code suivant. Observez que nous utilisons Part::FeaturePython au lieu de Part::Feature que nous avons utilisé
dans les chapitres précédents (la version Python permet de définir notre propre comportement paramétrique):
myObj = FreeCAD.ActiveDocument.addObject("Part::FeaturePython","Rectangle")
ParamRectangle.ParametricRectangle(myObj)
myObj.ViewObject.Proxy = 0 # this is mandatory unless we code the ViewProvider too
FreeCAD.ActiveDocument.recompute()
Rien ne s'affiche encore à l'écran, car les propriétés Longueur et Largeur sont à 0, ce qui déclenchera notre
condition de "ne rien faire" à l'intérieur de l'exécution. Nous devons juste changer les valeurs de Longueur et
Largeur, et notre objet apparaîtra magiquement et sera recalculé à la volée.
Bien sûr, il serait fastidieux de devoir taper ces 4 lignes de code Python chaque fois que nous voulons créer
un nouveau rectangle paramétrique. Une façon très simple de résoudre ceci est de placer les 4 lignes ci-
dessus dans notre fichier ParamRectangle.py, à la fin, après la fin de la classe ParametricRectange (nous
pouvons le faire à partir de l'éditeur Macro).
Maintenant, lorsque nous tapons import ParamRectangle, un nouveau rectangle paramétrique sera
automatiquement créé. Encore mieux, nous pouvons ajouter un bouton de barre d'outils qui fera exactement
cela :
• Sous l'onglet "Macros", sélectionnez notre macro ParamRectangle.py, complétez les détails au fur et à
mesure que vous le souhaitez, et appuyez sur "Ajouter":
• Sous l'onglet Barres d'outils, créez une nouvelle barre d'outils personnalisée dans l'atelier de votre
choix (ou globalement), sélectionnez votre macro et ajoutez-la à la barre d'outils :
Rappelez-vous, si vous souhaitez distribuer des fichiers créés avec ce nouvel outil à d'autres personnes, ils
doivent avoir également installé la macro ParamRectangle.py sur leur ordinateur.
Dans de nombreuses situations, il n'est pas très convivial de construire un objet avec des valeurs nulles,
comme nous avons fait avec le rectangle dans le chapitre précédent, puis de demander à l'utilisateur de
remplir la hauteur et la largeur dans le panneau Propriétés. Cela fonctionne pour un très petit nombre d'objets,
mais devient très fastidieux si vous avez beaucoup de rectangles à réaliser. Une meilleure façon serait d'être
capable de donner déjà la hauteur et la largeur lors de la création du rectangle.
Cependant, cela nécessite une console Python en cours d'exécution et, lors de l'exécution de notre code à
partir d'une macro, nous ne sommes pas toujours sûrs que la console Python sera activée sur la machine de
l'utilisateur.
L'interface utilisateur graphique (Graphical User Interface), ou GUI, c'est-à-dire toute la partie de FreeCAD qui
s'affiche sur votre écran (le menu, les barres d'outils, la vue 3D, etc.) est tout à cette fin : interagir avec
l’utilisateur. L'interface de FreeCAD est construite avec Qt, une trousse d'outils GUI open source très
commune qui qffre une large gamme d'outils tels que les boîtes de dialogue, les boutons, les étiquettes, les
boîtes de saisie de texte ou les menus déroulants (tout cela est généralement appelé "widgets").
Les outils Qt sont très faciles à utiliser depuis Python, grâce à un module Python appelé Pyside (Il existe aussi
plusieurs autres modules Python pour communiquer avec Qt depuis Python). Ce module vous permet de créer
et d'interagir avec des widgets, lire ce que l'utilisateur a fait avec eux (ce qui a été rempli dans des zones de
texte) ou faire des choses quand, par exemple, un bouton a été pressé.
Qt fournit également un autre outil intéressant appelé Qt Designer, aujourd'hui incorporé à l'intérieur d’une
plus grande application appelée Qt Creator. Il permet de concevoir des boîtes de dialogue et des panneaux
d'interface graphiquement, au lieu d'avoir à les coder manuellement. Dans ce chapitre, nous utiliserons Qt
Creator pour dessiner un widget de panneau que nous utiliserons dans le panneau des tâches de FreeCAD.
Donc, vous devrez télécharger et installer Qt Creator à partir de sa page officielle si vous êtes sur Windows ou
Mac (sur Linux, il sera généralement disponible auprès de votre application de gestionnaire de logiciels).
Dans l'exercice suivant, nous allons d'abord créer un panneau avec Qt Creator qui demande les valeurs de
longueur, de largeur et de hauteur, alors nous allons créer une classe Python autour de lui, qui lira les valeurs
entrées par l'utilisateur à partir du panneau, et créer une boîte avec les dimensions données. Cette classe
Python sera ensuite utilisée par FreeCAD pour afficher et contrôler le panneau des tâches :
• Trouvez le Label (étiquette) dans la liste du panneau de gauche et faites-le glisser sur le canevas de
notre widget. Double-cliquez sur l'étiquette récemment placée, et modifiez son texte en Longueur.
• Cliquez avec le bouton droit de la souris sur la toile du widget, puis choisissez Lay out-> Lay out in a
Grid. Cela mettra notre widget dans une grille avec actuellement une seule cellule, occupée par notre
première étiquette. Nous pouvons maintenant ajouter les éléments suivants à gauche, à droite, en haut
ou en bas de notre première étiquette, et la grille s’étendra automatiquement.
• Ajoutez deux autres étiquettes en dessous de la première et modifiez leur texte en Largeur et Hauteur :
• Maintenant, notre widget est terminé, il suffit de nous assurer d'une dernière chose. Étant donné que
FreeCAD devra accéder à ce widget et lire les valeurs Longueur, Largeur et Hauteur, nous devons
donner les noms appropriés à ces widgets, afin que nous puissions les récupérer facilement dans
FreeCAD. Cliquez sur chacune des boîtes Double Spin, et dans la fenêtre supérieure droite, double-
cliquez sur leur nom d'objet, et modifiez-les par quelque chose de facile à retenir, par exemple :
BoxLength, BoxWidth et BoxHeight :
• Ouvrez FreeCAD et créez une nouvelle macro dans le menu Macro -> Macros -> Créer
• Collez le code suivant. Assurez-vous de modifier le chemin du fichier pour correspondre à l'endroit où
vous avez enregistré le fichier .ui créé dans QtCreator :
import FreeCAD,FreeCADGui,Part
class BoxTaskPanel:
def __init__(self):
# this will create a Qt widget from our ui file
self.form = FreeCADGui.PySideUic.loadUi(path_to_ui)
def accept(self):
length = self.form.BoxLength.value()
width = self.form.BoxWidth.value()
height = self.form.BoxHeight.value()
if (length == 0) or (width == 0) or (height == 0):
print("Error! None of the values can be 0!")
# we bail out without doing anything
return
box = Part.makeBox(length,width,height)
Part.show(box)
FreeCADGui.Control.closeDialog()
panel = BoxTaskPanel()
FreeCADGui.Control.showDialog(panel)
Dans le code ci-dessus, nous avons utilisé une fonction commode (PySideUic.loadUi) à partir du module
FreeCADGui. Cette fonction charge un fichier .ui, crée un widget Qt à partir de celui-ci et écrit les noms, afin
que nous puissions accéder facilement au sous-espace par leurs noms (ex: self.form.BoxLength).
Si nous implémentons une des fonctions d'acceptation ou de rejet, leur comportement par défaut (ne rien faire
et fermer) ne se produira plus. Nous devons donc fermer le panneau de tâches nous-mêmes. Cela se fait
avec :
FreeCADGui.Control.closeDialog()
Une fois que nous avons notre BoxTaskPanel qui a 1) un widget appelé "self.form" et 2) si nécessaire, les
fonctions Accepter et Rejeter, nous pouvons ouvrir le panneau de tâches avec lui, ce qui est fait avec ces deux
dernières lignes :
panel = BoxTaskPanel()
FreeCADGui.Control.showDialog(panel)
Notez que le widget créé par PySideUic.loadUi n'est pas spécifique à FreeCAD, c'est un widget Qt standard
qui peut être utilisé avec d'autres outils Qt. Par exemple, nous aurions pu afficher une boîte de dialogue
distincte. Essayez ceci dans la console Python de FreeCAD (en utilisant le chemin correct pour votre fichier .ui
bien sûr) :
Bien sûr, nous n'avons ajouté aucun bouton "OK" ou "Annuler" à notre boîte de dialogue, car il a été fait pour
être utilisé à partir du panneau de tâches FreeCAD, qui fournit déjà de tels boutons. Il n'y a donc aucun moyen
de fermer la boîte de dialogue (autrement que de presser son bouton Fermer la fenêtre). Mais la fonction
show () crée une boîte de dialogue non modale, ce qui signifie qu'elle ne bloque pas le reste de l'interface.
Ainsi, alors que notre dialogue est toujours ouvert, nous pouvons lire les valeurs des champs :
w.BoxHeight.value()
Enfin, n'oubliez pas qu'il existe beaucoup plus de documentation sur l'utilisation des widgets Qt dans le Wiki
FreeCAD, dans la section Python Scripting, qui contient un didacticiel de création de dialogue (dialog creation
tutorial), un tutoriel spécial en 3 parties de PySide (PySide tutorial) qui couvre le sujet en profondeur.
La communauté est un groupe croissant et éclectique de toutes sortes de personnes unies par leur passion
pour FreeCAD. Tous travaillent sur FreeCAD volontairement, pendant leur temps libre (bien que parfois des
entreprises ou des individus se rassemblent pour payer quelques heures de programmation à un développeur
pour mettre en œuvre une fonction spécifique). Certains sont des programmeurs professionnels, certains sont
des utilisateurs de FreeCAD de longue date (certains d'entre eux sont de vrais gourous FreeCAD, qui
connaissent presque tout, et beaucoup d'entre eux finissent par connaître beaucoup de programmation
FreeCAD) et beaucoup sont de nouveaux utilisateurs de FreeCAD.
Il n'y a rien à faire pour faire partie de la communauté. Utilisez simplement FreeCAD !
Le principal endroit où la communauté se rencontre et discute est le forum FreeCAD. Tout ce que vous devez
faire pour participer aux discussions est d'enregistrer un compte sur le forum (votre premier post devra être
approuvé par un modérateur avant de poster plus, afin d'éviter tout spam). Le forum est un excellent endroit
pour poser des questions lorsque vous êtes nouveau sur FreeCAD. Si vous avez posé une bonne question
(assurez-vous de lire les règles du forum car elles contiennent des informations utiles pour transformer votre
question en une bonne question), vous recevrez habituellement plusieurs réponses dans la même heure. Si
vous pensez que quelqu'un a déjà posé votre question, n'oubliez pas de rechercher, votre réponse pourrait
déjà être là.
Le forum est également un excellent endroit pour montrer ce que vous avez réalisé avec FreeCAD, pour aider
les nouveaux arrivants lorsque vous avez plus d'expérience et pour suivre vos opinions dans des discussions
plus techniques sur le développement. Tout le développement de FreeCAD (FreeCAD development) est
discuté sur le forum, et n'importe qui est libre de lire ou de participer.
Il existe également des communautés FreeCAD qui se forment en dehors du forum FreeCAD, par exemple
sur Facebook ou Google+.
Si vous devenez aussi enthousiaste à propos de FreeCAD que nous le sommes, vous voudrez peut-être aider
le projet. Cela peut se faire de différentes façons, et il existe des tâches pour tous, les programmeurs et les
non-programmeurs, par exemple :
• Aidez à diffuser le mot : Beaucoup de gens bénéficieraient énormément de l'utilisation d'un modeleur
3D open source gratuit, comme FreeCAD, mais ne connaissent tout simplement pas son existence.
Publiez le travail que vous faites avec FreeCAD, parlez-en sur les réseaux sociaux, etc. ... aidez ces
personnes à découvrir FreeCAD.
• Aidez les nouveaux arrivants : la grande majorité des discussions sur le forum sont des questions
posées par les nouveaux utilisateurs. Vous pourriez connaître de bonnes réponses à leur donner.
• Aidez à signaler les bugs : la stabilité de FreeCAD provient en grande partie de la correction de
bogues. Étant donné qu'il n'est pas possible pour les développeurs de FreeCAD de tester tous les cas
d'utilisation possibles, il est important que les utilisateurs signalent des problèmes lorsqu'ils les
• Aidez-nous à traduire FreeCAD : la traduction de FreeCAD est effectuée en ligne par les membres de
la communauté, sur crowdin. Si vous ne voyez pas votre langue, demandez à l'un des administrateurs
de l'ajouter.
• Aidez-nous à traduire la documentation wiki : chaque page du wiki est traductible et nécessite très peu
de connaissances sur la syntaxe wiki. Aider à la traduction est également un excellent moyen
d'apprendre FreeCAD.
• Écrire des scripts et des macros : FreeCAD a une liste croissante de Macros. Si vous avez écrit des
fonctionnalités intéressantes, envisagez de le partager.
• Programmation : pour cela, vous devez savoir comment programmer en Python ou C ++ et avoir une
bonne connaissance de FreeCAD lui-même.
Le code source de FreeCAD est situé sur le compte Github du projet FreeCAD. Toute personne peut
télécharger, utiliser et modifier le code. Vous pouvez publier vos modifications (sur Github ou tout autre service
d'hébergement Git). Si vous avez apporté des modifications intéressantes, que vous souhaitez voir incluses
dans le code source FreeCAD, vous devez demander à la communauté de les inclure. Cela peut être fait en
utilisant le mécanisme de requêtes du Github, mais la meilleure façon est de discuter de ce que vous avez
l'intention de faire d'abord sur le forum, puis de poster une demande officielle dans la section des requêtes
(Pull requests) du forum lorsque votre code est prêt. Cela évite que vous travailliez sur quelque chose sur
lequel quelqu'un d'autre travaille déjà, et assurez-vous que les autres sont d'accord avec votre façon de faire,
de sorte qu'il n'y ait aucun risque que votre travail soit refusé pour une raison que vous ne prévoyiez pas.
Nous espérons que nous avons réussi à vous donner un bon aperçu de FreeCAD dans ce manuel, et vous
êtes déjà notre plus récent membre de la communauté. Bienvenue !