Macros/es

Introduction
Las macros son una forma cómoda de crear acciones complejas en FreeCAD. Simplemente graba las acciones a medida que las haces, a continuación, lo guardas con un nombre, y las podrás reproducir siempre que lo desees. Dado que las macros son en realidad una lista de comandos de Python, también puedes editar y crear archivos de guión (scrips) o secuencias de comandos muy complejos.

While Python scripts normally have the extension, FreeCAD macros should have the  extension. A collection of macros written by experienced users is found in the macros recipes page.

See the Power users hub to learn more about the Python programming language, and about writing macros. In particular, you should start with these pages:
 * Introduction to Python
 * Python scripting tutorial
 * FreeCAD Scripting Basics

¿Cómo funciona?
Si habilitas la salida en consola (Menú Editar -> Preferencias -> Macro -> Mostrar comandos de archivos de guión en la consola de Python), verás que en FreeCAD, cada acción que hacemos, como presionar un botón, da como salida un comando Python. Esos comandos son lo que se pueden grabar en una macro. La principal herramienta para la grabación de las macros es la barra de herramientas de macros:. En ella tienes 4 botones: Grabar, detener la grabación, editar y reproducir la macro actual.

Enable the console output in the menu. You will see that in FreeCAD, every action you do, such as pressing a button, outputs a Python command. Those commands are what can be recorded in a macro. The main tool for making macros is the macros toolbar:. On it you have 4 buttons: Record, stop recording, edit and play the current macro.

Es muy sencillo de utilizar: Presiona el botón de grabación, se pedirá que le asignes un nombre a tu macro, a continuación, realizar algunas acciones. Cuando termines, haz clic en el botón Detener grabación, y tus acciones se guardarán. Ahora puedes acceder al letrero de diálogo de macro con el botón de edición:



Allí puedes manejar tus macros, eliminar, editar o crear otras nuevas desde cero. Si editas una macro, esta se abrirá en una ventana del editor donde se pueden realizar cambios en su código.

Ejemplo
Pulsa el botón de grabar, dale un nombre, digamos "cilindro de 10x10, entonces, en el Entorno de Pieza, crea un cilindro con radio = 10 y altura = 10. A continuación, pulsa el botón "Detener la sesión de grabación de la macro". En el letrero de diálogo de edición macros, puedes ver el código Python que se ha registrado, y, si lo deseas, realizar modificaciones en él. Para ejecutar la macro, basta con pulsar el botón de ejecutar en la barra de herramientas mientras la macro se encuentra en el editor. Tu macro siempre se guarda en el disco, por lo que cualquier cambio que hagas, o cualquier macro nueva que crees, siempre estará disponible la próxima vez que inicies FreeCAD.

Press the record button, give a name, let's say "cylinder 10x10", then, in the Part Workbench, create a cylinder with radius = 10 and height = 10. Then, press the "stop recording" button. In the edit macros dialog, you can see the python code that has been recorded, and, if you want, make alterations to it. To execute your macro, simply press the execute button on the toolbar while your macro is in the editor. You macro is always saved to disk, so any change you make, or any new macro you create, will always be available next time you start FreeCAD.

Personalización
Por supuesto que no es práctico cargar una macro en el editor con el fin de usarla. FreeCAD proporciona formas mucho mejores de iniciar la macro, como la asignación de un atajo de teclado, o poner una entrada en el menú. Una vez que la macro se crea, todo esto se puede hacer a través de menú -> Herramientas -> Personalizar:

Of course it is not practical to load a macro in the editor in order to use it. FreeCAD provides much better ways to use your macro, such as assigning a keyboard shortcut to it or putting an entry in the menu. Once your macro is created, all this can be done via the menu.



Así puedes hacer que tu macro se convierta en una auténtica herramienta, al igual que cualquier herramienta estándar de FreeCAD. Esto, sumado a la potencia de Python en FreeCAD, permite añadir fácilmente tus propias herramientas a la interfaz. Sigue leyendo en la página del Centro de usuarios avanzados si quieres saber más sobre los archivos de guión en lenguaje Python ...

See Customize Toolbars for a more detailed description.

Creación de macros sin grabar
También puedes copiar/pegar directamente código python en una macro, sin grabar acciones de la interfaz gráfica de usuario. Basta con crear una nueva macro, editarla, y pegar el código. A continuación, puedes guardar la macro del mismo modo que se guarda un documento de FreeCAD. La próxima vez que se inicie FreeCAD, la macro aparecerá bajo el apartado "Macros instaladas" del menú Macro.

You can also directly copy/paste python code into a macro, without recording GUI action. Simply create a new macro, edit it, and paste your code. You can then save your macro the same way as you save a FreeCAD document. Next time you start FreeCAD, the macro will appear under the "Installed Macros" item of the Macro menu.

See How to install macros for a more detailed description.

Repositorio de Macros
Visita la página Recetas de macros para recoger algunas macros útiles para añadir a tu instalación de FreeCAD.

Visit the Macros recipes page to pick some useful macros to add to your FreeCAD installation.

Additional information

 * Automatically run macro at startup
 * Installing more workbenches

Tutorials
You can manually install extensions, however, it is much simpler to just use the Addon Manager.
 * How to install macros
 * How to install additional workbenches