Lista de funcionalidades

From FreeCAD Documentation
Revision as of 17:16, 8 November 2016 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 é multiplataforma. Executa-se e comporta-se exactamente da mesma maneira em Windows, Linux e Mac OSX.
  • 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 pode ser importado como um módulo de Python, dentro de outras aplicações que possam executar scripts Python, ou numa consola Python. Tal como no modo consola, a parte do interface do FreeCAD não está disponível, mas todas as ferramentas de geometria ficam acessíveis.
  • 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)
  • Operações de modificação gráficas como translações, rotações, escala, simetria, deslocamento paralelo (offset) (normais ou de acordo com Jung/Shin/Choi) ou conversão de formas, em qualquer plano do espaço 3D
  • 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).
  • Componentes topológicos como vértices, arestas, polilinhas e planos (por programação em Python).
  • 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.
  • Interação do utilizador espelhada na consola: Tudo o que o utilizador faz no interface do FreeCAD executa código python, que pode ser mostrado na consola e gravado em macros.
  • Gravação e edição completa de macros: Os comandos python gerados quando o utilizador manipula a interface podem ser então gravados, editados se necessário, e salvos para serem reproduzidos mais tarde.
  • 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.
  • Interface Gráfica do Utilizador totalmente personalizável/programável. A interface do FreeCAD baseada em Qt é inteiramente acessível pelo interprete python. Além das funções simples que o FreeCAD ele próprio disponibiliza para as bancadas de trabalho, toda a framework Qt está também acessível, permitindo qualquer operação no GUI, como criar, adicionar, ancorar, modificar ou remover "widgets" e barras de ferramentas.
  • Miniaturas (apenas em sistemas Linux neste momento): Os ícones dos documentos do FreeCAD mostram o conteúdo dos ficheiros na maioria dos gestores de ficheiros como por exemplo no nautilus em gnome.
  • 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.