Exporter un maillage précis depuis FreeCAD : tolérance de tessellation et poids du fichier

La commande FreeCAD « Créer un maillage à partir d’une forme » transforme une forme en objet maillage non paramétrique. La documentation décrit les réglages de déviation de surface, de déviation angulaire et de mode relatif; le code de FreeCAD 1.1.3 montre comment le champ angulaire du panneau est transmis à l’API. Cette page explique ces paramètres et propose une grille vide pour comparer des exports sur votre modèle, sans recommander une valeur universelle ni prétendre à un essai effectué.

La réponse courte

La commande FreeCAD de maillage à partir d’une forme crée un objet maillage non paramétrique. Pour le mailleur Standard, la documentation définit la déviation de surface comme un écart linéaire et la déviation angulaire comme un écart d’angle; le mode relatif multiplie la première valeur par la longueur du segment. Dans FreeCAD 1.1.3, le code convertit l’angle du panneau en radians avant l’appel API. Comparez les réglages sur votre modèle et notez le poids du fichier : les sources ne prescrivent aucune valeur d’impression.

Ce que règlent vraiment la déviation de surface et la déviation angulaire

La commande « Créer un maillage à partir d’une forme », dans l’atelier Mesh, crée un objet maillage non paramétrique depuis un objet shape. La documentation dit qu’elle peut s’appliquer à tout objet possédant une forme, y compris des objets PartDesign. Le panneau Tessellation propose un onglet par mailleur. Les définitions ci-dessous concernent les réglages du mailleur Standard, pas une tolérance d’impression.

La déviation de surface est la déviation linéaire maximale d’une section de maillage par rapport à la surface de l’objet. La déviation angulaire est la déviation angulaire maximale d’une section à la suivante; le réglage s’applique au maillage des surfaces courbes. Ces critères décrivent la tessellation, pas la dimension d’une pièce imprimée.

Les paramètres correspondent à des critères distincts, et la documentation ne dit pas qu’un réglage compense l’autre. Pour un modèle donné, comparez les maillages et examinez les zones qui comptent pour votre conception. La page FreeCAD pour l’impression 3D présente le logiciel; ici, le sujet reste la tessellation.

Le mode relatif change le sens du chiffre saisi

Quand « Déviation relative de surface » est cochée, la déviation linéaire maximale d’un segment est la valeur de déviation de surface multipliée par la longueur de ce segment. La valeur saisie agit donc comme un facteur relatif au segment plutôt que comme la même distance pour tous les segments. En mode non relatif, l’option n’applique pas ce facteur. Vérifiez l’état de la case avant de comparer des exports.

La documentation définit le calcul relatif; elle ne recommande pas le mode relatif pour les grandes faces, les figurines ou les pièces d’emboîtement. Choisissez les cas à comparer selon votre modèle et notez si la case est activée. Une grille vierge permet d’enregistrer les paramètres et le poids du fichier sans présenter les résultats comme des valeurs universelles.

Dans Tessellation.cpp de FreeCAD 1.1.3, les valeurs LinearDeflection, AngularDeflection et RelativeLinearDeflection sont lues et enregistrées dans les préférences Standard de l’atelier Mesh. Le code montre donc qu’elles peuvent être mémorisées entre sessions dans cette version. Cela ne prouve pas qu’un changement soit la cause d’une différence de taille observée sur un autre projet.

Degrés à l'écran, radians dans le script

Dans le code GUI de FreeCAD 1.1.3, la valeur du champ de déviation angulaire est convertie en radians avant de former l’appel meshFromShape. Cette conversion est importante si vous reproduisez ce réglage via l’API : l’unité attendue ne doit pas être supposée identique à l’affichage du panneau. Le dépôt distingue explicitement ces deux étapes pour la version 1.1.3.

Le code AppMeshPartPy.cpp de FreeCAD 1.1.3 documente une signature meshFromShape avec Shape, LinearDeflection, AngularDeflection, Relative, Segments et GroupColors; elle donne AngularDeflection=0.5 et Relative=False par défaut dans cette signature. Si vous utilisez une autre signature ou version, vérifiez-la dans le code correspondant avant de transposer des arguments. Il ne s’agit pas d’une valeur recommandée pour l’impression.

AppMeshPartPy.cpp présente aussi plusieurs signatures, dont MaxLength, MaxArea, LocalLength et Deflection; des signatures supplémentaires existent si FreeCAD est compilé avec Netgen. La documentation indique que la signature sélectionne le mailleur. Pour comparer un export graphique et un script, consignez la version, les arguments nommés, l’unité et l’état Relative; le guide STL ou 3MF traite séparément des formats.

Comparer tolérance et poids du fichier sur votre propre modèle

La commande étudiée crée d’abord un objet maillage dans le document. La documentation signale aussi que Std Export peut exporter directement une forme dans un format maillé; ne présumez pas que tous les parcours d’export utilisent les mêmes réglages. Pour votre comparaison, choisissez un parcours et conservez-le : objet maillage créé puis enregistré, ou export direct à examiner dans votre version. Notez le modèle, le mailleur, les paramètres et le poids de chaque fichier obtenu. Le tableau est un relevé proposé, sans résultats produits par le site.

Pour comparer, conservez le même modèle et modifiez un seul paramètre à la fois. Notez séparément déviation de surface, déviation angulaire et mode relatif, puis le poids du fichier exporté. Vous pouvez choisir les variations qui répondent à votre question; la page ne propose aucun incrément ou ratio recommandé. Utilisez la même unité de document et consignez la version du logiciel.

Inspectez le maillage exporté dans le logiciel destinataire, en zoomant sur les détails de votre choix. Notez ce que vous observez et le poids du fichier; ne transformez pas une préférence visuelle en mesure de précision dimensionnelle. Le tableau est une grille de relevé, pas un résultat mesuré. La disponibilité d’un comptage de facettes dépend de la version et de l’objet maillage.

Mefisto, Netgen, Gmsh : quand les autres mailleurs ont un intérêt

La documentation décrit plusieurs onglets en plus de Standard. Pour Mefisto, une longueur d’arête maximale plus petite donne un maillage plus fin; zéro ou la case décochée produit un maillage très grossier. Le bouton Estimate propose une valeur que la documentation juge peu fiable si plusieurs objets sont sélectionnés.

La documentation présente les niveaux Netgen, les paramètres du mode utilisateur et les cases d’optimisation, d’éléments de second ordre et de faces quadrangulaires. AppMeshPartPy.cpp précise que certaines signatures ne sont disponibles que lorsque FreeCAD a été compilé avec Netgen. Vérifiez la configuration réelle de votre build avant de vous appuyer sur ces options.

La page FreeCAD indique que, sous Linux, le module externe Gmsh est requis pour ce mailleur; elle décrit un chemin d’exécutable et l’action Kill si le calcul prend trop longtemps. Ces notes ne permettent pas de classer les mailleurs par usage général. Choisissez l’onglet dont vous comprenez les paramètres et vérifiez qu’il existe dans votre installation.

Tolérance de maillage et tolérance d'imprimante : deux sujets distincts

La déviation de tessellation décrit la représentation maillée de la forme source; elle n’est pas une mesure de la dimension d’une pièce imprimée. Si une pièce finale ne correspond pas à une cote, séparez le contrôle du maillage et celui de l’impression. La page précision dimensionnelle traite ce second sujet; la tessellation seule ne permet pas d’en diagnostiquer la cause.

Un écart visuel dans le maillage peut justifier de revoir les paramètres de tessellation; la documentation dit que les déflexions contrôlent la représentation de la surface. Cela ne prouve pas qu’une déviation soit la cause unique d’un défaut observé après impression. Comparez d’abord le maillage exporté et la pièce obtenue avant de conclure.

Gardez avec vos essais le nom de la commande, la version, les valeurs, le mode relatif et les unités indiquées dans l’interface ou la documentation applicable. Séparez ces informations des dimensions affichées après import. Le guide STL sans unité aide à contrôler ce second point. Une incohérence d’échelle demande une vérification du flux d’export et d’import, avant de conclure sur la géométrie du modèle ou l’impression.

Grille vierge pour comparer vos essais de tessellation sur une même pièce

EssaiDéviation de surfaceDéviation angulaireMode relatifÀ relever
Réglages mémorisés de FreeCADValeur affichée par le panneauValeur affichée par le panneauÉtat de la caseDécompte si disponible, poids du fichier, aspect de la zone choisie dans le slicer
Déviation de surface réduiteVotre valeur plus petiteInchangéeInchangéDécompte si disponible, poids du fichier, aspect du trou
Déviation angulaire réduiteInchangéeVotre valeur plus petiteInchangéDécompte si disponible, poids du fichier, aspect de la zone choisie
Mode relatif basculéInchangéeInchangéeInverséDécompte si disponible, poids du fichier, différence entre grandes faces et petits détails
Mefisto, longueur d'arêteSans objetSans objetSans objetMaillage observé et poids de l’export, si vous le mesurez

Questions fréquentes

Quelle différence entre déviation de surface et déviation angulaire dans FreeCAD ?

La documentation distingue la déviation linéaire maximale par rapport à la surface de l’objet et l’écart angulaire entre une section de maillage et la suivante. Elle précise que le réglage angulaire s’utilise pour les surfaces courbes. Ces définitions ne donnent pas un nombre de facettes ni une tolérance d’impression.

À quoi sert la case Déviation relative de surface ?

Lorsqu’elle est cochée, la déviation linéaire maximale d’un segment est la valeur de surface multipliée par la longueur du segment. La documentation ne présente pas ce mode comme plus fin ou plus efficace dans tous les cas.

Pourquoi mon script donne un maillage différent du panneau graphique ?

Dans le code GUI de FreeCAD 1.1.3, la valeur du champ angulaire passe par toRadians avant l’appel meshFromShape. Comparez aussi les arguments AngularDeflection et Relative à l’état du panneau. Cette observation est spécifique au code de la version 1.1.3.

Existe-t-il un réglage de tessellation universel pour l'impression 3D ?

Les pages FreeCAD décrivent les réglages, pas une valeur recommandée. Comparez plusieurs exports de votre propre modèle et consignez version, paramètres, unité et poids du fichier; le tableau fournit des cases à remplir, pas des résultats déjà mesurés.

Un maillage plus fin donne-t-il une pièce plus précise ?

Un maillage décrit une représentation de la forme; les sources ne montrent pas qu’un réglage donné garantisse la dimension d’une pièce imprimée. Vérifiez séparément le fichier exporté et la pièce obtenue. La tessellation n’identifie pas, à elle seule, la cause d’un écart final.

Sources et limites

  • FreeCAD — Mesh FromPartShape, dépôt documentaire archivé
  • FreeCAD 1.1.3 — API meshFromShape
  • FreeCAD 1.1.3 — Panneau Tessellation

Nous organisons la documentation des fabricants et des communautés ; nous n’avons pas mesuré ces produits nous-mêmes. La notice de votre modèle exact prime sur ces explications générales.

Votre prochaine étape