Centro usuarios avanzados
Este es el lugar para venir si eres un usuario experimentado y quieres aprender más sobre la personalización y ampliación de FreeCAD.
FreeCAD es extensible mediante código Python que se ejecuta directamente en la Consola de Python, o que se carga desde los módulos al inicio. Esto significa que puedes modificar FreeCAD sin necesidad de recompilar el programa. Por ejemplo, puedes:
- Crear y modificar geometría: puedes crear un nuevo tipo de objeto, ya sea desde cero o adaptando un tipo existente.
- Crear herramientas y comandos personalizados: añade tu propio conjunto de herramientas que ejecutan tu código.
- Modificar la interfaz: crea barras de herramientas para colocar tus herramientas, crea ventanas especiales, paneles o interfaces para interactuar con tus herramientas.
- Modificar la representación del gráfico de la escena: FreeCAD tiene procesos separados para construir la geometría y mostrarla en la pantalla. Tienes acceso completo a la forma en que el contenido de la escena se muestra en la pantalla, por lo tanto puedes modificar esa representación, interactuar con ella, o añadirle un comportamiento personalizado. También puedes añadir widgets de pantalla personalizados, como información, arrastradores, anclas o entidades temporales.
Si quieres contribuir con contenido a estas páginas, solicita una cuenta wiki con permisos de editor en el foro, y lee las WikiPáginas para conocer las directrices generales que debes seguir. Para otras formas de contribuir con el proyecto, vea la página Ayuda a FreeCAD.
Personalizando FreeCAD
- Personalización de la interfaz: Empezando por el principio: Barras de herramientas y atajos de teclado
- Trabajando con Macros: Registrar fácilmente las tareas que se repiten con frecuencia o el código Python.
- Recetas de macros
- Personalizar barras de herramientas
- Instalar más ambientes de trabajo
Archivos de guión en FreeCAD
General
- Introducción a Python - Ver también otros tutoriales de Python en la parte inferior de esta página
- Tutorial de archivos de guión en FreeCAD - Una visión general a los archivos de guión de Python en FreeCAD
- Archivos de guión básicos en FreeCAD: Bien, lo básico...
- Comandos de la interfaz gráfica de usuario : Añadiendo comandos personalizados a la interfaz gráfica de usuario
- Utilizando Unidades mezcladas en FreeCAD
- Perfilando el código Python
Modulos
The functionality of FreeCAD is separated in Modules which deal with special data types and applications. FreeCAD has built-in modules and Extension Modules (plug-ins). Once plugin modules are installed, they become availible to you as easily as the built-in modules. The modules described below are the default modules, includeed in every FreeCAD installation.
- The Builtin modules are the principal FreeCAD modules. They contain tools for manipulating general FreeCAD configurations, documents and their contents.
- Workbench creation shows you how to create your own workbench
Trabajando con Mallas
- Mallas guiónes: Cómo interactuar con el Módulo Mallas
Trabajando con piezas
- El módulo de Pieza: Cómo se utilizan las herramientas y estructura de OpenCasCade en FreeCAD
- Archivos de guión de topología de datos: Cómo interactuar con el módulo de Piezas
- PythonOCC: Cómo dar rienda suelta a todo el poder de OpenCasCade
- De malla a Pieza: Conversión entre tipos de objetos
=Accediendo a los gráficos de escena de Coin
- Los gráficos de escena de Coin/Inventor: Cómo funciona la escenografía FreeCAD
- Pivy: Cómo acceder y modificar las escenografías
Controlando el interfaz Qt
- PySide: Cómo acceder la interfaz, y modificar su contenido
- Utilizando la interfaz gráfica de usuario de FreeCAD en otra aplicación Qt con PyQt
Trabajando con objetos paramétricos
- Objetos de guiónes: cómo hacer objetos 100% desde guiónes en Python
- Objetos guiónes con adjunto: cómo hacer que los objetos de guión se puedan adjuntar a otros objetos.
- Scripted objects saving attributes: cómo guardar y restaurar atributos de la clase proxy con
__getstate__
y__setstate__
. - Migración de objetos guiónes: cómo migrar objetos con guiónes antiguos a una nueva clase.
Ejemplos
- Pedazos de código : Una colección de pedazos de código en Python para FreeCAD, para servir como utilidades en tus archivos de guión...
- Función de dibujar líneas: Cómo construir una simple herramienta para dibujar líneas
- Creación de letreros de diálogo: Como crear letreros de diálogo con el diseñador de Qt, y utilizarlos en FreeCAD
- FreeCAD embebido: Cómo importar FreeCAD como un módulo de Python en otras aplicaciones
- El módulo de croquizado añade funciones básicas de dibujo 2D a FreeCAD. Está escrito enteramente en Python, así que puede ser un buen ejemplo si quieres escribir tus propios módulos.
- Biblioteca de matemática vectorial de FreeCAD : Un par de funciones practicas para manipular vectores en FreeCAD. Esta biblioteca está incluida en el módulo de croquizado.
Funciones del API
La descripción completa del API se encuentra aquí. Puede estar incompleta, pues aún no hemos encontrado la forma de incluirlas automñaticamente en esta wiki. Para obtener información más precisa, navega directamente por los módulos de FreeCAD.
Related: Exposing C++ to Python
Modificación avanzada
- Inicio y configuración: Inicio y opciones del comando de inicio
- Instalación en Windows: Utilizando el instalador de Windows
- Compilando FreeCAD en Windows y Compilando FreeCAD en Unix
- Construcción de marca: Simples modificaciones que puedes hacer al código fuente para cambiar algunos aspectos de FreeCAD
- Módulos extra en Python : Extiende el interprete de Python de FreeCAD con estos potentes módulos!
Tutoriales de Python
Estos son unos buenos tutoriales genéricos, no específicos para FreeCAD, te pueden interesar si eres nuevo en Python.
Python
- Tutorial Oficial de Python - Un tutorial muy completo para descubrir Python
- Non-programmer tutorial para Python - Una excelente wiki
- Python para novatos - Un gran tutorial que cubre todos los conceptos básicos
PyQt - Cómo crear y manejar la interfaz de usuario Qt de FreeCAD desde Python
- Tutorial básico de PyQt : Un simple y corto tutorial basado en Linux que explica cómo trabajar con PyQt y el diseñador de Qt
- Primeros programas en PyQt4 : Una plataforma tutorial mostrando practicas en Python + Qt
- programming Aplicaciones Qt en python : Un tutorial más en profundidad cubriendo todo el proceso de trabajo con Qt y Python.
The following two references are PyQt specific (not PySide) but may offer some information of use:
- Basic PyQt tutorial : A simple and short linux-based tutorial that will explain how to work with PyQt and Qt Designer
- Programming Qt applications in python : A more in-depth tutorial covering all the process of working with qt and python
Pivy - Cómo interactuar con las escenas 3D de FreeCAD
- Tutorial básico de Pivy : Un tutorial muy simple del sitio oficial de Pivy
- Introducción a Pivy : Un documento que no es realmente un tutorial pero que ilustra bien como funciona Pivy
Proyectos de la comunidad
En el Portal de la comunidad, puedes encontrar otros proyectos basados en FreeCAD llevados por la comunidad de usuarios de FreeCAD. Si estas empezando un nuevo proyecto de FreeCAD, asegúrate de añadirlo aquí! También disponemos de una página con cosas que puedes hacer si quieres Ayudar a FreeCAD.
- Scientific literature: articles that reference or use the FreeCAD system in different ways.
- FreeCAD scripting: Python, Introduction to Python, Python scripting tutorial, FreeCAD Scripting Basics
- Modules: Builtin modules, Units, Quantity
- Workbenches: Workbench creation, Gui Commands, Commands, Installing more workbenches
- Meshes and Parts: Mesh Scripting, Topological data scripting, Mesh to Part, PythonOCC
- Parametric objects: Scripted objects, Viewproviders (Custom icon in tree view)
- Scenegraph: Coin (Inventor) scenegraph, Pivy
- Graphical interface: Interface creation, Interface creation completely in Python (1, 2, 3, 4, 5), PySide, PySide examples beginner, intermediate, advanced
- Macros: Macros, How to install macros
- Embedding: Embedding FreeCAD, Embedding FreeCADGui
- Other: Expressions, Code snippets, Line drawing function, FreeCAD vector math library (deprecated)
- Hubs: User hub, Power users hub, Developer hub