Feature list/fr

Vous trouverez ici une liste approfondie, mais cependant incomplète, des fonctionnalités implémentées dans FreeCAD. Si vous voulez vous renseigner sur les fonctionnalités à venir, vous pouvez consulter le programme de développement. Pour un aperçu rapide, les captures écrans sont un bon endroit à visiter.

Application de base



 * FreeCAD est multiplate-forme. Le logiciel fonctionne et se comporte exactement de la même manière sur les plates-formes Windows, Linux et Mac OsX.


 * FreeCAD est une application entièrement graphique. FreeCAD possède une Interface Graphique Utilisateur développée sur le célèbre framework Qt, avec une visualisation 3D basée sur Open Inventor (lien en anglais), ce qui permet un rendu rapide des scènes 3D et une représentation du graphe de scène très accessible.


 * FreeCAD peut aussi fonctionner comme une application en ligne de commande, avec une utilisation réduite des ressources. En ligne de commande, FreeCAD s'exécute sans son interface, mais avec tous ces outils géométriques. Il est possible, par exemple, de l'utiliser comme serveur pour produire du contenu destiné à d'autres applications.


 * FreeCAD peut être importé en tant que module Python, à l'intérieur d'autres applications capables d'exécuter des scripts Python, ou dans une console Python. Comme dans le mode console (ligne de commande), l'interface de FreeCAD n'est pas disponible, mais tous les outils géométriques sont accessibles.


 * Framework Plugin/Module pour le chargement tardif des fonctionnalités et des types de données.. FreeCAD est divisé en une application de base et des modules, qui sont chargés uniquement lorsque cela est nécessaire. Presque tous les outils ainsi que les types de géométrie sont stockés dans des modules. Les modules agissent comme des plugins, et peuvent être ajoutés ou enlevés à une installation existante de FreeCAD.


 * Framework de scripting intégré: FreeCAD intègre un interpréteur Python, ainsi qu'une interface de programmation qui couvre presque chaque partie de l'application (l'interface, la géométrie, et sa représentation dans l'environnement 3D). L'interpréteur peut exécuter de simples commandes autant que des scritps complexes, et à vrai dire des modules entiers peuvent même être programmés complètement en Python.


 * Un installeur modulaire MSI permet une installation flexible sur les systèmes Windows. Des paquets pour les systèmes Ubuntu sont également maintenus.

Structure des documents



 * Framework annuler / refaire: Il est possible de tout annuler / refaire, avec un accès à l'historique d'annulation, permettant l'annulation de plusieurs étapes en une seule fois.


 * Gestion des opérations: L'historique d'annulation stocke les opérations du document, et non pas les actions seules. Ainsi, chaque outil est capable de définir exactement ce qui doit être annulé ou refait.


 * Objets paramétrables et associatifs: Tous les objets d'un document FreeCAD peuvent être définis par des paramètres. Ces paramètres peuvent être modifiés à la volée, et recaculés à tout instant. Les relations entre les objets sont ainsi mémorisées, et modifier un objet entraine la modification de tous les objets qui dépendent de celui-ci.


 * Format de fichier multiple (basé sur le ZIP): les documents FreeCAD sauvegardés avec l'extension .fcstd peuvent contenir de nombreuses informations de nature différente, telles que la géométrie, des scripts, ou encore des icônes.

Interface Utilisateur

 * Interface Graphique Utilisateur entièrement personnalisable / programmable. L'interface de FreeCAD basée sur Qt est entièrement accessible via l'interpréteur Python. Outre les fonctions simples que FreeCAD fournit lui-même aux différents environnements de travail, l'ensemble du framework Qt est également accessible, permettant n'importe quelle opération sur l'interface utilisateur, telles que la création, l'ajout, l'ancrage, la modification ou la suppression de widgets et de barres d'outils.


 * Le concept d'environnements de travail : Dans l'interface FreeCAD, les outils sont regroupés en environnements de travail. Ceci permet d'afficher uniquement les outils nécessaires à l'accomplissement d'une tâche particulière, laissant ainsi l'interface épurée et réactive, et l'application rapide à charger.


 * Console Python intégrée avec coloration syntaxique, autocomplétion et explorateur de classes : les commandes Python peuvent être écrites directement dans FreeCAD et renvoyer immédiatement des résultats, permettant aux créateurs de scripts de tester les fonctionnalités à la volée, d'explorer le contenu des modules et d'en apprendre facilement davantage sur FreeCAD.


 * Correspondance interaction utilisateur et console: Tout ce que fait l'utilisateur dans l'interface FreeCAD exécute du code Python, qui peut être affiché dans la console et enregistré dans des macros.


 * Enregistrement et édition complets de macros: Les commandes Python exécutées lorsque l'utilisateur manipule l'interface peuvent donc être enregistrées, mais aussi éditées si besoin, et bien sur sauvegardées afin d'être reproduites ultérieurement.


 * Créateur de miniatures (systèmes Linux seulement à l'heure actuelle): Les icônes des documents FreeCAD représentent le contenu du fichier dans la plupart des gestionnaires de fichiers, comme par exemple Nautilus sur Gnome.

Caractéristiques spécifiques
Les fonctionnalités de FreeCAD sont séparées en modules, chacun traitant un type de données et des utilisations spécifiques :

Maillage



 * Le Module maillage traite des maillages 3D. Il est tout d'abord destiné à l'import dans FreeCAD, la réparation, et la conversion de maillage générés par des applications tierces, ainsi qu'à l'export de géométries FreeCAD vers des maillages. FreeCAD en lui-même propose cependant des types de géométries bien plus avancés que les maillages.


 * Création de primitives (cube, sphère, cylindre, etc.), décalage (trivial ou après Jung/Shin/Choi) ou encore opérations booléennes (union, soustraction, intersection)


 * Import des formats suivants : Fichier de stéréolithographie STL ASCII ou binaire, le format OBJ (*.obj), support limité du format NASTRAN (*.nas), maillages Open Inventor (*.iv), et maillages natifs du noyau FreeCAD (*.bms)


 * Export vers les formats suivants : Fichier de stéréolithographie STL ASCII ou binaire (*.stl, *.ast), le format OBJ (*.obj), support limité du format NASTRAN (*.nas, *.brl), maillages VRML (*.wrl), maillages natifs du noyau FreeCAD (*.bms), maillages en tant que module Python (*.py)


 * Outils de Tests et réparation des maillages: test solide, test de non-variété, test d'intersection interne, remplissage de trous et uniformisation de l'orientation.


 * Interface de programmation étendue.

Planche à dessin

 * Création graphique de géométries planes simples : lignes, segments, rectangles, arcs ou cercles dans n'importe quel plan de l'espace 3D


 * Annotations : textes ou dimensions


 * Opérations de modification graphique comme les translations, rotations, mises à l'échelle, symétries axiale, décalages ou conversion de formes, dans n'importe quel plan de l'espace 3D


 * Import et Export des formats suivants : Drawing Exchange Format Autodesk (*.dxf), Open Cad Format (*.oca, *.gcad) et SVG (*.svg)

CAO



 * Le Module Pièce mécanique s'intéresse à tout ce qui tourne autour de la modélisation CAO et de la structure des données CAO. La fonctionnalité CAO est en développement intensif (consulter les pages Projet conception pièces mécaniques et  Projet assemblage dans le  programme de développement. The Module Pièce mécanique se base sur la géométrie de haut niveau Open CASCADE.


 * Primitives paramétriques : cube, sphère, cylindre, cône ou tore.


 * Composants topologiques tels que les vertex (vertices), contours, fils et les plans (via script Python).


 * Modélisation à l'aide d'extrusions droites ou de révolution, de sections et de congés.


 * Opérations booléenne comme union, différence et intersection.


 * Interface de programmation étendue.


 * Import et Export des formats suivants: Pièces et assemblages STEP (*.stp,*.step), modèles IGES (*.igs, *.iges) et BRep (*.brp), le format natif de notre noyau CAO Open CASCADE.

Raytracing

 * Le Module raytracing permet l'export de géométrie FreeCAD vers des moteurs de rendu externes dans le but de générer des images de haute qualité. Actuellement, le seul moteur de rendu supporté est POV-Ray. Le module permet actuellement la création d'une feuille de rendu, ainsi que l'ajout de la géométrie à cette feuille de rendu pour l'export vers un fichier POV-Ray.

Mise en plan

 * Le Module de mise en plan permet d'exporter des vues projetées d'une géométrie 3D vers un document 2D SVG. Ce module permet également la création d'une feuille 2D à partir d'un modèle SVG existant, et l'insertion des vues projetées dans cette feuille. Ensuite, la feuille peut être sauvegardée au format SVG.

FAO

 * Le Module FAO est dédié à l'usinage de pièces mécaniques, comme le tournage ou le fraisage. Ce module en est au tout début de son développement et est, à ce stade, majoritairement dédié au Formage incrémental. Bien que certains algorithmes pour la génération de trajectoire outil soient déjà existant, ils ne sont actuellement pas utilisables par l'utilisateur final.