Macro MeshResetOrigin/fr

Generic macro icon {{{Name}}}

Description
Regroupe les transformations de maillage en réinitialisant l'origine de chaque maillage sélectionné à l'origine du document, sans déplacer la géométrie. Idéal après l'utilisation d'un outil d'alignement (par exemple, Mesh Alignment), pour intégrer l'alignement dans les coordonnées des sommets au lieu de s'appuyer sur un décalage de placement ou un conteneur parent.

Version macro : 0.2
Date dernière modification : 09/06/2026
Version FreeCAD : 1.1.1 (<1.0 devrait fonctionner mais n'a pas été testé)
Auteur
[[User:{{{Author}}}|{{{Author}}}]]
Téléchargement
None
Liens
Version Macro
0.2
Dernière modification
09/06/2026
Version(s) FreeCAD
1.1.1 (<1.0 devrait fonctionner mais n'a pas été testé)
Raccourci clavier
None
Voir aussi
None

Description

Macro MeshResetOrigin est une macro qui consolide les transformations des maillages en réinitialisant l'origine de chaque maillage sélectionné à l'origine du document, sans déplacer la géométrie. Elle est destinée à être utilisée après une opération d’alignement (par exemple, Édition → Aligner… sur des objets de Mesh), afin d’intégrer l’alignement obtenu dans les coordonnées du maillage plutôt que de le conserver sous forme de décalage du placement ou de s’appuyer sur un conteneur parent.

Chaque élément Mesh::Feature sélectionné est traité comme suit :

  1. Lire son placement en cours (la transformation qui le positionne dans l'espace mondial).
  2. Appliquer cette matrice de placement à une copie du maillage, afin que chaque sommet se déplace vers la position qu'il occupe actuellement dans l'espace mondial.
  3. Réaffecter le maillage transformé et réinitialiser la propriété « Placement » à l'identité (0,0,0 / 0°).

Le maillage ne bouge pas à l'écran ; seule son origine coïncide désormais avec l'origine du monde, puisque la transformation est désormais associée à la géométrie du maillage plutôt qu'à la propriété « Placement ». L'ensemble de l'opération est regroupé dans une seule transaction d'annulation, de sorte qu'un seul clic sur Annuler rétablit la situation initiale.

Les objets qui ne sont pas des maillages, ainsi que les maillages situés à l'intérieur d'un conteneur parent (par exemple App::Part), sont ignorés et un avertissement s'affiche dans la vue rapport. Les maillages déjà situés à l'origine ne sont pas modifiés.

Emplacement

Atelier Mesh (macro externe/facultative).

Utilisation

  1. Sélectionnez un ou plusieurs objets « Mesh » dans l'arborescence ou dans la vue 3D.
  2. Exécutez la macro.
  3. L'origine de chaque maillage est réinitialisée à l'origine du monde ; la géométrie ne se déplace pas.
  4. Consultez la vue rapport pour obtenir un récapitulatif par maillage (réinitialisé / déjà à l'origine / ignoré).

Si un maillage se trouve à l'intérieur d'un App::Part, faites-le d'abord glisser hors du conteneur, puis exécutez la macro.

Exemple

Une flux de travail classique consiste à aligner un maillage issu d'un scan 3D sur les axes du monde afin de faciliter son utilisation :

  1. Importez un maillage issu d'un scan 3D.
  2. Créez (ou réutilisez) une géométrie de référence sur laquelle aligner le maillage, par exemple un plan.
  3. Sélectionnez à la fois l'objet de référence et le maillage, puis allez dans Édition → Aligner….
  4. Sélectionnez au moins 3 points sur la face du maillage à aplatir, puis au moins 3 points sur la face de référence avec laquelle l'aligner, puis cliquez sur Aligner.
  5. Le maillage est désormais aligné, mais son placement et sa transformation ne sont plus faciles à manipuler.
  6. Exécutez MeshResetOrigin sur le maillage : celui-ci ne se déplace pas, mais son origine est désormais alignée avec l'espace mondial.
  7. Répétez l'opération autant de fois que nécessaire pour affiner l'alignement — cette méthode est particulièrement utile lorsque vous travaillez avec des maillages issus de numérisations 3D ou des fichiers STL d'imprimantes 3D.

Un guide illustré étape par étape est disponible sur le dépôt GitHub.

Remarques

Licence

Sous licence LGPL v2.

Téléchargement


Temporary code for external macro link. Do not use this code. This code is used exclusively by Addon Manager. Link for optional manual installation: Macro


# This code is copied instead of the original macro code
# to guide the user to the online download page.
# Use it if the code of the macro is larger than 64 KB and cannot be included in the wiki
# or if the RAW code URL is somewhere else in the wiki.

from PySide import QtGui, QtCore

diag = QtGui.QMessageBox(QtGui.QMessageBox.Information,
    "Information",
    "This macro must be downloaded from this link\n"
    "\n"
    "https://raw.githubusercontent.com/de-seingalt/MeshResetOrigin/main/MeshResetOrigin.FCMacro" + "\n"
    "\n"
    "Quit this window to access the download page")

diag.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)
diag.setWindowModality(QtCore.Qt.ApplicationModal)
diag.exec_()

import webbrowser 
webbrowser.open("https://raw.githubusercontent.com/de-seingalt/MeshResetOrigin/main/MeshResetOrigin.FCMacro")