FreeCAD 1.0

Posté par  . Édité par Luc-Skywalker, BAud, ElectronLibre63, Benoît Sibaud, cli345, rockn, palm123, FrancoisA30, C138, Arkem, Jona, Florent Zara et gUI. Modéré par Florent Zara. Licence CC By‑SA.
Étiquettes :
71
20
nov.
2024
Technologie

FreeCAD est sorti le 18 novembre 2024 en version 1.0 (voir l'annonce officielle et sa vidéo associée). Cette sortie est marquée par une amélioration majeure : l'atténuation du problème de dénomination topologique.

Nouveau logo FreeCAD

Sommaire

La dernière dépêche sur FreeCAD remonte à avril 2021 pour la sortie de la version 0.19. Depuis, il y a eu les versions 0.20 (juin 2022) et 0.21 (août 2023). Cette version 1.0 a porté le nom de 0.22 pendant son développement.

Qu'est-ce que FreeCAD ?

Exemple 1 utilisation

Extrait de wiki.freecad.org :
FreeCAD est un modeleur paramétrique de CAO 3D open source sous licence LGPL. FreeCAD est destiné à l'ingénierie mécanique et à la conception de produits mais — étant très générique — il s'adapte également à une gamme plus large d'utilisations autour de l'ingénierie, telles que l'architecture, l'analyse par éléments finis, l'impression 3D et d'autres tâches.

FreeCAD propose des outils similaires à CATIA, SolidWorks, Solid Edge ou Revit et entre donc également dans la catégorie CAO, GCVP, CFAO, IAO et BIM. Il s'agit d'un modélisateur paramétrique basé sur les caractéristiques d'une architecture logicielle modulaire qui permet de fournir des fonctionnalités supplémentaires sans modifier le système de base.

FreeCAD est aussi multiplateforme. Il fonctionne sous Windows, Linux/Unix et macOS avec la même apparence et les mêmes fonctionnalités sous toutes les plateformes.

Historique

La toute première version de FreeCAD est sortie en 2002. FreeCAD est développé en C++, Qt et Python et son cœur repose sur les bibliothèques OpenCASCADE (ou OCCT) spécialisées dans la CAO.

Son développement est assuré par un large panel de contributeurs : certains sont historiques, d'autres sont spécialisés sur un aspect particulier et beaucoup sont plus ou moins occasionnels.

Les versions se sont enchaînées à un rythme quasi annuel, apportant moult améliorations et fonctionnalités nouvelles.

En 2021, quelques contributeurs historiques fondent la FreeCAD Project Association (FPA) qui est un organisme indépendant à but non lucratif pour collecter des dons et apporter un soutien au développement du projet.
Ce soutien passe notamment par leur programme "FreeCAD Grant Program", qui permet d'embaucher ou de récompenser des personnes pour des projets spécifiques. Ce programme a un budget de 50k$ pour l'année 2024. A titre d'exemple récent, 500$ ont été octroyés pour une étude sur les runners CI de Github, 1000$ pour un gros travail de correction de bugs, et enfin 500$ pour la création d'une vidéo sur les nouvelles fonctionnalités de cette version 1.0.

FreeCAD bénéficie d'une communauté impliquée permettant notamment d'avoir une documentation complète, à jour et traduite dans de nombreuses langues.

Le problème de dénomination topologique

C'était un des points noirs de FreeCAD jusqu'à cette version 1.0.
Il faut imaginer que dans ce logiciel, la modélisation d'une pièce (dans le sens objet physique) passe par une suite d'opérations mathématiques et géométriques en définissant à chaque fois des contraintes ou des paramètres. Une opération est par exemple la création d'un trou borgne de 5 mm sur telle face à 10 mm des bords haut et gauche. Un autre exemple est d'ajouter une « languette » sur telle face cylindrique. Ou bien d'ajouter un chanfrein de 2 mm sur telle arête, etc.

Ainsi, petit à petit, la pièce modélisée se construit, prend forme, se détaille et se complexifie.

Cet historique de ces opérations successives est toujours présent et modifiable. À tout moment, il est possible de modifier une des étapes intermédiaires.

D'un point de vue technique, vous aurez sans doute compris que chaque opération s'applique à un élément précis et existant de la pièce à ce moment-là (une face ou une arête par exemple). Dans FreeCAD ces éléments ont tous un identifiant unique (Face6, Edge9, etc.), continu et incrémental. Si l'objet a 13 faces à une des étapes, les faces seront numérotées de Face1 à Face13. Chaque opération est rattachée à l'identifiant de l'élément (Face5 par exemple).

Et le problème se situe à ce niveau : lors d'une modification d'une étape intermédiaire, il arrive souvent que cela change la géométrie globale de la pièce et donc que les nombres de faces ou d'arêtes augmentent ou diminuent. Et FreeCAD réattribue alors ces identifiants uniques aux différents éléments.
Ainsi, si l'objet passe de 13 à 11 faces, c'est l'ensemble des faces qui vont recevoir un nouvel identifiant dans la plage Face1 à Face11, avec un très fort risque qu'une face, pourtant non touchée par la modification, porte un identifiant différent.

Et vous voyez le problème arriver : si une des opérations suivantes dans l'historique était de faire un perçage sur la Face6 qui est maintenant devenue la Face3… Toute la modélisation part en vrille.

Ce problème de dénomination topologique est documenté sur le wiki de FreeCAD : problème de dénomination topologique.

Pour éviter cela, il était conseillé de suivre un ensemble de bonnes pratiques de modélisation sous FreeCAD : Édition de fonctions. Il faudra certainement suivre l'évolution de cette page avec cette sortie.

Cette version 1.0 marque donc l'intégration de codes correctifs de cette problématique. Les notes de version indiquent tout de même que tout n'est pas résolu, et qu'il y aura d'autres améliorations dans les prochaines versions. Cette petite vidéo en anglais vous montre la différence de comportement entre la version 0.21 et 0.22dev (qui a servi de base à la 1.0).

Les autres améliorations

Un outil d'assemblage par défaut avec solveur dynamique

Le terme assemblage désigne la fonctionnalité de regrouper plusieurs éléments afin d'obtenir un objet fonctionnel. Ce peut être, par exemple, une boîte constituée d'un couvercle sur charnières maintenues par des vis avec des rangements amovibles à l'intérieur. Ou bien un moteur thermique avec ses carters, vilebrequin, bielles, pistons, soupapes, etc. Il est parfois utile de pouvoir fournir des indications de positionnement et/ou de liberté des éléments entre eux, et de pouvoir animer le tout.
Ces opérations d'assemblage n'étaient pas intégrées dans FreeCAD avant la version 1.0. Elles étaient néanmoins possibles grâce aux ateliers. Plusieurs ont été créés pour cela avec chacun leurs spécificités et leurs approches mais aussi une incompatibilité entre eux : A2plus, Assembly3 ou Assembly4.
Cette version 1.0 propose un nouvel atelier mais intégré par défaut. Il a été mis au point par la société Ondsel (voir plus bas). Il est encore jeune, et il est encore trop tôt pour savoir s'il finira par s'imposer par rapport à l'existant déjà en place. Un tutoriel concernant l'atelier d'assemblage est d'ores et déjà disponible pour une introduction à cette nouvelle fonctionnalité de la v1.0.

L'atelier sketcher amélioré

Cet atelier permet de dessiner les esquisses techniques utilisées dans la conception mécanique. C'est dans celui-ci que sont dessinés les « plans 2D » avec les cotes et les contraintes dimensionnelles et spatiales. Cette version apporte un nombre conséquent d'améliorations et de nouvelles fonctionnalités rendant son utilisation plus facile, plus puissante et plus rapide. Le mieux est de regarder les notes de version animées.

Les ateliers Arch et BIM sont morts, vive la prise en charge native du format ouvert IFC

Si le titre est cryptique, c'est que l'on parle de BTP et d'outils destinés aux équipes de Maîtrise d'Œuvre impliquées dans la conception d'une opération construction (Architectes, Bureaux d'Études). Comme ce n'est pas forcément le lot commun des visiteurs de LinuxFr.org, résumons la situation:

  • L'atelier Arch, pour Architecture, exploite depuis longtemps les capacités de création 3D de FreeCAD pour dessiner facilement, fondations, murs, planchers, fenêtres, portes etc. Cet atelier se basait sur le format natif des fichiers FreeCAD, *.FcStd.

  • Dans l'atelier BIM (pour Building Information Model <= l'article Wikipedia_FR est bien écrit pour qui veut comprendre l'essentiel), on retrouve un certain nombre d'outils de dessin et de création d'objets qui s'avèrent redondants pour certains avec ceux de l'outil Arch tout en implémentant les paradigmes bien plus vastes qu'induit l'approche BIM d'un projet de construction <=> pas uniquement de la géométrie, mais aussi du prix, des données mécaniques, physiques, des fiches produit, du planning …

  • L'approche BIM tend à se généraliser dès lors que la complexité et le coût du projet le justifient. Elle repose (en théorie) sur un format d'échange IFC (pour Industry Foundation Class).
    Il est ouvert et au format texte.
    Oui avec vim, c'est possible de bidouiller ;)
    mais un fichier IFC fait rapidement quelques centaines de Mo voire quelques Go …

L'Association "Building Smart" en définit les caractéristiques. Tous les logiciels sur le marché savent ouvrir et exporter dans ce format, à la norme IFC 2.3 ad minima et IFC 4.2 voire 4.3 pour les up to date.

L'atelier BIM de FreeCAD utilisait jusqu'à présent IfcOpenShell, une application tierce Open Source pour convertir un fichier du format *.ifc vers du *.FcStd en passant (sans doute) par du OpenScad dans le processus.

Titre de l'image
Une image qui devrait parler au LinuxFrien (!) pour la classe IFC Material-Constituent-Set,

Pour la version 1.0 de FreeCAD, Yorik Van Havre, développeur historique de FreeCAD, (par ailleurs, architecte et Président la FreeCAD Project Association) a entrepris de fusionner ces deux ateliers, d'en faire une fonctionnalité native de FreeCAD, c'est-à-dire qui se passe du vaillant IfcOpenShell (grâce notamment au travail fait sur Blender-Bim) pour que FreeCAD puisse ouvrir et enregistrer directement au format IFC sans conversion inutile.

L'atelier FEM

Cet atelier d'analyse par éléments finis comporte également des améliorations considérées comme majeures avec cette version 1.0, détaillées dans un article de blog sur l'atelier FEM de FreeCAD.

Les avancées majeures sont liées à la prise en charge de fonctionnalités de CalculiX, un des solveurs utilisés par cet atelier : symétrie cyclique, analyses 2D et contraintes de corps rigide.

Le reste

Comme à chaque nouvelle version, beaucoup de choses ont été apportées, que ce soit dans l'interface, ou dans la plupart des ateliers intégrés. Les notes de version de la v1.0, comme très souvent détaillées en images, permettent de voir l'évolution de ce logiciel.

FreeCAD a également annoncé son nouveau logo, choisi après un appel à concourir auprès de la communauté (lien). Le logo en SVG est disponible sur cette page.

L'essai commercial d'Ondsel

Outre la création en 2021 de l'association FPA (voir plus haut), d'autres développeurs, notamment Brad Collette, mainteneur de longue date de l'atelier Path et auteur de deux livres sur FreeCAD, ont créé début 2023 la société américaine ONDSEL sous la forme d'une Public Benefit Corporation (PBC) qui pourrait se traduire par « une entreprise d'intérêt pour la société ». Malheureusement, après environ 2 ans, Brad Collette informe de l'arrêt de la société ONDSEL, faute d'avoir trouvé un marché.

La société voulait s'appuyer sur FreeCAD pour « apporter des fonctionnalités commerciales qui rendent FreeCAD plus utile aux utilisateurs commerciaux ». (Source)

Pour cela, ONDSEL a produit sa propre version de FreeCAD avec ses propres choix esthétiques et ergonomiques, et a fourni un cloud pour simplifier le travail en équipe et le partage.
À noter qu'ONDSEL indiquait soumettre ses améliorations à FreeCAD pour intégration et que son cloud était disponible sous forme de module dans FreeCAD. Ces améliorations se retrouvent dans cette version 1.0 de FreeCAD, notamment le nouvel outil intégré d'assemblage ainsi que les très nombreuses nouvelles fonctionnalités de l'atelier Sketcher.

La société ONDSEL avait détaillé sa relation avec le projet FreeCAD indiquant notamment leur mode de collaboration. Ils avaient également un blog en anglais intéressant, où ils abordent plusieurs thématiques, notamment sur l'évolution de CATIA ou bien la liste des nouveautés agrémentée de nombreuses animations.

Dans l'annonce de cet arrêt, Brad Collette revient également sur ce qu'ils ont apporté au projet FreeCAD. Tout ce qu'ils ont développé était en open source et déjà intégré pour la plupart à FreeCAD. Les fondateurs d'ONDSEL continueront de contribuer au projet directement.

Aller plus loin

  • # IfcOpenShell encore là

    Posté par  . Évalué à 4 (+3/-0).

    Salut, il y a une méprise sur la partie BIM : l'extension NativeIFC se base sur IfcOpenShell, comme Bonsai (ex-blender bim). La simplification principale se fait en supprimant la traduction intermédiaire dans le modèle d'objets propre à freecad.

    • [^] # Re: IfcOpenShell encore là

      Posté par  . Évalué à 4 (+2/-0).

      Oui, c'est exact, je me suis un peu emmêlé les pinceaux lors de la rédaction du paragraphe.

      La simplification principale se fait en supprimant la traduction intermédiaire dans le modèle d'objets propre à freecad.

      C'est bien là l'essentiel.

      Bon, c'est pas tout ça, il faut que je vire ma RC2 et que j'installe la 1.0.0

      "Si tous les cons volaient, il ferait nuit" F. Dard

  • # Topology naming

    Posté par  . Évalué à 8 (+7/-0).

    Pour ceux que ça intéresse, Realthunder a écrit un long article qui explique la nouvelle méthodologie de nomage des éléments qui résoud une grande partie des situations d'instabilité des modèles.

    https://github.com/realthunder/FreeCAD_assembly3/wiki/Topological-Naming

    • [^] # Re: Topology naming

      Posté par  (site web personnel) . Évalué à 6 (+5/-1).

      moui, nommage des éléments ça perdrait moins de monde que nommage topologique qui perd 90% des utilisateurs, même ceux ayant fait du dessin industriel en dehors d'une prépa Maths Sup/Spé…

  • # Version "tunée" commerciale Ondsel terminée

    Posté par  (site web personnel) . Évalué à 5 (+3/-0).

    J'ai appris l'existence de cette boite, qui semblait distribuer une version tunée de FreeCad, par l'annonce de sa fermeture: https://ondsel.com/blog/goodbye/

    A priori ils ont des contributeurs à FreeCad, qui eux vont continuer de leur côté.

    Votez les 30 juin et 7 juillet, en connaissance de cause. http://www.pointal.net/VotesDeputesRN

    • [^] # Re: Version "tunée" commerciale Ondsel terminée

      Posté par  (site web personnel) . Évalué à 3 (+1/-0). Dernière modification le 21 novembre 2024 à 11:05.

      A priori ils ont des contributeurs à FreeCad, qui eux vont continuer de leur côté.

      moui c'est ballot, en plus ils ont produit une bibliothèque libre utilisable o_O va comprendre le fonctionnement d'une entreprise qui se coole (on revient en 69 ?! je n'étais même pas né ! Au moins ils auront évité les années disco /o\)

      bon, ça se backporte en Mageia 9, à voir si c'est rendu dispo de base (une seule lib', si ça fonctionne ça va le faire àmha). Je regarderai ensuite côté Debian pour notre fablab :-)

      • [^] # Re: Version "tunée" commerciale Ondsel terminée

        Posté par  (site web personnel) . Évalué à 7 (+5/-0).

        Le coeur de FreeCAD, c'est OpenCASCADE de mémoire et c'était la base qu'avait réalisé Matra Datavision pour sa nouvelle version de CAO Euclid qui devait révolutionner le domaine (à l'époque Euclid était en compétition avec Catia, c'était la concurrence entre PSA et Renault…). Bref, tout cela date d'avant 2000.

        Je rappelle juste ces faits pour rappeler qu'il y a eu beaucoup d'heure d'ingénieur à la base payé par des entreprises ayant pignon sur rue. La chute d'Euclid n'a pas été sans créer quelques remous…

        • [^] # Re: Version "tunée" commerciale Ondsel terminée

          Posté par  (site web personnel) . Évalué à 5 (+3/-0).

          CAO Euclid

          moui je fais partie des rares personnes l'ayant utilisé sur un Bull à l'époque (genre 1993), paye ta gestion des contraintes. La station Irix à côté avait une carte graphique permettant d'animer de la 3D en temps réel, contrairement au rendu sur le Bull qui prenait 2 à 3 min /o\

          À chaque fois que je regarde BRL-CAD payé par le DoD (et donc — logiquement — proposé en libre, je me rappelle de ce genre de choses :p
          bizarrement, il n'est pas empaqueté par les distributions Linux :/

          Catia c'est du Dassault, donc mort pour le libre, c'est pas du tout leur état d'esprit (formés à l'Inria faut croire).

    • [^] # Re: Version "tunée" commerciale Ondsel terminée

      Posté par  . Évalué à 3 (+2/-0).

      Pas tunée, c'est la même build que le code source officiel. La différence étant de fournir des addons par défaut ainsi qu'une configuration de l'interface plus orientée UI/UX (ce que tu peux faire dans FreeCAD 1.0).

      Ils ont aussi fait une sorte de thingiverse pour FreeCAD, appelé Lens, malheureusement, trop peu fourni pour que ça prenne (ce genre de projet nécessite des années pour que ça "tienne", difficile pour une entreprise commerciale).

      Bref, c'est peut être un peu prématuré pour l'instant.

      • [^] # Re: Version "tunée" commerciale Ondsel terminée

        Posté par  (site web personnel) . Évalué à 4 (+2/-0).

        (ce genre de projet nécessite des années pour que ça "tienne", difficile pour une entreprise commerciale).

        euh bin sur https://www.thingiverse.com/ tu trouves pas mal des modèles STL de prusa https://www.printables.com/ (la licence le permet)
        tu as aussi des sites comme https://free3d.com/fr/
        dommage que le .3mf n'ait pas plus pris : il conserve mieux la source 3D pour pouvoir l'adapter

        c'est très utile pour enseigner l'utilisation d'une imprimante 3D :

        • d'abord comprendre les optimisations de l'impression 3D (ne pas passer 10 h à imprimer une pièce de 3 cm x 3 cm x 10 cm…)
        • ensuite se baser sur des modèles existants pour réussir à modéliser de bout en bout

        Freecad 1.0 va j'espère me permettre de mettre à la rue les Fusion, Autocad, solidworks, sketchup et rhinocéros qui ont choisi d'être non libres (et défaillants sous Linux).

  • # Pratique même en surface

    Posté par  (site web personnel) . Évalué à 6 (+4/-0).

    Tiens j'ai récemment voulu me fabriquer un abri à poubelles et je me suis dit que c'était une bonne occasion de découvrir FreeCAD. Bon ben ce n'est pas aussi impressionnant que sur les captures qu'on voit sur le web.

    J'ai pas mal galéré à placer mes planches et à biseauter des éléments, et quand j'ai voulu changer mes tasseaux de 70 pour du 50 alors que j'avais déjà tout placé, j'ai abandonné. Pas de charnières pour les couvercles ni pour les portes, et pas de vérins pour les couvercles non-plus.

    Cela dit même si le modèle n'est pas fidèle au produit fini ça m'a quand même bien aidé à me projeter, à visualiser l'assemblage et à décompter les pièces. Je pense que ça m'aurait pris beaucoup trop de temps de peaufiner les détails au millimètre (genre mettre des pieds pour que ça ne soit pas posé à même le sol ou laisser un peu de marge en haut et en bas des portes).

    Comme quoi, même quand on n'y connaît rien, c'est bien pratique.

    • [^] # Re: Pratique même en surface

      Posté par  (site web personnel) . Évalué à 9 (+8/-0).

      Pas mal pour une première réalisation ! Ça parait simple ce genre de projet mais pour qu'il soit bien paramétrique (par exemple pour que tout s'agence bien quand on change la section des tasseaux) c'est vite plus technique.

      Pour améliorer l'affichage :
      menu Édition>Préférences

      • Affichage>Anticrénelage : MSAA 8X (valeur par défaut depuis cette v1)
      • Part/Part Design>Vue des formes>Déviation angulaire maximale : 5° (valeur à 28.5° par défaut, améliore l'affichage des courbes)

      Et Menu Affichage>Vue en perspective (pour faire une image plus "réaliste").

      Image d'un pièce avec les paramètres cité ci dessus :
      9883D from studycadcam

    • [^] # Re: Pratique même en surface

      Posté par  . Évalué à 3 (+2/-0).

      Bonjour,

      On trouve pas mal de choses sur L'Air du Bois, un site collaboratif sur le travail du bois.
      FreeCAD pour concevoir en bois

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.