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
Guionización en FreeCAD
General
Modulos
La funcionalidad de FreeCAD está separada en Módulos que tratan con tipos de datos y aplicaciones especiales. FreeCAD tiene módulos incorporados y módulos de extensión (plug-ins). Una vez que los módulos de extensión son instalados, están disponibles para ti tan fácilmente como los módulos incorporados. Los módulos descritos a continuación son los módulos por defecto, incluidos en cada instalación de FreeCAD.
Trabajando con Mallas
Trabar con Piezas
=Accediendo los gráficos de escena Coin
Controlando el interfaz Qt
Trabajando con objetos paramétricos
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 documentación completa de la API de FreeCAD se encuentra en http://www.freecad.org/api/ . Contiene tanto las APIs de C++ como las de Python, y aún no está totalmente bien formateada, lo que puede ser confuso cuando se busca código sólo en python. Una versión más fácil de navegar se puede encontrar aquí. Tenga en cuenta que puede estar incompleta, ya que se actualiza manualmente. Para una información más precisa, navega por los módulos directamente desde la consola de Python de FreeCAD.
Relacionado: Exponer C++ a Python
Modificación avanzada
Tutoriales de Python
Estos son unos buenos tutoriales genéricos, no específicos para FreeCAD, te pueden interesar si eres nuevo en Python.
Python
PySide - Cómo crear y manejar la interfaz Qt UI de FreeCAD desde python
Las siguientes dos referencias son específicas de PyQt (no de PySide) pero pueden ofrecer alguna información de utilidad:
Pivy - Cómo interactuar con las escenas 3D de FreeCAD
Proyectos de la comunidad
En el Portal de la Comunidad, puedes encontrar otros proyectos basados en FreeCAD dirigidos por la comunidad de usuarios de FreeCAD. Si estás empezando un nuevo proyecto de FreeCAD, ¡asegúrate de listarlo allí! También tenemos una página con cosas que puedes hacer si quieres Ayudar a FreeCAD.
Power user documentation
- 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