Macros recipes/fr

Cette page répertorie des macros qui ajoutent des fonctionnalités intéressantes à votre installation FreeCAD.

Création d'objets

 * [[Image:Macro_makeCube.png|24px]] : créé un pavé droit (Parallélépipède rectangle) à partir de 4 points
 * [[Image:Text-x-python.png|24px]] : créé un solide en balayant un profil le long d'une trajectoire. Les éléments 2D peuvent être créés à l'aide des outils de l'interface graphique de FreeCAD.
 * [[Image:Text-x-python.png|24px]] : crée un rectellipse paramétrique.
 * [[Image:Macro_Draft_Circle_3_Points.png|24px]] : crée un cercle sur 3 points sélectionnés, les points peuvent être des objets (cet exemple réunit les deux exemples ci dessous, tous les paramètres se règlent simplement dans une fenêtre graphique).
 * [[Image:Macro_Draft_Circle_3_Points.png|24px]] : crée un cercle orthogonal sur 3 points sélectionnés, les points peuvent être des objets.
 * [[Image:Macro_Draft_Circle_3_Points.png|24px]] : crée un cercle sur 3 points sélectionnés dans l’espace 3D, les points peuvent être des objets.
 * [[Image:Macro Make Arc 3 Points.png|24px]] :crée un arc sur 3 points sélectionnés
 * [[Image:Text-x-python.png|24px]] : Cette macro crée une vis, un boulon . . . dans les normes ISO. Sélectionnez le type de vis, le diamètre nominal et la longueur (d'autres options seront disponibles)(screw_maker1_6.py.zip avec support Pyside) ((Screw Maker 2.0 - new version!)).
 * [[Image:Text-x-python.png|24px]] : Cette macro crée la coquille d'un dôme géodésique.
 * [[Image:Macro_BOLTS.png|24px]] : Bibliothèque libre et open-source pour la construction de boulons et visses au format standard pour les applications de CAD.
 * [[Image:Text-x-python.png|24px]] : Crée un ellipse en sélectionnant 3 points (dans cet ordre): centre, grand rayon et petit rayon.
 * [[Image:Text-x-python.png|24px]] : Importe et met à l'échelle sur la longueur choisie un fichier airfoil .dat.
 * [[Image:Text-x-python.png|24px]] : Crée une ligne en donnant comme paramètres au choix les coordonnées de départ XYZ une longueur et un angle dans le plan X Y.
 * [[Image:Text-x-python.png|24px]] : Cette macro crée x points ou coupe votre ligne originale en x lignes, donner le nombre de points, vous pouvez : créer des points ou non, créer les lignes (raccorder les points) ou non, créer vos ligne alternativement en deux couleurs (rouge et blanc) ou non au choix. La ligne originale n'est pas modifiée (valable sur ligne, cercle, forme . . .)
 * [[Image:Text-x-python.png|24px]] : Crée un cercle ou un arc en donnant différents paramètres au choix comme rayon, diamètre, circonférence, surface, début angle, fin d'angle, arc, anglecentral, corde, flèche, centre (point), placement.
 * [[Image:Text-x-python.png|24px]] : Coupe un cercle ou un arc en x arcs, sélectionnez l'objet(s) donner le nombre de coupures et lancez la macro (Le cercle ou arc original n'est pas modifié).
 * [[Image:Macro_FCConvertLines.png|24px]] : cette macro convertit une ligne, bord (crée une nouvelle ligne) en ligne tiret, tiret point (axe), tiret point point, zigzag et "manuel" paramétrable.
 * [[Image:Text-x-python.png|24px]] : Cette macro crée un triangle en donnant l'angle de tête et la hauteur du triangle (La tête du triangle est positionnée aux coordonnées 0.0.0)
 * [[Image:FCTexture.png|24px]] : Crée un projet à partir d'une image BMP en vue de créer une texture en 3D très facilement ou n'importe quelle autre utilisation possible vous êtes jute limité par votre imagination.
 * [[Image:FCCreaLoft.png|24px]] : Cette macro crée un loft de plusieurs lignes sélectionnées (Cette macro est spécialement conçue pour la macro Texture ci dessus)
 * [[Image:FreeCAD Doc.png|24px]] : Démarre le navigateur de la bibliothèque de pièces.
 * [[Image:BoundBoxTracing.png|24px]] : Cette macro trace 6 rectangles en rouge (1 rectangle par face avec couleur modifiable dans la macro) représentant le BoundingBox (dimensions externes maximum) de l'objet sélectionné.
 * FCCircularTextButtom.png : Cette macro crée un texte autour d'un cylindre
 * [[Image:GW_Dim.png|24px]] : Permet de créer un mécanisme Croix de Malte à partir de rien. Les paramètres sont à régler dans la macro.
 * [[Image:GW_Dim.png|24px]] : Permet de créer un mécanisme Croix de Malte à partir de rien. Facilité de régler les paramètre dans l'interface graphique.
 * [[Image:Text-x-python.png|24px]] : Cette macro créer un filaire avec les coordonnées extraite depuis un fichier. Les coordonnées X, Y et Z sont séparés par un espace.
 * FCSpring_Helix_Variable.png : Cette macro créer un ressort variable.
 * [[Image:Text-x-python.png|24px]] : Cette macro vous aide dans la création d'un système d'axes le long d'une ligne est selon divers paramètres.
 * [[Image:Cabinets32.png|24px]] : crée les panneaux latéraux, supérieurs et fond pour une armoire avec les forages pour loger les pièces de raccordement de fabrication Hettich.
 * Macro_Half_Hull_Model.png : Cette macro génère une coque en trois dimensions half-hull à partir d'une série de dessins 2D.
 * [[Image:Text-x-python.png|24px]] : Cette macro crée un escalier sur une hélice, créer la marche sélectionnez là et lancez la macro.
 * [[Image:Macro_ReproWire.png|24px]] : Cette macro reproduit un ou les objets ou suBobjet sélectionnés ligne face ....
 * [[Image:Gearworkbech.png|24px]] : Atelier supplémentaire pour créer des engrenages à taille droite, crémaillères, engrenages cycloïdes et coniques.

Object transformation

 * [[Image:Text-x-python.png|24px]] : copies the selected object several times, on an array grid
 * [[Image:Text-x-python.png|24px]] : flattens draft wires that are not planar to their median Z coordinate
 * [[Image:Text-x-python.png|24px]] : flattens draft wires that are not planar to a plane defined by 3 points
 * [[Image:Text-x-python.png|24px]] : converts selected meshes to parts
 * [[Image:PartToVRML.png ‎|24px]] : Converts selected parts to VRML meshes for small size and faster loading (VRML models Kicad and Blender compatible)
 * [[Image:Text-x-python.png|24px]] : allows to find and joint all non connected edge to the closest non connected one using a line
 * [[Image:Text-x-python.png|24px]] : removes all parametric associativity from an object, leaving it as a "dumb" shape
 * [[Image:Text-x-python.png|24px]] : Forces the creation of a Wire from lines and arcs that don't necessarily touch each other. Use this if normal wire operation fails
 * [[Image:Text-x-python.png|24px]] : Sometimes arcs are transformed into BSplines, for example when scale operations have been applied to them. This macro recreates valid arcs from them. Useful before exporting to dxf
 * [[Image:Text-x-python.png|24px]] : Converts the selected Face to a single Sketch without constraints.
 * [[Image:Text-x-python.png|24px]] : Converts the selected Edges to a circular Arc if possible. Useful for restoring discretized arcs.
 * [[Image:Macro_CloneConvert.png ‎|24px]] : Creates a clone of the object and the converted in the chosen position and size (inch, mm, m, µm...). The base object is recognized in mm (FreeCAd base)
 * [[Image:Text-x-python.png|24px]] : This macro create face from a DXF file, the "Layer" are recognized separate and trained in groups.
 * [[Image:Macro_DXF_to_Face_and_Sketch.png ‎|24px]] : This macro converts selected elements of imported dxf to face and sketch.
 * [[Image:Text-x-python.png|24px]] : Macro for easy scaling drawings, graphics, diagram, blueprint and similar 2D images in Image workbench.
 * [[Image:Text-x-python.png|24px]] : apply linear space transformations to distort shapes. E.g., non-uniform scaling, shearing, mirroring, axes swapping.
 * [[Image:Macro_Connect_And_Sweep.png ‎|24px]] : This macro easily creates a connection between two objects, an object and a point or between two points (the center of the objects are the starting and ending points of the sweep) can be selected form a configurable ellipse polygon circle
 * [[Image:Part_Section.png ‎|24px]] (parametric): alternative implementation of Part Section tool, more suitable for making sweep paths.
 * [[Image:Macro_Overlap.png ‎|24px]] (parametric): Boolean operation. Similar to Part Common, but with custom overlap count threshold.
 * [[Image:Macro FCWire To Volume.png ‎|24px]] : This macro create boolean operation with the objects selected just select the wires give the thickness and click "Create"
 * [[Image:Macro_Compound_Plus.png|24px]] : Draf command set in a small macro for the 2D sketch example: work with the DXF files.
 * [[Image:Macro Dxf To Shape.png|24px]] : Macro utility for create unique wire with many wires, the type wire created is selected to MakeWire, Bspline, BsplineCurve, BsplineCurve + Arc, Polygon, Bezier curve

Opération de vues 3D

 * [[Image:Text-x-python.png|24px]] : Cette macro fait pivoter l'affichage actuel de 90 ° vers la gauche. Ne fonctionne que si vous êtes en vue de dessus.
 * [[Image:Text-x-python.png|24px]] : Cette macro fournit une interface graphique, afin de permettre une rotation précise des objets dans la vue.
 * [[Image:Text-x-python.png|24px]] : Cette macro permet de mettre temporairement une image qui servira de texture sur les objets sélectionnés.
 * [[Image:Text-x-python.png|24px]] : Cette macro change la forme de la souris en une croix de précision.
 * [[Image:Text-x-python.png|24px]] Cette macro aligne la vue courante sur la face sélectionnée.
 * [[Image:Text-x-python.png|24px]] Cette macro aligne l'objet sélectionné à la vue courante et prends les propriétés de celle-ci (Placement angle) de la caméra.
 * [[Image:Text-x-python.png|24px]] : Cette macro aligne la face sélectionnée face à l'écran (Si un forage ou une face intérieure est sélectionnée le forage est placé perpendiculairement à l'écran).
 * [[Image:Text-x-python.png|24px]] : Sélectionnez vos objets dans la vue 3D, si une sélection est dupliquée le curseur de la souris change en "ForbiddenCursor" et reste dans cet état tan que la sélection est dupliquée.

Assistants

 * [[Image:Text-x-python.png|24px]] : Créé une pièce dépliée à partir d'une pièce de métal en feuille.
 * [[Image:Text-x-python.png|24px]] : permet de dérouler les surfaces et de les dessiner sur une page.
 * [[Image:Text-x-python.png|24px]] : permet de se dérouler les faces d'un objet de n'importe quelle forme et de les dessiner sur une page.
 * [[Image:Text-x-python.png|24px]] : Une interface graphique pour pour créer un mécanisme de roue de Genève à partir de zéro.
 * [[Image:Part_Prism_Apothem.png|24px]] : Une interface graphique pour créer un prisme basé sur l'Apothème, (rayon intérieur).

Utilitaires

 * [[Image:Text-x-python.png|24px]] : Montre comment donner des informations à l'utilisateur dans les macros
 * [[Image:FCInfo.png|24px]] : Donne une série de renseignements sur la forme sélectionnée et peut afficher une conversion de la longueur, de l'inclinaison de la forme (degrés, radian, grade), de la surface, du volume et du poids de la forme dans la densité sélectionnée dans différentes unités de grandeur internationales et anglo-saxonne.
 * [[Image:FCInfo.png|24px]] : même que ci-dessus, mais pour Linux
 * [[Image:Macro_FCInfoGlass.png|24px]] : Donne une série d'informations sur l'objet sélectionné directement dans la vue 3D
 * [[Image:FCInfoToMouse.png|24px]] : Donne les informations des coordonnées, longueur et angles en temps réel sur la souris dans une bulle annotation affichée dans l'écran 3D
 * [[Image:Text-x-python.png|24px]] : Exporte votre conception vers un logiciel d'analyse par tranche (slicer) pour utilisation sur une imprimante 3D ou vers un logiciel CAM.
 * [[Image:Text-x-python.png|24px]] : Donne la valeur Delta xyz et la distance entre 2 points
 * CenterFace.png : Cette macro trace un point rouge (editable) au centre de la face (mass), affiche les coordonnées XYZ du point dans la vue rapport ainsi que la surface de la face et ses coordonnées.
 * [[Image:Macro_Center_Align_Objects_with_Faces_or_Edges.png|24px]] : Cette macro couvre les contraintes suivantes: Contrainte concentrique entre les parties non cylindriques, Contrainte sur le centre de la face et / ou les bords.
 * [[Image:Macro_Easy_Cutouts_for_Enclosures.png|24px]] : Cette macro crée facilement un logement d'un objet sur un support. Il faut juste sélectionner le support puis l'objet (ex: composants électoniques Arduino)
 * [[Image:Text-x-python.png|24px]] : Ce module "Info" affiche certains renseignements de l'objet sélectionné dans la vue "Vue combinée"
 * [[Image:Text-x-python.png|24px]] : Ajoute les macros trouvées dans le répertoire de macros dans le menu des macros de FreeCAD.
 * [[Image:Force_Recompute.png|24px]] : Forces le recalcul de votre projet.
 * [[Image:Text-x-python.png|24px]] : Démonte un un croquis pour y découvrir les parties non contraintes (a utiliser sur une copie de votre projet !).
 * [[Image:Replace_Part.png|24px]] : Remplace une pièce (simple copie) dans un "assemblage" par une autre pièce (simple copie).
 * WF_wf.png : Utilitaire pour créer des plans à partir d'axes, plans depuis 3 points, axes sur une forme, obtenir de l'information sur les coordonnées d'une forme ainsi que plusieurs autres fonctionnalités pour faciliter la création de votre projet. Cet utilitaire s'affiche dans la vue combinée.
 * Macro_Dump_Objects.png : Cette macro génère une liste de tous les objets dans le document courant - la liste peut être affichée dans une fenêtre ou dans la vue rapport.
 * [[Image:Text-x-python.png|24px]] : Cette paire de macros vous permettent de changer le style de navigation de la souris, "CADNavigationStyle" et "InventorNavigationStyle".
 * Macro_Toggle_Drawstyle.png : Cette macro permet de basculer l'DrawStyle de l'objet sélectionné.
 * Macro_Toggle_Views_Visibility.png : Cette macro permet de basculer la visibilité des différentes vues dans FreeCAD, permettant à la fenêtre principale de prendre tout l'espace disponible de l'écran.
 * Macro_Python_Assistant_Window.png : Cette macro fournit un espace de travail et permet de couper/copier/coller le code Python, il est segmenté de manière différentes les sections peuvent être sélectionnées et la macro est persistante entre les sessions FreeCAD.
 * Macro_Build_Utility.png : Cette macro présente l'utilité de créer un projet à partir d'un ensemble de fichiers (sous-projets) en utilisant l'outil de fusion de projet.
 * FCCamera_00.png : Cette macro peut faire pivoter l'écran dans un angle défini et dans l'axe défini, ce qui permet de créer un plan face à l'écran, positionne la face (par sa face ou par son axe) de l'objet sélectionné face à l'écran, permet de détecter la position de la caméra ...
 * Macro_Global_Variable_Watcher.png : Cette macro rend plus facilite la sélection des variables globales et le suivi de leurs valeurs.
 * [[Image:Text-x-python.png|24px]] : Calcule les parties communes de deux objets.
 * [[Image:HighlightDifference.png|24px]] : Calcule les différences entre des shapes.
 * [[Image:PropertyMemo.png|24px]] : Cette petite macro vous permet de créer une nouvelle propriété à votre objet (mémo ou autre texte) ne fonctionne qu'avec les objets Draft.
 * [[Image:Macro SelectVisible.png|24px]] : Ensemble de trois macros, macro 1: cache les objets qui ne sont pas sélectionnés, macro 2: affiche tous les objets, macro 3: cache tous les objets.
 * [[Image: SelectVisible.png|24px]] : Tous les objets dans la vue 3D sont sélectionnés.
 * [[Image:Text-x-python.png|24px]] : Affiche de manière interactive une section transversale avec l'aide d'une barre coulissante.
 * [[Image:Macro_MeasureCircle.png|24px]] : Calcule le rayon du cercle sur trois points ou sur l'arc ou circonférence du cercle.
 * [[Image:Macro_Copy3DViewToClipboard.png|24px]] : Copie le contenu de la vue 3D redimensionné à 640, 480 px dans la mémoire (clipboard).

Fonctions mathématiques

 * [[Image:Text-x-python.png|24px]] : Dessine le résultat de la courbe d'une fonction décrite par l'équation x(t), y(t) et z(t).
 * [[Image:Text-x-python.png|24px]] : trace une fonction décrite par une équation z=F(x)
 * [[Image:Text-x-python.png|24px]] : cette macro est basée sur la macro ci-dessus, mais pour les équations paramétriques et éventuellement polaires.

Animation

 * [[Image:Text-x-python.png|24px]] : Rotation d'une bielle et d'un piston.
 * [[Image:Text-x-python.png|24px]] : Simulation de la compression d'un ressort.
 * [[Image:Text-x-python.png|24px]] : Simulation de la rotation d'une charnière.
 * [[Image:Text-x-python.png|24px]] : Animation d'un assemblage.
 * [[Image:Text-x-python.png|24px]] : Animate angle constrain in sketcher
 * [[Image:Text-x-python.png|24px]] : Simulation of movements of a 3D printer

Raytracing

 * [[Image:Text-x-python.png|24px]] : Exporte un fichier FreeCAD compatible avec Kerkythea

FEM

 * [[Image:Text-x-python.png|24px]] : Crée un maillage FEM avec le générateur GMSH

Drawing Workbench

 * [[Image:Text-x-python.png|24px]] : Permet de générer une mise en plan avec 4 vues (face, dessus, iso et droite). Il requiert des modifications pour être parfaitement fonctionnel.
 * [[Image:Text-x-python.png|24px]] : Cette macro est une application complète, il ouvre une boîte de dialogue demandant les dimensions angulaires de votre pièce, puis crée l'objet dans le document, et, crée une page avec les vues, de dessus, de face et latérale de la pièce.
 * [[Image:Text-x-python.png|24px]] : Cette macro GUI permet de remplir simplement tous les champs du cartouche de la feuille mise en plan de FreeCAD, le format de la date et le symbole du mode de projection s'adaptent à la région EU ou US sélectionnée.
 * [[Image:Macro_CartoucheFC_Full.png|24px]] : Cette macro GUI permet de remplir simplement tous les champs du cartouche de la feuille : de FreeCAD (texteditable), le format de la date et le symbole de la mode de projection s'adaptent à la région de l'UE ou US sélectionnée.
 * [[Image:Text-x-python.png|24px]] : Cette macro GUI permet de remplir simplement tous les champs du cartouche de la feuille modèle 2 (texteditable) de FreeCAD
 * [[Image:Text-x-python.png|24px]] : Obtenir le vecteur normal d'une face sélectionnée pour créer une vue d'une normale à cette face.

Atelier feuille de calcul

 * [[Image:aliasmanager_icon.png|24px]] : helps managing aliases inside FreeCAD Spreadsheet workbench. It is able to create, delete, move aliases and create a 'part family' group of files.

Std_FreeCADWebsite.png Autres macros intéressantes placées hors wiki.

 * [[Image:2364.png|24px]] By microelly2 : freeCAD_macro, geodata, Animation, freecad-nurbs, PieMenu, ..... other
 * [[Image:Text-x-python.png|24px]] By hamish2014: FreeCAD_assembly2, FreeCAD_drawing_dimensioning, ...
 * [[Image:Text-x-python.png|24px]] By triplus: IconThemes, ShortCuts, NavigationIndicator, TabBar, Launcher, PersistentToolbars, PieMenu, ....
 * 681.jpg By rockn: FreeCAD-Timber, FreeCAD-addons, FreeCAD-library, FreeCAD-StructuresBois, .... other
 * [[Image:Text-x-python.png|24px]] By oddtopus: flamingo (workbench for metal structures)

Utilisation
Les macros citées ci-dessus peuvent être facilement ajoutées dans FreeCAD :
 * Copiez le code Python de la macro de la page de macro correspondante
 * Dans FreeCAD, allez dans le menu Macro → Macros... puis cliquez sur le bouton « Créer » et saisissez un nom
 * Collez le code Python que vous aviez copié
 * Cliquez sur le bouton Sauvegarder, puis redémarrez FreeCAD
 * Ouvrez le Gestionnaire de macros, sélectionnez votre nouvelle macro et cliquez sur « Lancer ».
 * Tutoriel Comment installer une macro et comment palier aux erreurs copier/coller et autres petits pièges indésirables.

De plus, vous pouvez ajouter votre nouvelle macro à une barre d'outils personnalisée :
 * Dans FreeCAD, ouvrez Outils → Personnaliser...
 * Dans l'onglet Macros, ajoutez une nouvelle macro, et définissez si vous le désirez un icône et un raccourci-clavier
 * Dans l'onglet Barres d'outils, créez une nouvelle barre d'outils, puis ajoutez votre macro, en la copiant dans la catégorie "Macros".
 * Tutoriel Comment créer sa barre d'outils.

Ajouter de nouvelles macros à cette page

 * Demandez les droits en écriture sur le wiki
 * Créez une nouvelle page dont le nom commence par "Macro", par exemple "Macro_Ma_macro_excellente" éditer votre page et ajoutez un lien sur votre macro, faites ce qui suit:


 * exemple :
 * Text-x-python : icône par défaut (le nom de l'icône doit impérativement porter le même nom que le nom de la macro)
 * Macro My Excellent Macro : nom de la macro

Un lien de votre future page est créé (texte en rouge).
 * Dans cette page coller le code (titre) suivant:

Ici pour les pages anglophones.

(Exemple avec l'icône par défaut) (Exemple avec un icône personnalisé) Ici pour les autres pays ("/fr" "/de" "/it" ...).

(Exemple avec l'icône par défaut) (Exemple avec un icône personnalisé)
 * Vous pouvez aussi téléverser un icône personnalisé de format .png

ATTENTION, le nom de l'icône doit impérativement porter le même nom que le nom de la macro.
 * exemple : " Ma_macro_excellente " sans mettre d'extension (l'extension est donnée par le système), et, remplacez " Icon=Text-x-python " par " Icon=Ma_macro_excellente "
 * Text-x-python [[Image:Text-x-python.png|32px]] est l'icône par défaut de la page dédiée à la Macro.


 * Collez votre macro, en utilisant le template Code pour éviter d'ajouter des espaces à votre script. Ceci affichera la macro dans une police monospace, dans un encadré gris pâle, comme l'exemple ci-dessus.
 * Si vous le voulez, importez une icône .png avec le nom exact de votre page macro (par ex. Macro_My_Excellent_Macro.png)
 * Ajouter une image : une image peut être utile pour montrer ce que fait la macro. En option, vous pouvez créer un gif animé qui présente l'effet de la macro. La taille de l'image gif ne devrait pas excéder 500 x 500 px car le wiki ne peut pas redimensionner les gif animés ; si le gif est plus grand, l'animation ne fonctionnera pas.
 * En option, vous pouvez ajouter davantage d'infos sur l'utilisation de votre macro, ses limitations, et les solutions de contournement.
 * Il est également intéressant d'inclure les informations de version de FreeCAD dans votre macro. Ces informations vous permettent de localiser votre macro dans le temps par rapport à l'évolution de FreeCAD, faites : Menu > Aide > À propos de FreeCAD, cliquez sur « Copier dans le Presse-papiers » et coller ces informations dans votre macro.

Exemple :

Il est aussi intéressant de créer un entête dans votre macro, cet entête servira dans la macro Plugin Loader programme d'installation de macro et vérificateur de versions. Aussi disponible addons_installer.FCMacro

Exemple :


 * Ajoutez la à une catégorie existante, ou créez en une si la catégorie n'existe pas.

Tutorials

 * Comment installer une macro
 * Créez votre propre barre d'outils
 * Comment installer un atelier supplémentaire