Feature list/es

Esto es una lista extensa (aunque incompleta) de las características que tiene FreeCAD. Si quiere mirar hacia el futuro vea Development roadmap. Para obtener una descripción rápida, un buen punto para empezar es Screenshots.

.

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 GUI. FreeCAD cuenta con un completo 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 escena muy accesible.


 * FreeCAD también se ejecuta como una aplicación de línea de comandos, con una huella de memoria baja. 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 Python module, 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 estaríá 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 los 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 scripting: 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 scripts (guiones de secuencia de comandos) complejos, de hecho en Python se puede 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



 * seguimiento Undo/Redo: todas las acciones admiten el proceso deshacer/rehacer. Hay acceso al historial de acciones, y 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 simples. Eso 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 modificar un objeto también modifica sus objetos dependientes.


 * Guarda el documento en formato Compuesto (ZIP base): 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

 * la interfaz gráfica de usuario (GUI) es totalmente configurable/via 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, todo el entramado Qt es también accesible, permitiendo cualquier operación desde la interfaz gráfica de usuario, tales como crear, agregar, acoplar, modificar o remover widgets y barras de herramientas.


 * concepto de entorno (Workbench) : En la interfaz FreeCAD, las herramientas se agrupan en entornos (workbenchs). Eso 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. Eso permite que los guionistas puedan probar la funcionalidad sobre la marcha, explorar el contenido de los módulos y aprender fácilmente sobre las interioridades 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 pueden 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 después, editarlos, si fuera necesario, y guardarlos para su reproducción posterior.


 * miniaturas Thumbnailer  (por el momento solamente en sistemas Linux): Los iconos de documento 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:

Malla (Mesh)



 * El módulo de malla Mesh Module 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),  "molde" (offset)  (trivial o after Jung/Shin/Choi) o operaciones booleanas (unión, intersección, diferencia)


 * Importar de los siguientes formatos: ASCII o binary STL (Stereo lithography format) (*.stl, *.ast), the OBJ format (*.obj), soporta NASTRAN limitado (*.nas), mallas Open Inventor (*.iv), y mallas FreeCAD native kernel (*.bms)


 * Exportar de los siguientes formatos: ASCII o binary STL (Stereo lithography format) (*.stl, *.ast), the OBJ format (*.obj), soporte limitado de NASTRAN (*.nas, *.brl), VRML meshes (*.wrl), mallas FreeCAD native mesh kernel (*.bms), mallas en formato Python module (*.py)


 * herramientas para chequeo y reparación de mallas: solid test, non-two-manifolds test, comprobación de auto-interseccion, relleno de huecos y orientacion uniforme.


 * Extensive Python scripting API.

Croquizado 2D

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


 * rotulación como textos o acotaciones dimensionales


 * operaciones de manipulación gráfica tales como traslacion, rotacion, escalado, copia espejo, desplazamiento paralelo (offset) o shape conversion, en cualquier plano del espacio 3D


 * Import and Export of the following formats: Autodesk's Drawing Exchange Format (*.dxf), Open Cad Format (*.oca, *.gcad) e SVG (*.svg)

CAD



 * El Part Module se ocupa de todo lo relacionado con CAD modeling and the CAD data structures. The CAD functionality is under heavy development (see the PartDesign_project and Assembly_project in the Development_roadmap). The Part Module works with high-level Open CASCADE geometry.


 * Parametric primitive shapes like box, sphere, cylinder, cone or torus.


 * Topological components like vertices, edges, wires and planes (via python scripting).


 * Modeling with straight or revolution extrusions, sections and fillets.


 * Boolean operations like union, difference and intersection.


 * Extensive Python scripting API.


 * Import and Export of the following formats: STEP parts and assemblies (*.stp,*.step), IGES models (*.igs, *.iges) and BRep (*.brp), the native format of our Open CASCADE CAD kernel.

Raytracing

 * The Raytracing Module permite exportar la geometry de FreeCAD a otros renderers para generar imagenes de alta calidad. De momento, solo está soportada POV-Ray: POV-Ray. The module currently permits the creation of a render sheet, and adding geometry to that render sheet for export to a POV-Ray file.

Drawing (impresión, ploteo)

 * The Drawing Module (impresión o ploteo ) 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.

CAM

 * The Cam Module está dedicado a tareas de mecanizado industrial, como el fresado. This module is at the very beginning and, de momento está básicamente orientado a Incremental Sheet Forming. Although there are some algorithms for toolpath planing, aún no son operativos para el usuario final.