Macro StraightenObject/fr

Contexte
Cette macro a été écrite principalement pour réaligner les objets importés (par exemple STEP) avec les principaux plans/axes de FreeCAD.

Utilisation
Fonctionnellement, la macro utilisera un ou les deux éléments de référence suivants pour redresser (faire pivoter et déplacer) le ou les objets:
 * Face: la face sélectionnée sera définie coplanaire avec le plan XY, sa masse centrale étant définie à l'origine
 * Arête (ou 2 sommets): l'arête sélectionnée sera alignée avec l'axe Y

Pour utiliser la macro, sélectionnez le ou les éléments de référence, éventuellement d'autres objets, puis exécutez la macro. Si vous souhaitez aligner votre objet avec un autre plan/axe, utilisez la macro puis la fonction Transformer de FreeCAD. Voir le chapitre "Détails" pour la sélection multi-objets.

Installation
La macro est disponible via Addon Manager. Le code est fourni sur cette page pour plus de commodité au cas où le système utilisateur n'aurait pas git-python. Bien qu'elle soit à jour, la dernière version est toujours disponible sur FreeCAD-macro repository

Pour des explications plus détaillées, consultez la page Comment installer les macros.

Détails
Ci-dessous un tableau présentant les différents cas traités par la macro:

La macro effectuera les vérifications suivantes:
 * Si la face de référence est perpendiculaire au bord de référence, ce dernier sera ignoré (notification d'avertissement dans la barre d'état)
 * Si le visage de référence n'est pas plat, un résultat étrange peut se produire (notification d'avertissement dans la barre d'état)

Lorsque vous sélectionnez plusieurs objets, la macro proposera 2 options pour appliquer le redressement:
 * Parent: la macro essaiera de trouver un parent commun à tous les objets sélectionnés:
 * Si personne n'est trouvé, la macro échoue avec une notification d'erreur dans la barre d'état
 * Si un ou plusieurs sont trouvés, la transformation est appliquée sur la hiérarchiquement inférieure
 * Multiple: la transformation est appliquée séparément sur chaque objet sélectionné

À compléter avec un exemple d'image

Forum discussion
Pour tout commentaire (bug, demande de fonctionnalité, commentaires, ...), merci d'utiliser ce fil de discussion : https://forum.freecadweb.org/viewtopic.php?f=22&t=35191

Limitations

 * Les éléments de référence doivent tous appartenir au premier objet sélectionné. Les éléments de référence parmi plusieurs objets ne sont pas pris en charge pour le moment
 * Les objets redressés doivent être dans un système de coordonnées correspondant à celui global. Si vous avez utilisé des conteneurs de pièces pour localiser vos objets, vous devez d'abord utiliser Macro PlacementAbsolufy sur votre modèle. Si cette condition n'est pas remplie, des choses étranges peuvent se produire.

Code
ToolBar Icon

Macro_StraightenObject.FCMacro