Lista de funcionalidades

From FreeCAD Documentation
Revision as of 21:30, 2 March 2017 by FuzzyBot (talk | contribs) (Updating to match new version of source page)

Esta é uma lista extensiva, ainda que incompleta dos recursos que o FreeCAD disponibiliza. Se quiser ter uma ideia de como será o FreeCAD no futuro consulte Development roadmap para uma rápida visão geral do que vem aí. Além disso, a consulta de Screenshots pode ser interessante.

Notas da Versão

Recursos Principais

  • A complete Open CASCADE Technology-based geometry kernel allowing complex 3D operations on complex shape types, with native support for concepts like brep, nurbs curves and surfaces, a wide range of geometric entities, boolean operations and fillets, and built-in support of STEP and IGES formats
  • A full parametric model. All FreeCAD objects are natively parametric, which means their shape can be based on properties or even depend on other objects, all changes being recalculated on demand, and recorded by the undo/redo stack. New object types can be added easily, that can even be fully programmed in Python
  • A modular architecture that allow plugins (modules) to add functionality to the core application. Those extensions can be as complex as whole new applications programmed in C++ or as simple as Python scripts or self-recorded macros. You have complete access from the Python built-in interpreter, macros or external scripts to almost any part of FreeCAD, being geometry creation and transformation, the 2D or 3D representation of that geometry (scenegraph) or even the FreeCAD interface
  • Import/export to standard formats such as STEP, IGES, OBJ, STL, DXF, SVG, STL, DAE, IFC or OFF, NASTRAN, VRML in addition to FreeCAD's native Fcstd file format. The level of compatibility between FreeCAD and a given file format can vary, since it depends on the module that implements it.
  • A Sketcher with constraint-solver, allowing to sketch geometry-constrained 2D shapes. The sketcher currently allows you to build several types of constrained geometry, and use them as a base to build other objects throughout FreeCAD.
  • A Robot simulation module that allows to study robot movements. The robot module already has an extended graphical interface allowing GUI-only workflow.
  • A Drawing sheets module that permit to put 2D views of your 3D models on a sheet. This modules then produces ready-to-export SVG or PDF sheets. The module is still sparse but already features a powerful Python functionality.
  • A Rendering module that can export 3D objects for rendering with external renderers. Currently only supports povray and LuxRender, but is expected to be extended to other renderers in the future.
  • An Architecture module that allows BIM-like workflow, with IFC compatibility.
  • Path module dedicated to mechanical machining like milling (CAM), and is able to output, display and adjust G code.

Recursos Gerais

  • FreeCAD is multi-platform. It runs and behaves exactly the same way on Windows Linux and macOS platforms.
  • FreeCAD é uma aplicação totalmente GUI. O FreeCAD conta com uma completa interface gráfica de utilizador baseada no famoso framework Qt, com um visualizador 3D baseado em Open Inventor, que permite uma rápida renderização das cenas 3D e uma representação gráfica muito acessível.
  • FreeCAD também se executa como uma aplicação de linha de comandos, com menos requisitos de memória. No modo de linha de comandos, o FreeCAD corre sem a sua interface gráfica, mas com todas as ferramentas de geometria. Pode ser, por exemplo, utilizado como servidor para produzir conteúdos para outras aplicações.
  • FreeCAD can be imported as a Python module, inside other applications that can run Python scripts, or in a Python console. Like in console mode, the interface part of FreeCAD is unavailable, but all geometry tools are accessible.
  • Conceito de bancada de trabalho: No interface do FreeCAD, as ferramentas estão agrupadas em Bancadas de trabalho. Isto permite mostrar apenas as ferramentas necessárias para realizar uma determinada tarefa, mantendo o espaço de trabalho arrumado e disponível, e um arranque rápido da aplicação.
  • "Framework" de Plugin/Módulos para carregamento retardado de recursos/tipos-de-dados. O FreeCAD está dividido em aplicações principais e módulos, que são carregados apenas quando são necessários. Quase todas as ferramentas e tipos de geometria são armazenados em módulos. Os módulos comportam-se como plugins, e podem ser adicionados ou removidos à instalação existente do FreeCAD.
  • Objetos de documento com associação paramétrica: Todos os objetos num documento FreeCAD podem ser definidos por parâmetros. Esses parâmetros podem ser modificados dinamicamente, e recalculados a qualquer momento. A relação entre entre objetos também é guardada, pelo que ao modificar um objeto também se modificam os objetos de pendentes.
  • Criação de primitivas paramétricas (caixas, esferas, cilindros, etc)
  • Graphical modification operations like translation, rotation, scaling, mirroring, offset (trivial or after Jung/Shin/Choi) or shape conversion, in any plane of the 3D space
  • Criação gráfica de elementos simples de geometria plana tais como linhas, polilinhas, retângulos, arcos ou círculos em qualquer plano do espaço 3D
  • Modelação com extrusão ou revolução, secções e boleados (fillets).
  • Topological components like vertices, edges, wires and planes (via Python scripting).
  • Testar e reparar ferramentas para malhas: Testar sólidos, Testar malhas não solidas (non-two-manifolds), teste de auto-interseção, preenchimento de buracos e orientação uniforme.
  • Anotações como textos ou cotas dimensionais
  • "Framework" desfazer/Refazer: Todas as acções admitem os processos desfazer/refazer, com acesso ao historial de ações, de maneira que num único passo podem-se desfazer múltiplas acções.
  • Gestão de transacções: A lista do historial desfazer/refazer armazena transacções de documentos e não só acções individuais. O que permite definir exactamente o que há que se desfazer ou se refazer com a cada ferramenta.
  • Framework de programação incorporada: O FreeCAD conta com um interprete Python incorporado, e uma API que cobre quase qualquer parte da aplicação, o interface, a geometria e a representação dessa geometria no visualizador 3D. O interprete pode correr desde simples comandos até scripts complexos, de facto mesmo módulos inteiros podem ser programados completamente em Python.
  • Consola Python incorporada com destaques de sintaxe, auto-completar e navegador de classe: Os comandos Python podem ser introduzidos diretamente no FreeCAD e os resultados surgem de imediato, permitindo escrita de scripts para testar funcionalidades em tempo real, explore o conteúdo dos módulos e aprenda facilmente sobre o interior do FreeCAD.
  • User interaction mirroring on the console: Everything the user does in the FreeCAD interface executes Python code, which can be printed on the console and recorded in macros.
  • Full macro recording & editing: The Python commands issued when the user manipulates the interface can then be recorded, edited if needed, and saved to be reproduced later.
  • Gravação de documento em formato composto (basedo em ZIP): Os documentos do FreeCAD salvos com a extensão .fcstd podem conter diferentes tipos de informação, como geometria, scripts ou ícones de miniatura. O ficheiro .fcstd é ele próprio um contentor zip, pelo que os ficheiros gravados pelo FreeCAD já estão comprimidos.
  • Fully customizable/scriptable Graphical User Interface. The Qt-based interface of FreeCAD is entirely accessible via the Python interpreter. Aside from the simple functions that FreeCAD itself provides to workbenches, the whole Qt framework is accessible too, allowing any operation on the GUI, such as creating, adding, docking, modifying or removing widgets and toolbars.
  • Thumbnailer (Linux systems only at the moment): The FreeCAD document icons show the contents of the file in most file manager applications such as Gnome's Nautilus.
  • Instalador MSI modular permite uma instalação flexível em sistemas baseados em Windows. Também são disponibilizados pacotes para sistemas Ubuntu.

Em desenvolvimento

  • An Assembly module that allows to work with multiple projects, multiple shapes, multiple documents, multiple files, multiple relationships... This module is currently in planning state.

Bancadas de trabalho Extra

Utilizadores avançados criaram várias Bancadas de trabalho externas personalizadas.