Macros recipes/fr

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

Object creation

 * : creates a rectangular cuboid from 4 points
 * : creates a solid by sweeping a 2D profile along a trajectory previously selected in the 3D view. The 2D elements can be created through the regular tools in FreeCAD's GUI.
 * : creates a parametric rectellipse
 * : creates a circle on 3 selected points, the points can be objects (this example brings together the two examples below, all parameters simply settle on a graphic window).
 * : creates a circle from 3 selected points 2D orthogonal
 * : creates a circle from 3 selected points in the space 3D
 * : creates a arc from 3 selected points
 * : This macro creates a screw with or without thread, according to ISO standards (screw_maker1_6.py.zip with Pyside support). (Screw Maker 2.0 - new version!)
 * : This macro creates a geodesic dome shell
 * : The aim of BOLTS is to build a free and open-source standard parts library for CAD applications.
 * Makes an ellipse by selecting three points (in this order): centre, major radius and minor radius
 * : Imports and scales a .dat airfoil to desired chord length.
 * : Create a line giving coordinate XYZ length and angle to plane X Y
 * : Cut a line and create x points, giving the number of points, create line or not, create points or not, create bicolor or not on choice.
 * : Create a circle or arc giving radius, diameter, circumference, area, startangle, endangle, arc, anglecenter, cord, arrow, center (point) on choice.
 * : Cut a circle or arc and create x arcs, giving the number of cut.
 * : this macro convert the object line, wire in line Dash, DashDot, DashDotDot,ZigZag and Hand with the dimensions given.
 * : This macro create one triangle creates a triangle by giving the head angle and the height of the triangle (the triangle of the head is positioned to the xyz coordinates 0.0)
 * : Create a project from a bmp image to create a texture easily
 * : Create a loft with a list of wire (specially created for Macro Texture see above)
 * : Starts the Parts library browser
 * : This macro red trace (editable) around the BoundingBox with 6 rectangles
 * : This macro create a text around a cylinder
 * : Allows the user to create a Geneva wheel mechanism from scratch. Must edit values within the Macro to alter the size of the object.
 * : A GUI front end that allows the user to create a Geneva wheel mechanism from scratch.
 * : This macro creates a Wire with the coordinates extracted from a file. The coordinates X Y Z are separated by a space.
 * : This macro create one spring truncate, the troncature is adjustable on the all coil to choice.
 * : This macro help you to create an Arch Axis System along a line with a set of parameters.
 * : creates side and top/bottom walls for a cabinet with drilled holes for connection parts of manufacturer Hettich.
 * : Creates a half turn (left/right) stair from a Data-file.
 * : This macro generates both three dimensional half-hull and full-hull models from a series of 2D line drawings.
 * : Create stair helix, create your stair nosing select and run the macro.
 * : This macro reproduce all element selected subobject wire or face.
 * : Additional Workbench to create different types of gears, involute gear, involute rack, cycloide gear, bevel gear.
 * : Extracts boundary wires from selected meshes

Object transformation

 * : copies the selected object several times, on an array grid
 * : flattens draft wires that are not planar to their median Z coordinate
 * : flattens draft wires that are not planar to a plane defined by 3 points
 * : converts selected meshes to parts
 * : Converts selected parts to VRML meshes for small size and faster loading (VRML models Kicad and Blender compatible)
 * : allows to find and joint all non connected edge to the closest non connected one using a line
 * : removes all parametric associativity from an object, leaving it as a "dumb" shape
 * : Forces the creation of a Wire from lines and arcs that don't necessarily touch each other. Use this if normal wire operation fails
 * : 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
 * : Converts the selected Face to a single Sketch without constraints.
 * : Converts the selected Edges to a circular Arc if possible. Useful for restoring discretized arcs.
 * : 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)
 * : This macro create face from a DXF file, the "Layer" are recognized separate and trained in groups.
 * : This macro converts selected elements of imported dxf to face and sketch.
 * : Macro for easy scaling drawings, graphics, diagram, blueprint and similar 2D images in Image workbench.
 * : apply linear space transformations to distort shapes. E.g., non-uniform scaling, shearing, mirroring, axes swapping.
 * : 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
 * : (parametric): alternative implementation of Part Section tool, more suitable for making sweep paths.
 * : (parametric): Boolean operation. Similar to Part Common, but with custom overlap count threshold.
 * : This macro create boolean operation with the objects selected just select the wires give the thickness and click "Create"
 * : Draf command set in a small macro for the 2D sketch example: work with the DXF files.
 * : 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]] : Aide à gestion les alias dans FreeCAD Spreadsheet workbench. La macro est capable de créer, de supprimer, de déplacer des alias et de créer un groupe de fichiers par "famille d'objets".

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