Release notes 0.20/fr

FreeCAD 0.20 a été publié le DD mois 202x, récupérez-le sur la page de Téléchargement. Ceci est un résumé des changements les plus intéressants. La liste complète des modifications est disponible dans le journal des modifications MantisBT bugtracker FC 0.20.

Les notes de versions plus anciennes de FreeCAD sont disponibles dans la Liste des fonctionnalités.

Développement
Since this release FreeCAD can only be compiled using Qt 5 and Python 3.

Pour compiler FreeCAD sous Windows, il existe différents Libpacks (bibliothèques pré-emballées) disponibles :
 * Libpack pour Windows avec Qt xx, OCC yy et Python zz

La version la plus basse de Python prise en charge est la 3.6.9 selon ce fil du forum.

Systèmes d'exploitation pris en charge :
 * Windows 7, 8 et 10
 * Linux Ubuntu Bionic Beaver (18.04) et Focal Fossa (20.04)
 * MacOS version minimale 10.12 Sierra

Autres améliorations de l'interface utilisateur

 * Deux nouveaux modes de navigation à la souris ont été ajoutés. L'un basé sur OpenSCAD, l'autre sur TinkerCAD. Discussion du forum OpenSCAD, Discussion du forum TinkerCAD, commit 1, commit 2, commit 3.
 * Il est maintenant possible de faire un panoramique de la vue du Graphique de dépendance avec la souris. Discussion du forum, pull request #4638.
 * Correction d'un problème où l'utilisation d'un stylet de tablette (par exemple, une tablette Wacom) était lente au point d'être complètement inutilisable. Discussion du forum, Pull request #4687.
 * Le système de coordonnées dans la vue 3D peut être redimensionné dans les préférences dans la section Affichage → Vue 3D. Pull request #5182
 * Un nouveau paramètre dans Préférences → Général permet de substituer le séparateur décimal du pavé numérique par le séparateur de la locale appropriée s'ils sont différents. Pull request #3256 Pull request #5150 Pull request 5203

Core System, App, Base et espaces de noms de la Gui

 * Un nouveau type de module complémentaire appelé Preference Pack a été ajouté, permettant de distribuer et d'appliquer un sous-ensemble d'un fichier de préférences utilisateur (user.cfg). Discussion sur le forum, Pull request #4787

New Python API

 * Circle2dPy::getCircleCenter: Gets the circle center defined by three points. commit 3dc91fa2


 * ComplexGeoDataPy::applyRotation: Applies an additional rotation to the placement. commit 32592de8
 * ComplexGeoDataPy::applyTranslation: Applies an additional translation to the placement. commit 32592de8
 * ComplexGeoDataPy::countSubElements: Returns the number of elements of a type. commit 32592de8
 * ComplexGeoDataPy::getElementTypes: Returns a list of element types. commit 32592de8
 * ComplexGeoDataPy::getFaces: Returns a tuple of points and triangles with a given accuracy. commit 32592de8
 * ComplexGeoDataPy::getLines: Returns a tuple of points and lines with a given accuracy. commit 32592de8
 * ComplexGeoDataPy::getLinesFromSubelement: Returns vertexes and lines from a sub-element. commit 32592de8
 * ComplexGeoDataPy::getPoints: Returns a tuple of points and normals with a given accuracy. commit 32592de8
 * ComplexGeoDataPy::transformGeometry: Applies a transformation to the underlying geometry. commit 32592de8


 * ControlPy::showModelView: Shows the model view. commit 033bf619


 * DocumentPy::clearDocument: Clears the whole document. commit 526dc1a0
 * DocumentPy::getFileName: For a regular document it returns its file name property. For a temporary document it returns its transient directory. commit 526dc1a0
 * DocumentPy::getProgramVersion: Gets the program version that a project file was created with. commit 526dc1a0
 * DocumentPy::isClosable: Checks if the document can be closed.. commit 526dc1a0
 * DocumentPy::isSaved: Checks if the document is saved. commit 526dc1a0
 * DocumentPy::isTouched: Checks if any object is in touched state. commit 526dc1a0
 * DocumentPy::mustExecute: Checks if any object must be recomputed. commit 526dc1a0
 * DocumentPy::purgeTouched: Purges the touched state of all objects. commit 526dc1a0
 * DocumentPy::setClosable: Sets a flag that allows or forbids to close a document. commit 526dc1a0


 * DrawPagePy::requestPaint: Paints a TechDraw page. commit 79f9fb68


 * HLRBRep_AlgoPy: To access Part's hidden line removal (HLR). commit 73a98671
 * HLRBRep_PolyAlgoPy: To access Part's poly hidden line removal (HLR). commit ea85cf5e
 * HLRToShapePy: To access Part's hidden line removal (HLR). commit 73a98671
 * PolyHLRToShapePy: To access Part's poly hidden line removal (HLR). commit ea85cf5e


 * MDIViewPy::printPdf: Prints a PDF. commit c93031da
 * MDIViewPy::printPreview: Prints a preview. commit c93031da
 * MDIViewPy::printView: Prints a view. commit c93031da
 * MDIViewPy::redoActions: Redoes actions. commit c93031da
 * MDIViewPy::undoActions: Undoes actions. commit c93031da


 * PrecisionPy: To access the precision defined by the OpenCascade kernel. commit 20b86e55


 * PropertyContainerPy::setDocumentationOfProperty: Sets the documentation string of a dynamic property of this class. commit 8cf3cf33
 * PropertyContainerPy::setGroupOfProperty: Set the name of the group of a dynamic property. commit 8cf3cf33


 * RotationPy::fromEuler: Sets the Euler angles of a rotation or gets the Euler angles in a given sequence for a rotation. commit 951a0be9
 * RotationPy::toEulerAngles: Gets the Euler angles in a given sequence for this rotation.. commit c1454dfb


 * SpreadsheetViewPy: To access spreadsheets. commit 6e713628


 * View3DInventorPy::getCornerCrossSize: Returns current corner axis cross size. commit 9d15df29
 * View3DInventorPy::setPopupMenuEnabled: Enables popup menu. commit 9def811a
 * View3DInventorPy::isCornerCrossVisible: Returns current corner axis cross visibility. commit 9d15df29
 * View3DInventorPy::isPopupMenuEnabled: Returns if popup menu is enabled. commit 9def811a
 * View3DInventorPy::projectPointToLine: Projects the given 2d point to a line. commit b6527a70
 * View3DInventorPy::setCornerCrossSize: Defines corner axis cross size. commit 9d15df29
 * View3DInventorPy::setCornerCrossVisible: Defines corner axis cross visibility. commit 9d15df29


 * ViewProviderSpreadsheetPy: To handle spreadsheet cells.commit 16bbe123 and commit 093f15dc

Changed API

 * MeshObject::trim(base, normal) was changed to MeshPy::trimByPlane(base, normal): Trims the mesh with a given plane. commit 837de28e

Atelier Draft

 * Une case à cocher a été ajoutée au panneau des tâches de nombreuses commandes de dessin. Le fait de la cocher permet de saisir des coordonnées dans le système de coordonnées global même si le plan de travail n'est pas aligné avec le plan XY global.


 * La commande Draft_Hatch.svg Draft Hachure a été introduite. Elle crée des hachures sur les faces d'un objet sélectionné à l'aide de motifs provenant de fichiers PAT d'AutoCAD.


 * La commande Draft_AddNamedGroup.svg Draft Nommer un groupe a été introduite. La commandeDraft_AddToGroup.svg Draft Déplacer vers un groupe a été étendue avec la même fonctionnalité.


 * Le travail sur la commande Draft_SetStyle.svg Draft Définir le style, toujours en cours dans FreeCAD version 0.19, a été terminé.


 * Une option d'édition par double-clic a été ajoutée pour Draft_Text.svg Draft Texte. Elle ouvre le même panneau de tâches d'édition que celui utilisé lors de la création d'un texte.


 * Pour Draft_Dimension.svg Draft Dimensions, la  pour les dimensions architecturales impériales a été introduite.


 * Les objets Draft_Shape2DView.svg Draft Vue 2D d'une forme ont maintenant une propriété . La définition de cette propriété à peut s'avérer utile si un document contient de nombreux objets Draft Vue 2D d'une forme ou s'ils sont complexes.


 * Il est maintenant possible d'inverser une Draft Polyligne via le menu contextuel Draft_Edit.svg Draft Éditer. Discussion du forum, Pull request #4811.

Autres améliorations de Draft

 * Correction de Draft Aimantation Grille lorsque le curseur se trouve sur une face. Discussion du forum. Git commit.


 * Les nouveaux Draft Textes sont désormais alignés sur le plan de travail, Pull request #5092.


 * La prise en charge de deux convertisseurs DWG a été ajoutée : LibreDWG et QCAD pro. Voir Préférences d'Import Export et FreeCAD et l'importation DWG pour plus d'informations.

Autres améliorations de FEM

 * Un nouveau solveur a été ajouté : . De nombreux commits.
 * Une nouvelle contrainte a été ajoutée : . Pull request #4982
 * L'ordre des éléments des maillages Gmsh peut être modifié via la boîte de dialogue de maillage. Pull request #4660
 * Les cartes de matériaux peuvent désormais contenir des valeurs de conductivité électrique. Pull request #4647
 * Cartes de matériaux ajoutées pour l'azote et l'argon. Pull request #4649
 * Ajout de la prise en charge des algorithmes de maillage "HXT" (3D) et "Packing Parallelograms" (2D) de Gmsh. Pull request #4654
 * Permettre de définir pour la propriété Optimisation d'ordre élevé de Gmsh un certain algorithme.Pull request #4705
 * Les matériaux solides non linéaires à durcissement simple peuvent désormais avoir un nombre arbitraire de limites d'élasticité. Pull request #5024
 * Ajout/suppression modale d'entités géométriques aux contraintes agissant aux limites. Pull request #5117
 * La plupart des dialogues de contraintes FEM se comportent désormais de manière uniforme et offrent les mêmes fonctionnalités de sélection des objets 3D. Pull request #5391

Amélioration du support des éléments NASTRAN GRID
L'outil d'importation de Mesh supporte maintenant l'élément "GRID*" de haute précision. L'élément "GRID" de précision standard a également été amélioré et supporte maintenant les entrées numériques délimitées par des espaces ainsi que les entrées à largeur de champ fixe, conformément à la documentation du format NASTRAN95.

Autres améliorations de Mesh
Correction des faux négatifs lors des tests d'auto-intersection lorsque les facettes sont coplanaires : Pull request #5002.

Atelier OpenSCAD
L'interopérabilité avec OpenSCAD a été améliorée, en ajoutant le support de plusieurs opérations manquantes dans les versions précédentes (extrusion linéaire avec rotations, extrusions rotatives). Plusieurs opérations ont été modifiées pour fournir des équivalents d'objets FreeCAD améliorés, en particulier pour les extrusions torsadées. La génération de surfaces à partir de données discrètes a été modifiée pour donner des résultats plus proches de ceux d'OpenSCAD, plutôt que des surfaces cannelées.

Ajouter un élément OpenSCAD - a maintenant des options supplémentaires Load - charger un fichier scad Save - sauvegarder un fichier scad Refresh - mise à jour de la vue FreeCAD Clear - effacer la saisie de texte

Il y a également une zone de texte pour le retour des erreurs d'OpenSCAD.



Autres améliorations de Part

 * La boîte de dialogue pour éditer des Cylindres permet maintenant de spécifier un angle par rapport à la normale du plan d'attache choisi. De cette façon, on peut créer des cylindres obliques. Pull request #4708

Autres améliorations de PartDesign

 * Avec la fonction Hélice, on peut désormais utiliser la normale de l'esquisse comme axe. Pull request #5199
 * La fonction Pignon permet désormais de créer également des pignons normalisés ISO. Discussion du forum Pull request #4478
 * Les fonctions Lissage et Balayage permettent désormais d'utiliser les faces du corps pour les sections. Pull request #5155
 * Il est désormais possible de sélectionner plusieurs faces avant d'ouvrir la boîte de dialogue de Protrusion ou Cavité. Dans ce cas, la première face sélectionnée sera utilisée pour déterminer la direction par défaut de la protrusion/cavité. commit d34a5616
 * Dans les dialogues de Chanfrein et de Congé, tous les bords d'un corps peuvent être sélectionnés via le menu contextuel en mode Ajout. Pull request #5269 Lorsque vous avez sélectionné un objet 3D avant de cliquer sur l'icône pour créer un congé ou un chanfrein, tous les bords de l'objet seront automatiquement sélectionnés. Pull request #5328

Autres améliorations de Sketcher

 * Prise en charge de l'Ajustement remanié. Pull Request Discussion du forum <-- Besoin de copies d'écran
 * Le comportement de l'outil Sketcher_CreateSlot.svg Rainure a changé. Les rainures peuvent maintenant être créées en définissant le centre des deux demi-cercles. Pull request #4843 Discussion du forum
 * L'automatisation de la visibilité permet d'ouvrir Sketcher dans une Vue en section lors de l'entrée en mode édition. Pull request #4742 Discussion du forum
 * L'automatisation de la visibilité permet de forcer la caméra en Mode orthographique lorsqu'on rentre dans le mode édition. Pull request #4778 Discussion du forum.
 * Option permettant d'afficher le nom de la contrainte dimensionnelle et d'utiliser un format personnalisé pour celui-ci. Pull request Discussion du forum
 * Lors de l'esquisse d'un arc à 3 points avec Autoconstraint activé, une contrainte tangente est proposée pour les 3 points lors du survol d'une ligne/courbe. Pull request #4945 Discussion du forum.
 * Les contraintes de rayon/diamètre sont affichées en utilisant une rotation angulaire pour faciliter la visualisation. L'angle et le caractère aléatoire optionnel sont réglables par l'utilisateur grâce aux paramètres documentés dans le Réglage fin. Pull request #4934 Discussion du forum
 * Il est maintenant possible de fixer l'angle de la direction lors de l'utilisation de l'outil Réseau rectangulaire. commit Discussion du forum
 * Il est maintenant possible de fixer l'angle de la direction lors de l'utilisation des outils Clone, Copier et Déplacer. commit Discussion du forum
 * Nouvel outil permettant à l'utilisateur d'insérer un nœud dans une courbe B-spline existante Pull request #5311.

Atelier Spreadsheet

 * Il est maintenant possible de sélectionner dans le menu contextuel des lignes/colonnes, à quelles positions les nouvelles lignes/colonnes seront insérées. Pull request #4704.

Autres améliorations de Spreadsheet

 * Importation XLSX (utilisée par Std Importer) : Ajout du support des fonctions Partie entière par défaut (floor) et Partie entière supérieure (ceil). Pull request #5015.
 * Liaison de cellules : demande à un ensemble de cellules d'afficher le contenu d'un autre ensemble de cellules. Fait partie de Pull request #2862.
 * Amélioration de la navigation en utilisant les touches Tab et Entrée.
 * Amélioration de l'interface pour couper et coller des blocs de cellules.

Autres améliorations de TechDraw

 * Lorsqu'il y a plusieurs Pages et que l'on veut ajouter une Vue, un Groupe de projections etc., il y a maintenant un dialogue pour demander à quelle page la vue doit être ajoutée. Pull request #5309.

Ateliers externes
ce sont les nouveaux ateliers créés dans ce cycle de développement ou les anciens ateliers qui ont reçu des mises à jour. Voir les Ateliers externes pour plus d'ateliers pouvant être installés et couvrant une grande variété de sujets. Si vous souhaitez voir votre atelier ajouté, rejoignez le forum et présentez votre code.

FCGear
L'atelier FCGear a reçu quelques améliorations :


 * Pour les engrenages à développante, le diamètre extérieur (ou pointe) et le diamètre de la racine sont exposés en tant que propriétés (détails).
 * Les objets engrenages sont maintenant attachables. (détails)
 * Les objets engrenages peuvent désormais être utilisés comme des fonctions additives dans les corps de PartDesign (détails).
 * La création d'objets engrenages apparaît désormais dans la pile d'annulation (détails)