Feature list/es

Esta es una lista extensa (aunque incompleta) de las características que tiene FreeCAD. Si quieres saber que se incluirá en el futuro mira el Mapa de desarrollo. Para obtener una descripción rápida, un buen punto para empezar son las Capturas de pantalla.

La Aplicación de Base



 * FreeCAD es multiplataforma. Se ejecuta y se comporta exactamente de la misma manera en Windows, Linux y Mac OSX.


 * FreeCAD es una completa aplicación de interfaz gráfica de usuario (GUI). FreeCAD cuenta con una completa interfaz gráfica de usuario basada en el famoso entorno Qt, con un visualizador 3D basado en Open Inventor, que permite un rápido renderizado de escenas 3D y una representación gráfica de escenas muy accesible.


 * FreeCAD también se ejecuta como una aplicación de línea de comandos, con menos requerimientos de memoria. En el modo de línea de comandos, FreeCAD se ejecuta sin su interfaz gráfica GUI, pero con todas sus herramientas de geometría. Puede ser, por ejemplo, utilizado como servidor para producir contenidos para otras aplicaciones.


 * FreeCAD puede ser importado como un módulo de Python, dentro de otras aplicaciones que puedan ejecutar scripts Python, o en una consola Python. Al igual que en modo consola, la parte de interfaz GUI de FreeCAD no está disponible, pero todas las herramientas de geometría son accesibles.


 * Implementa un sistema de carga tardía para el entramado de Plugins/Módulos y para las estructuras de datos. FreeCAD se divide en una aplicación principal y módulos, que se cargan sólo cuando es necesario. Casi todas las herramientas y elementos de geometría se almacenan en módulos. Los módulos se comportan como plugins, y se pueden agregar o eliminar en una instalación existente de FreeCAD.


 * Incorpora un sistema de gestión de archivos de guión en Python: FreeCAD cuenta con un intérprete Python interno, y una API que cubre casi cualquier parte de la aplicación, la interfaz, la geometría y la representación de esta geometría en el visualizador 3D. El intérprete puede ejecutar tanto comandos individuales como Archivos de guión (Scripts) complejos, de hecho en Python se pueden programar módulos completos para FreeCAD.


 * Un instalador MSI modular permite instalaciones flexibles en sistemas Windows. También se soportan paquetes para sistemas Ubuntu.

Estructura del documento



 * Entorno deshacer/Rehacer: Todas las acciones admiten los procesos deshacer/rehacer. Hay acceso al historial de acciones, de modo que en un solo paso se pueden deshacer múltiples acciones.


 * Gestión de transacciones: La pila del historial deshacer/rehacer almacena transacciones de documentos y no solo acciones individuales. Lo que permite definir exactamente lo que hay que deshacerse o rehacerse con cada herramienta.


 * Objetos de documento con asociación paramétrica: Todos los objetos en un documento FreeCAD puede ser definido por parámetros. Estos parámetros se pueden modificar sobre la marcha, y los objetos se vuelven a calcular en cualquier momento. La relación entre los objetos también se almacena, por lo que al modificar un objeto también se modifican sus objetos dependientes.


 * Guarda el documento en formato Compuesto (basado en ZIP): Los documentos guardados con FreeCAD con extensión .Fcstd puede contener muchos tipos diferentes de información, tales como la geometría, las secuencias de comandos o iconos en miniatura.

Interfaz de usuario

 * Interfaz gráfica de usuario (GUI) totalmente configurable/programable por medio de scripts. El interfaz de FreeCAD, basado en Qt es totalmente accesible a través del intérprete de Python. Aparte de las funciones simples que FreeCAD proporciona a los entornos de trabajo, todo el entorno Qt es también accesible, permitiendo cualquier operación desde la interfaz gráfica de usuario, tales como crear, agregar, acoplar, modificar o eliminar widgets y barras de herramientas.


 * concepto de entorno de trabajo (Workbench) : En la interfaz de FreeCAD, las herramientas se agrupan en entornos de trabajo (workbenchs). Esto permite mostrar sólo las herramientas utilizadas para llevar a cabo una cierta tarea, manteniendo el espacio de trabajo ordenado y acondicionado, y que la aplicación se cargue rápidamente.


 * Incorpora una consola de Python con resaltado de sintaxis, autocompletado y búscador (browser) de clases: Los comandos de Python pueden ser introducidos directamente en FreeCAD y los resultados aparecen de inmediato. Permitiendo que los programadores puedan probar la funcionalidad sobre la marcha, explorar el contenido de los módulos y aprender fácilmente sobre el funcionamiento interno de FreeCAD.


 * La interacción del usuario refleja "eco" en la consola: Todo lo que hace el usuario en la interfaz de FreeCAD ejecuta código python, que se puede ver en la consola y grabarse en macros.


 * Grabación y edición completa de macros: Los comandos Python emitidos cuando el usuario manipula la interfaz GUI se pueden grabar, editar si fuera necesario, y guardarlos para su reproducción posterior.


 * Miniaturas Thumbnailer  (De momento solo en sistemas Linux): Los iconos de archivos de FreeCAD muestran el contenido del fichero en la mayoría de las aplicaciones de gestión de archivos, como por ejemplo el Nautilus de GNOME.

Características específicas de la aplicación
La funcionalidad de FreeCAD está dividida en módulos, cada uno dedicado a un tipo especial de datos y tareas:

Módulo de Mallas (Mesh)



 * El Módulo de Mallas se ocupa de las mallas 3D (meshes). Está destinado básicamente a la importación, adaptación y conversión a FreeCAD de las mallas generadas por otros programas, así como a la exportación en formato tipo malla de la geometría FreeCAD. Pero FreeCAD también cuenta con otros tipos de geometría mucho más avanzados que las mallas.


 * Creación de Primitivas (caja, esfera, cilindro, etc),  "copia equidistante" (offset)  (trivial o after Jung/Shin/Choi) o operaciones booleanas (unión, intersección, diferencia)


 * Importar de los siguientes formatos: ASCII o binario STL (Stereo lithography format) (*.stl, *.ast), el formato OBJ (*.obj), soporte limitado de NASTRAN (*.nas), mallas de Open Inventor (*.iv), y mallas nativas del kernel de FreeCAD (*.bms)


 * Exportar de los siguientes formatos: ASCII o binario STL (Stereo lithography format) (*.stl, *.ast), el formato OBJ (*.obj), soporte limitado de NASTRAN (*.nas, *.brl), mallas VRML (*.wrl), mallas nativas del kernel de FreeCAD (*.bms), mallas como módulo de Python (*.py)


 * Herramientas para chequeo y reparación de mallas: Prueba de conversión en sólido, detección de elementos duplicados, comprobación de auto-interseccion, relleno de huecos y orientacion uniforme.


 * Extensa API de programación en Python.

Croquizado 2D

 * creación gráfica de elementos simples de geometría plana tales como líneas, curvas, rectángulos, arcos o círculos en cualquier plano del espacio 3D


 * Anotaciones como textos o cotas dimensionales


 * Operaciones de manipulación gráfica tales como desplazar, rotar, escalar, simetría, copia equidistante (offset) o conversión de formas, en cualquier plano del espacio 3D


 * Importar yExportar de los siguientes formatos: Autodesk's Drawing Exchange Format (*.dxf), formato Open Cad (*.oca, *.gcad) y SVG (*.svg)

CAD



 * El Módulo de piezas se ocupa de todo lo relacionado con el modelado CAD y las estructuras de datos CAD. La funcionalidad de CAD está en intenso desarrollo (ver los proyectos Módulo de piezas y Módulo de ensamblajes en el Mapa de desarrollo). El Módulo de piezas trabaja con geometría de alto nivel de Open CASCADE.


 * Formas paramétricas primitivas como cajas, esferas, cilindros, conos o toros.


 * Componentes topológicos como vertices, bordes, contornos yplanos (por medio de programación en Python).


 * Modelado con extrusión o revolución, secciones yredondeos.


 * Operaciones Booleanas como unión, diferencia e intersección.


 * Extensa API de programación en Python.


 * Importar yExportar en los siguientes formatos: STEP piezas y ensamblajes (*.stp,*.step), modelos IGES (*.igs, *.iges) y BRep (*.brp), el formato nativo de nuestro núcle de CAD Open CASCADE.

Módulo de Renderizado

 * El Módulo de renderizado permite exportar la geometría de FreeCAD a otros programas de renderizado para generar imagenes de alta calidad. De momento, solo está soportado POV-Ray. El módulo actualmente permite la creación de una hoja de render, y añadir geometría a esa hoja de render para exportar a un archivo de POV-Ray.

Módulo de Planos

 * El Módulo de Planos permite exportar vistas de la geometría 3D a un documento 2D SVG. Permite crear una hoja de dibujo a partir de una plantilla SVG existente, e incorporar vistas en esa hoja de dibujo. Posteriormente la hoja puede ser guardada como un archivo SVG.

Módulo de Mecanizado (CAM)

 * El Módulo de Mecanizado (CAM) está dedicado a tareas de mecanizado industrial, como el fresado. Este módulo está en una etapa de desarrollo inicial y, de momento está básicamente orientado al Conformado incremental. Aunque hay algunos algoritmos para planificación de trayectorias de mecanizado, aún no son operativos para el usuario final.