Notes de version 0.20

From FreeCAD Documentation
This page is a translated version of the page Release notes 0.20 and the translation is 100% complete.

FreeCAD 0.20 a été publié le 14 juin 2022, téléchargez le depuis la page Téléchargement. Cette page liste toutes les nouvelles fonctionnalités et les changements.

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

Modèle d'un moteur à courant continu type 775 par l'utilisateur "jimmihenry", voir Users Showcase.
Le modèle a été réalisé entièrement avec la version hebdomadaire development snapshots de FreeCAD 0.20. Les images de l'animation graphique ont été réalisées avec la macro FreeCAD Screen Wiki. Le GIF animé a été créé à l'aide de GIMP. Pour les notes de version, il a été recadré et redimensionné à l'aide de ezgif.

Généralités

freecad.org

Nous sommes heureux que le projet KiCAD, par le biais de KiCAD services corp., nous ait sponsorisé le nom de domaine freecad.org. Tous les sites Web de FreeCAD sont désormais disponibles sous freecadweb.org et freecad.org.

Suivi des bogues/problèmes

Le système de suivi des bogues de FreeCAD a été déplacé sur GitHub : https://github.com/FreeCAD/FreeCAD/issues.

Remarque : Seuls les rapports de bogue ayant fait l'objet d'une discussion préalable sur le forum seront pris en considération. Les rapports sans cela seront fermés.

Nouveau système d'aide

Le système d'aide a été réécrit et mis à jour pour afficher des informations provenant directement de notre Wiki. Le système repose désormais sur l'extension Help. Lors de votre première utilisation de l'outil Aide ou de l'outil Std Qu'est-ce que c'est?, il vous sera demandé de l'installer.

Interface utilisateur

Le cube de navigation a été retravaillé :
  • Il y a maintenant des faces de bord pour faire pivoter la vue 3D de 45°.
  • Une nouvelle préférence Tourner au plus près a été introduite. Si elle est sélectionnée, la vue 3D est tournée vers la position logique la plus proche, basée sur l'orientation courante du cube, lorsqu'une face du cube est cliquée. Si vous ne cliquez pas sur une face, vous obtiendrez toujours la même rotation. Pour voir la différence, essayez la même séquence de clics que dans l'animation, avec et sans l'option Tourner au plus près.
  • En cliquant sur le nouveau bouton rond dans le coin supérieur droit, vous pouvez rapidement passer à la vue arrière de la scène en cours.
  • La taille du cube peut maintenant être ajustée avec la préférence Taille du cube.

Discussion sur le forum, Pull request #4502 .

Des infobulles affichent désormais le nom de la commande dans le titre, ce qui permet aux nouveaux utilisateurs de rechercher plus facilement de l'aide. À la fin de l'infobulle, le nom de la commande "interne" est ajouté entre parenthèses : (Std_WhatsThis). C'est également le nom de la page qui documente la commande dans le Wiki. Discussion du forum, Pull request #4978.
La nouvelle commande Std Mode d'édition permet à l'utilisateur de choisir le mode d'édition qui sera utilisé lorsqu'il double-cliquera sur un objet dans la Vue en arborescence. Cliquez sur l'image à gauche pour voir une animation de la sélection. Si le mode d'édition sélectionné n'est pas applicable, le mode d'édition par défaut de l'objet est utilisé à la place. Pull request #5110.
Le menu contextuel de la Vue en arborescence contient une nouvelle entrée Ajouter des objets dépendants à la sélection.
Discussion du forum, Pull request #4133.

Dans l'image, l'objet Hole001 a été sélectionné et ensuite ses
dépendances ont été ajoutées à la sélection via le menu contextuel.

Le nouvel outil Coupe permet d'obtenir des coupes non creuses et également persistantes de pièces et d'assemblages.
Discussion du forum, Pull request #4118.

Autres améliorations de l'interface utilisateur

Noyau et API

Noyau

Lorsque vous utilisez Édition → Copier ou Édition → Dupliquer la sélection pour un objet avec des dépendances, il existe un nouveau bouton Utiliser les sélections d'origine dans le dialogue de sélection d'objet. Cliquez sur ce bouton pour copier/dupliquer uniquement les objets que vous avez sélectionnés à l'origine avant d'ouvrir le dialogue, en ignorant les dépendances et en ne tenant pas compte des actions que vous avez pu effectuer pendant que le dialogue était ouvert, comme cocher ou décocher certaines cases. L'effet est le même que si vous aviez décoché toutes les cases à côté des objets que vous n'aviez pas sélectionnés à l'origine et appuyé sur OK. Remarque : il convient d'être particulièrement prudent lorsque vous copiez/dupliquez des pages TechDraw. Il est recommandé de copier/dupliquer également tous les enfants de la page (modèles, vues, dimensions, etc.). Sinon, les modifications apportées à une page auront également un impact sur l'autre page. Par exemple, la suppression d'une vue sur une page entraîne sa suppression de l'autre page, ou la suppression d'une page entraîne la suppression de tout son contenu sur l'autre page.
Un nouveau type d'extension appelé Kits de préférence a été ajouté, permettant à un sous-ensemble du fichier de préférences d'un utilisateur (user.cfg) d'être sauvegardé, distribué et facilement appliqué par d'autres utilisateurs. Les kits de préférences peuvent être utilisés pour distribuer des "thèmes", par exemple, en permettant à un développeur d'inclure à la fois une feuille de style Qt pour les widgets ainsi qu'un ensemble d'autres couleurs et styles pour les éléments de l'interface utilisateur qui ne peuvent pas être définis à l'aide d'une feuille de style (par exemple, les couleurs du texte dans l'éditeur Python ou la vue des rapports, etc.) Tout ce qui peut être configuré via un fichier user.cfg peut être défini à l'aide d'un kit de préférences. Discussion sur le forum
Le panneau de préférences "Ateliers" a été modifié pour permettre de "charger automatiquement" les ateliers au démarrage de FreeCAD.

Sous Linux, l'emplacement par défaut des fichiers de configuration, de données et du cache de FreeCAD a été modifié pour suivre XDG Base Directory Specification. Fil du forum. Voici une comparaison de l'ancien et du nouvel emplacement :

Description Ancien emplacement Nouvel emplacement Valeur par défaut
Fichiers de configuration $HOME/.FreeCAD $XDG_CONFIG_HOME/FreeCAD $HOME/.config/FreeCAD
Fichiers de données $HOME/.FreeCAD $XDG_DATA_HOME/FreeCAD $HOME/.local/share/FreeCAD
Fichiers du cache /tmp $XDG_CACHE_HOME/FreeCAD $HOME/.cache/FreeCAD

Si vous souhaitez continuer à utiliser les anciens emplacements, vous pouvez démarrer FreeCAD avec l'option --keep-deprecated-paths.

API

FreeCAD a reçu de nombreuses nouvelles fonctions de l'API en Python :

Nouvelles API en Python

  • ChFi2d_AnaFilletAlgoPy : Un algorithme analytique pour le calcul des congés. commit f94ab3ec
  • ChFi2d_ChamferAPIPy : Algorithme qui crée un chanfrein entre deux arêtes linéaires. commit 30f8015e7
  • Circle2dPy::getCircleCenter : Récupérer le centre du cercle défini par trois points. commit 3dc91fa2
  • ComplexGeoDataPy::applyRotation : Applique une rotation supplémentaire au placement. commit 32592de8
  • ComplexGeoDataPy::applyTranslation : Applique une translation supplémentaire au placement. commit 32592de8
  • ComplexGeoDataPy::countSubElements : Retourne le nombre d'éléments d'un type. commit 32592de8
  • ComplexGeoDataPy::getElementTypes : Retourne une liste de types d'éléments. commit 32592de8
  • ComplexGeoDataPy::getFaces : Retourne un tuple de points et de triangles avec une précision donnée. commit 32592de8
  • ComplexGeoDataPy::getLines : Retourne un tuple de points et de lignes avec une précision donnée. commit 32592de8
  • ComplexGeoDataPy::getLinesFromSubelement : Retourne les sommets et les lignes d'un sous-élément. commit 32592de8
  • ComplexGeoDataPy::getPoints : Retourne un tuple de points et de normales avec une précision donnée. commit 32592de8
  • ComplexGeoDataPy::transformGeometry : Applique une transformation à la géométrie sous-jacente. commit 32592de8
  • DocumentPy::clearDocument : Efface tout le document. commit 526dc1a0
  • DocumentPy::getFileName : Pour un document standard, retourne la propriété du nom du fichier. Pour un document temporaire, retourne son répertoire transitoire. commit 526dc1a0
  • DocumentPy::getProgramVersion : Récupère la version du programme avec lequel un fichier de projet a été créé. commit 526dc1a0
  • DocumentPy::isClosable : Vérifie si le document peut être fermé. commit 526dc1a0
  • DocumentPy::isSaved : Vérifie si le document est enregistré. commit 526dc1a0
  • DocumentPy::isTouched : Vérifie si un objet est dans l'état touché. commit 526dc1a0
  • DocumentPy::mustExecute : Vérifie si un objet doit être recalculé. commit 526dc1a0
  • DocumentPy::purgeTouched : Purge l'état touché de tous les objets. commit 526dc1a0
  • DocumentPy::setClosable : Définit un drapeau (flag) qui permet ou interdit de fermer un document. commit 526dc1a0
  • HLRBRep_AlgoPy : Pour accéder aux lignes cachées supprimées de Part. commit 73a98671
  • HLRBRep_PolyAlgoPy : Pour accéder aux lignes cachées supprimées de Part. commit ea85cf5e
  • HLRToShapePy : Pour accéder aux lignes cachées supprimées de Part. commit 73a98671
  • PolyHLRToShapePy : Pour accéder aux polylignes cachées supprimées Part. commit ea85cf5e
  • PrecisionPy : Pour accéder à la précision définie par le noyau d'OpenCascade. commit 20b86e55
  • PropertyContainerPy::setDocumentationOfProperty : Définit la chaîne de documentation d'une propriété dynamique de cette classe. commit 8cf3cf33
  • PropertyContainerPy::setGroupOfProperty : Fixe le nom du groupe d'une propriété dynamique. commit 8cf3cf33
  • PythonWorkbenchPy::reloadActive : Recharge l'atelier actif après avoir modifié les menus ou les barres d'outils. commit 0bbc253d
  • RotationPy::fromEuler : Définit les angles d'Euler d'une rotation ou obtient les angles d'Euler dans une séquence donnée pour une rotation. commit 951a0be9
  • RotationPy::toEulerAngles : Obtient les angles d'Euler dans une séquence donnée pour cette rotation... commit c1454dfb
  • SpreadsheetViewPy : Pour accéder aux feuilles de tableur. commit 6e713628
  • UnitsApi::sToNumber : Convertit une quantité ou un flottant en une chaîne de caractères. commit befbd95d
  • View3DInventorPy::getCornerCrossSize : Retourne la taille de la croix de l'axe du coin en cours d'utilisation. commit 9d15df29
  • View3DInventorPy::setPopupMenuEnabled : Active le menu popup. commit 9def811a
  • View3DInventorPy::isCornerCrossVisible : Retourne la visibilité de la croix de l'axe du coin. commit 9d15df29
  • View3DInventorPy::isPopupMenuEnabled : Retourne si le menu popup est activé. commit 9def811a
  • View3DInventorPy::projectPointToLine : Projette le point 2d donné sur une ligne. commit b6527a70
  • View3DInventorPy::setCornerCrossSize : Définit la taille de la croix de l'axe du coin. commit 9d15df29
  • View3DInventorPy::setCornerCrossVisible : Définit la visibilité de la croix de l'axe du coin. commit 9d15df29

API en Python modifiées

  • MeshObject::trim(base, normal) a été changé en MeshPy::trimByPlane(base, normal) : Découpe le maillage avec un plan donné. commit 837de28e

Gestionnaire des extensions

Le Gestionnaire des extensions a été modifié pour prendre en charge la distribution des packs de préférences et pour afficher les informations contenues dans les métadonnées d'une extension. Le gestionnaire des extensions comprend également une prise en charge améliorée des extensions dont le code source est situé à plusieurs emplacements d'hébergement git différents. La prise en charge de la mise en réseau a été améliorée afin de fournir une gestion plus robuste des connexions SSL et une prise en charge des proxys nécessitant une authentification. La prise en charge a été ajoutée pour ajouter automatiquement des boutons de macro à la barre d'outils après l'installation, pour désactiver les extensions sans les supprimer et pour changer la branche git d'un module complémentaire qui est extraite. Enfin, l'interface utilisateur a été modifiée pour améliorer la recherche et l'affichage des différents filtres de liste.

Atelier Arch

Atelier SketchArch

Grâce à Attach Feature, il est désormais possible de placer une Fenêtre et un Équipement de manière paramétrique et intuitive par rapport aux Murs. Pour utiliser cette fonctionnalité, il faut installé l' atelier SketchArch expérimental externe. Add-on et ReadMe sur Github (Pas encore disponible dans le Gestionnaire des extensions).

Discussion sur le forum

Nouvelles propriétés pour les objets Arch Structure :

BasePerpendicularToTool : crée une copie de la Base (profil d'extrusion) au début de l'outil (chemin d'extrusion) et la place perpendiculairement au premier bord de l'outil. C'est la même chose que de fixer la Base avec MapMode=NormalToEdge, mais c'est automatique et cela permet de réutiliser le même objet Base pour plusieurs structures. Lorsque BasePerpendicularToTool = True, d'autres propriétés contrôlent le placement de la Base par rapport à l'axe de l'outil. Elles sont présentées dans l'image ci-jointe.

  • ToolOffsetFirst et ToolOffsetLast : étendent/découpent la structure au début et à la fin respectivement (la longueur réelle de la structure est disponible dans la propriété ComputedLength en lecture seule).
  • BaseRotation : fait tourner la Base (la rotation se fait autour du point "(0,0)" de la base qui est le centre pour Arch Profilés, l'origine pour les esquisses et généralement le premier point pour Draft Polylignes).
  • BaseOffsetX et BaseOffsetY : déplacent la Base (profil d'extrusion).
  • BaseMirror : miroir de la Base (profil d'extrusion).

Une nouvelle commande Create multiple Arch Structure a également été ajoutée. Elle utilise le premier objet sélectionné comme Base, et crée des objets Arch Structures pour chaque bord des autres objets sélectionnés. Ensuite, les propriétés de chaque objet Structure peuvent être ajustées dans l'éditeur de propriétés. Cette commande a été ajoutée pour le flux de travail avec une esquisse maître (il y a un risque de problème de dénomination topologique à moins de créer une copie non-paramétrique de l'esquisse maître ou d'utiliser la version de Realthunder).

La prise en charge des données 2D telles que le tracé, les hachures, les textes et les dimensions est maintenant activée dans l'importation et l'exportation IFC, ce qui contribue à rendre le format IFC de plus en plus adapté au travail traditionnel de CAO 2D. Un effort similaire est en cours dans BlenderBIM. D'autres améliorations du mode de travail 2D sont documentées dans ce fil de discussion du forum.

Discussion sur le forum, Pull request #3229

Atelier Draft

  • Une case à cocher Global 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 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.
  • Une option d'édition par double-clic a été ajoutée pour 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 Dimensions, la arch VueUnit Override pour les dimensions architecturales impériales a été introduite.
  • Les objets Draft Vue 2D d'une forme ont maintenant une propriété DonnéesAuto Update. La définition de cette propriété à false peut s'avérer utile si un document contient de nombreux objets Draft Vue 2D d'une forme ou s'ils sont complexes.

Autres améliorations de Draft

Atelier FEM


Les nouveaux paramètres Z88 et leurs valeurs par défaut
Le solveur Z88 est maintenant entièrement utilisable. Vous pouvez spécifier la méthode de solveur et modifier les paramètres de mémoire. Les nouvelles valeurs par défaut vous permettent également d'effectuer directement des simulations complexes.

commit d035bbc1ca et suivants


Résultat d'une analyse de flambage linéaire.
Cliquez sur l'image pour voir l'animation.
Il est maintenant possible d'effectuer des analyses de flambage en utilisant le solveur Calculix. Pull request #4379

Effet de "la taille du maillage à partir de la courbure". À gauche : réglé sur 12, à droite : désactivé
Il existe une nouvelle propriété pour le mailleur Gmsh. Le nombre d'éléments de maillage par fois le rayon de la courbure peut être spécifié. La valeur par défaut est 12 et pour obtenir un maillage plus fin aux petits coins ou trous, cette valeur peut être augmentée pour de meilleurs résultats. Cette fonctionnalité nécessite Gmsh 4.8 ou plus récent.

Discussion du forum, Pull request #4596


Effet de l'algorithme de recombinaison. À gauche : en utilisant Simple, à droite : en utilisant Simple full-quad
FreeCAD permet maintenant de sélectionner un algorithme ainsi que la recombinaison de maillage 3D pour le mailleur Gmsh. Pour plus de détails sur la recombinaison des éléments de maillage, FEM Maillage MEF à partir d'une forme avec Gmsh.

Pull request #4706

Autres améliorations de FEM

  • Important : à partir de cette version, FreeCAD utilisera les unités SI (m, kg, s, K, A, mol, cd) pour écrire les fichiers d'entrée du solveur Elmer (case.sif et mesh.nodes). Ceci est indépendant du système d'unités utilisé par FreeCAD.
  • Important : à partir de cette version, l'échelle des résultats et de leurs filtres utilisera les unités SI (m, kg, s, K, A, mol, cd). Ainsi, le déplacement est donné en mètre, la contrainte en Pascal. Ceci s'applique à tous les systèmes d'unités dérivés du SI de FreeCAD .
  • Le maillage avec le solveur Calculix utilise désormais tous les cœurs du processeur. Pull request #6374
  • Le maillage avec Gmsh utilise désormais tous les cœurs du CPU. Pull request #6370
  • L'ordre des éléments des maillages Gmsh peut être modifié via la boîte de dialogue de maillage. Pull request #4660
  • Le filtre de résultat Données au point fonctionne maintenant réellement : on obtient des informations à partir des mailles de résultat en cliquant dessus ou en spécifiant une coordonnée de maille.
  • Une nouvelle contrainte a été ajoutée : Modèle → Contraintes mécaniques → Charge centrifuge. Pull request #4738
  • Un nouveau solveur a été ajouté : Solveur → Solveur Mystran. De nombreux commits.
  • Une nouvelle contrainte a été ajoutée : Modèle → Contraintes géométriques → Ressort. Pull request #4982
  • Il est maintenant possible d'avoir des pipelines de résultats avec plusieurs filtres, où certains prennent d'autres filtres en entrée, et d'autres prennent les résultats directement dans le pipeline. commit 708a300b
  • 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
  • Permet de spécifier un algorithme pour la propriété "Optimisation d'ordre élevé" de Gmsh. 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

Exportation

  • DXF : Le bloc d'unité manquant a été ajouté au fichier header14.rub. Pull request #5793

Atelier Mesh

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.

De nouvelles options ont été ajoutées pour supporter l'exécution de FreeCAD, OpenSCAD, ou les deux, dans des environnements de bacs à sable tels que les AppImages et les paquets Snap : les données peuvent maintenant être transférées vers et depuis OpenSCAD via le mécanisme standard de répertoire temporaire, via un répertoire temporaire spécifié par l'utilisateur auquel les deux exécutables ont accès, ou, nouveauté d'OpenSCAD 2021.1, via un mécanisme de "stdout pipe", contournant entièrement les fichiers temporaires.

Les options suivantes ont été ajoutées au panneau des tâches de la fonction Ajout d'un élément OpenSCAD :
Load - charger un fichier scad
Save - sauvegarder un fichier scad
Refresh - mise à jour de la vue FreeCAD
Clear - effacer la saisie de texte

Une nouvelle boîte de dialogue donne des informations sur les erreurs d'OpenSCAD.

Atelier Part


Extrusion conique d'une esquisse avec une structure interne.
L'extrusion conique de structures internes donne désormais des résultats utilisables. Auparavant, les structures internes étaient extrudées comme si elles étaient autonomes et ne faisaient pas partie d'une structure.

Pull request #5367

Autres améliorations de Part

Atelier PartDesign


Extrusion le long d'une arête du modèle.
Cliquez sur l'image pour voir l'animation.
Il y a une nouvelle option pour extruder le long de la direction d'un bord dans le modèle 3D.

Pull request #4685

Lorsque la distance et l'angle sont spécifiés dans l'outil Chanfrein et que des faces sont sélectionnées, la distance sera appliquée le long des faces sélectionnées. De même, si deux distances sont spécifiées, la taille à 1 sera appliquée le long de la face sélectionnée.

Ce comportement peut être remplacé par l'autre face en utilisant le bouton de changement de direction. Discussion du forum, Pull request #5039.

.
Un lissage avec plusieurs sections, la dernière étant un sommet.
Il est désormais possible de créer un Lissage additif ou Lissage soustractif, ou un Balayage additif ou Balayage soustractif vers ou depuis un sommet Vertex d'une esquisse ou d'un corps. Cela permet de créer des pyramides par exemple.
Note : Les sommets des esquisses sont créés en tant que géométrie de construction. Pour les utiliser comme points d'extrémité de lissages, vous devez d'abord les changer en géométrie normale.

Pull request #5170 (pour les lissages), Pull request #5193 (pour les balayages)


Une cavité conique dans une protrusion non conique.
Les boîtes de dialogue de Protrusion et de Cavité propose de définir un angle d'effilement pour l'extrusion.

Pull request #5357


Cavité selon différentes directions.
Cliquez sur l'image pour voir l'animation.
Il est maintenant possible de spécifier la direction pour l'extrusion de la cavité.

Pull request #5164

La boîte de dialogue pour éditer un Cylindre (additif et soustractif) 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

. La fonction Hélice a le nouveau mode Hauteur-Tours-Croissance pour créer des spirales plates.

Discussion du forum Pull request #4590


Une seule protrusion et une seule Révolution avec des profils imbriqués. La protrusion de base n'est là que pour garantir que la pièce soit un seul solide.
Toutes les fonctions de PartDesign qui peuvent extruder des esquisses peuvent désormais gérer les esquisses avec des profils imbriqués qui forment des îles. Par exemple, il est possible de faire tourner une esquisse constituée de 3 cercles imbriqués avec le même point central.
Remarque : L'extrusion de profils imbriqués ne fonctionne que si le résultat est toujours un seul corps.

Pull request #6381


Effet de la nouvelle option "Longueur le long de la normale de l'esquisse".
Cliquez sur l'image pour voir l'animation.
Nouvelle option pour extruder d'une certaine longueur le long de la direction. La longueur est mesurée le long de la normale de l'esquisse ou le long de la direction personnalisée.

Discussion du forum, Pull request #3893

La fonction Perçage peut désormais modéliser de véritables filets.

Discussion du forum, Pull request #4274

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
  • Il est possible de décaler les Sous formes liées si elles sont basées sur des arêtes, des lignes ou des faces. Pull request #6338
  • Les Sous formes liées possède maintenant la propriété Refine comme tous les autres objets PartDesign. Pull request #6550
  • Dans les boîtes de dialogue 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
  • Les boîtes de dialogue de Chanfrein et Congé disposent désormais chacune d'une nouvelle case à cocher Utiliser tous les bords, qui est liée à la propriété Use All Edges de ces objets. Lorsque la case est cochée, la propriété est définie à True. Lorsqu'elle n'est pas cochée, la propriété est définie à False. Lorsque Use All Edges est True, il y a une protection contre le problème de dénomination topologique car alors tous les bords de l'objet de base sont utilisés, quel que soit le nombre de bords. Pull request #5340
  • La sélection du plan lors de l'ajout d'une nouvelle esquisse peut désormais se faire d'un simple clic dans la vue 3D. Pull request Discussion du forum
  • Lorsqu'un outil PartDesign est exécuté sans corps actif, FreeCAD propose désormais d'activer un corps ou d'en créer un nouveau. Pull request #4949
  • L'outil Définir les couleurs est désormais également disponible depuis l'atelier de PartDesign.

Atelier Path

  • La fonctionnalité Extensions a été ajoutée à l'opération Adaptatif. Pull request #4388
  • L'opération Hélice a été remaniée et la propriété Extra offset lui a été ajoutée. Pull request #5405
  • La vérification si le schéma en cours utilise les minutes pour l'expression de vitesse et l'avertissement approprié ont été ajoutés. Pull request #6357
  • Les filets externes ont été ajoutés à l'opération de fraisage de filets. Pull request #6485
  • La stabilité de la gravure sur les esquisses a été améliorée. Pull request #6394
  • La visibilité des objets Parcours a été rendue plus naturelle. Pull request #4911

Module Plot

  • FreeCAD fournit maintenant le module Plot par défaut, de sorte que tout autre module/atelier peut créer des tracés sans nécessiter d'outils externes Pull request #4971.

Atelier Sketcher

Nouvelle fonction Diviser une arête pour diviser les lignes ou les arcs existants.

Discussion du forum Pull request #4420

Nouvel outil Rectangle arrondi pour créer des rectangles aux coins arrondis.

Discussion du forum Main Pull request #4835

Nouvel outil Rectangle centré pour définir des rectangles via un point central.

Main commit

Nouvelle fonction Contrainte automatique rayon/diamètre permet d'assigner automatiquement un poids sur le pôle B-spline, un diamètre sur un cercle complet ou un rayon sur un arc. Support de la multi-sélection comme outils de diamètre/rayon.

Discussion du forum Main Pull request #4855

Nouvel outil de contrainte Supprimer l'alignement des axes pour supprimer l'alignement des axes tout en essayant de préserver la relation de contrainte de la sélection.

Main commit

Sketcher Contour oblong peut être contraint horizontalement ou verticalement soit en l'aimantant manuellement avec la touche Ctrl, soit en utilisant l'option Auto contraintes de Sketcher.

Pull request #5200

Nouvel outil Insérer un nœud pour insérer un nœud dans une B-spline existante.

Pull request #5311 et Pull request #6356

Autres améliorations de Sketcher

Atelier Spreadsheet

L'atelier a maintenant des Préférences. Elles sont utilisées par les commandes Spreadsheet Importer et Spreadsheet Exporter.

Pull request #5073

Il est désormais possible de configurer les tables de configuration. De cette façon, on peut définir différents jeux de paramètres pour la même pièce.

Fait partie du Pull request #2862.

Les cellules peuvent désormais être liées à d'autres cellules de la même feuille de calcul ou d'une feuille différente.

Fait partie du Pull request #2862.

Autres améliorations de Spreadsheet

  • Dans le menu contextuel des lignes/colonnes, il est désormais possible de spécifier la position lors de l'insertion de lignes/colonnes. Pull request #4704.
  • 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.
  • 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.

Atelier TechDraw

Plus de 30 nouveaux outils, appelés Extensions, sont désormais disponibles. Ils offrent de nouvelles fonctionnalités cosmétiques pour améliorer les dessins.

Autres améliorations de TechDraw

  • Il est désormais possible de Copier et Déplacer des Vues entre de pages.
  • 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.
  • Un nouveau spécificateur de format %w a été ajouté pour afficher le nombre donné de chiffres après le point et supprimer les zéros de à la fin. Pull request #5401.
  • Le nouveau spécificateur de format %w est maintenant la valeur par défaut. La préférence de spécification de format a été déplacée de l'onglet Avancé à l'onglet Dimension. Pull request #6504.
  • Des hachures diagonales inversées ont été ajoutées pour l'outil Hachures géométriques. Pull request #6429.
  • Il existe une nouvelle option pour afficher une grille dans une page. Plusieurs préférences connexes ont été introduites. Pull request #6465.
  • L'affichage des unités dans les dimensions a été corrigé conformément aux normes. Le symbole du degré est toujours présent pour la valeur de la dimension et les tolérances, les autres unités n'apparaissent que si ShowUnits est défini. L'unité apparaît immédiatement après la valeur de la dimension sauf s'il y a une tolérance, alors elle apparaît après la tolérance. Pull request #6581

Web

Qt WebEngine est maintenant considéré comme l'option par défaut au lieu de Qt WebKit.

Ateliers externes

Remarque : 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.

A2plus

Plusieurs fonctions permettant de visualiser, d'inspecter et de modifier les contraintes existantes ont été ajoutées. Il est désormais possible de mettre en évidence les contraintes à l'aide d'une étiquette, de supprimer temporairement une contrainte ou d'exécuter le solveur uniquement pour une contrainte particulière.

Pour plus d'informations, voir la description du traitement des contraintes.

Assembly3

L'atelier Assembly3 est disponible (depuis mars 2022) par le biais du Gestionnaire des extensions. Cela permet d'installer et de gérer facilement les dépendances externes de l'atelier.

Assembly3 permet de créer des assemblages de corps différents contenus dans un seul fichier ou dans plusieurs documents en exploitant toute la puissance du système de liens de FreeCAD. Apprenez-en plus sur App Links dans cette présentation vidéo de Realthunder.

L'atelier Assembly3 utilise SolveSpace comme solveur.

Une documentation complète est disponible sur la page principale Assembly3 du wiki de FreeCAD ou sur le site GitHub de Realthunder wiki Assembly3.

Principales fonctionnalités :
  • Solveur dynamique/interactif : déplacez les pièces avec la souris pendant que le solveur contraint le mouvement.
  • Liens : utilisez une seule pièce plusieurs fois dans un assemblage.
  • Liens externes : permet d'utiliser des pièces provenant de documents externes.
  • Assemblages hiérarchiques : permet la création de sous-assemblages.
  • Gel des assemblages : les assemblages qui ne doivent pas rester dynamiques peuvent être exclus des calculs et sont considérés comme des géométries fixes par le solveur asm3.
  • Et bien plus encore.

Assembly4


Longueur différente d'une poutre comme variante.
Nouvelle fonctionnalité permettant d'ajouter des variantes. Il s'agit de liens vers une pièce avec des paramètres variables, ce qui signifie que vous pouvez insérer la même pièce plusieurs fois, et ajuster les paramètres de chaque instance. Pour plus d'informations, consultez ce fil du forum.

Un assemblage animé.
Cliquez sur l'image pour voir l'animation.
Les animations peuvent être exportées au format MP4 et GIF.

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 ancrables. (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).

Plot

  • Le module Plot a été retiré de l'atelier Plot puisqu'il est maintenant fourni par FreeCAD.

Ship

L'Atelier Ship est de nouveau opérationnel !

Compilation

Depuis cette version, FreeCAD ne peut être compilé qu'avec Qt 5.x et Python 3.x. La version de Python la moins bien supportée est 3.6.9 selon ce fil de discussion du forum.

Pour compiler FreeCAD voir les instructions pour Windows, Linux et MacOS.

Les systèmes d'exploitation pris en charge sont :

  • Windows 7, 8, 10 et 11
  • Linux Ubuntu Bionic Beaver (18.04) et Focal Fossa (20.04)
  • MacOS : 10.12 Sierra ou plus récent

Limitations connues

Windows 32 bits

Depuis FreeCAD 0.19, nous ne supportons plus officiellement Windows 32 bits. FreeCAD pourrait fonctionner sur ces systèmes, mais aucun support n'est donné.

Bureau distant sous Windows

Selon les capacités graphiques OpenGL d'un ordinateur, il se peut que l'on rencontre un plantage lors de l'exécution de FreeCAD via le bureau à distance. Pour résoudre ce problème, mettez à jour votre pilote OpenGL. Si cela ne vous aide pas :

  • Téléchargez cette bibliothèque OpenGL pour Windows 64 bits et extrayez-la.
  • Renommez le fichier DLL en opengl32sw.dll et copiez-le dans le sous-dossier bin du dossier d'installation de FreeCAD (écrasez la DLL existante).

MacOS : L'atelier Start affiche une page blanche

Si l'atelier Start n'affiche qu'une page blanche, vous devez activer l'option Utiliser le logiciel OpenGL dans le menu Édition → Préférences → Affichage.