Feature list/pt

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

 * Versão 0.11 - março 2011
 * Versão 0.12 - dezembro 2011
 * Versão 0.13 - janeiro 2013
 * Versão 0.14 - março 2014
 * Versão 0.15 - março 2015
 * Versão 0.16 - Q1 2016

Recursos Principais

 * [[Image:Feature1.jpg|left]] Um completo geometry kernel baseado na tecnologia Open CASCADE permite operações 3D complexas em vários tipos de formas complexas, com suporte nativo para conceitos como brep, nurbs curves e superficies, um vasto leque de entidades geométricas, operações boleanas e "fillets", e suporte interno dos formatos STEP e IGES


 * [[Image:Feature3.jpg|left]] Um Modelo totalmente paramétrico. Todos os objetos FreeCAD são paramétricos de modo nativo, o que significa que as suas formas podem ser baseadas em propriedades ou mesmo dependentes de outros objetos, todas as alterações são recalculadas em tempo real, e gravadas na lista de  "undo/redo". Novos tipos de objetos podem ser adicionados facilmente, e até mesmo totalmente programados em Python


 * [[Image:Feature4.jpg|left]] Arquitetura modular que permite a utilização de "plugins" (módulos) para acrescentar funcionalidade à aplicação principal. Estas extensões podem ser tão complexas como novas aplicações completas programadas em C++ ou tão simples como Python scripts ou macros gravados automaticamente. O utilizador tem acesso completo a partir do interprete de Python interno, "macros" ou "scripts" externos, a praticamente qualquer parte do FreeCAD, seja criação e transformação de geometria, ou a representação 2D ou 3D dessa geometria (scenegraph) ou até a interface do FreeCAD


 * [[Image:Feature5.jpg|left]] Importar/exportar para formatos standard como sejam STEP, IGES, OBJ, STL, DXF, SVG, STL, DAE, IFC ou OFF, NASTRAN, VRML além do Formato de ficheiro Fcstd nativo do FreeCAD's. O nivel de compatibilidade entre o FreeCAD e um determinado formato de ficheiro pode variar, uma vez que isso depende do modulo que o implementa.


 * [[Image:Feature7.jpg|left]] Uma Bancada de trabalho Esboço (Sketcher) com resolvedor de restrições, permite esboçar formas 2D com geometria-restringida. O "sketcher" correntemente permite construir vários tipos de geometria restringida, e usá-la como base para construir outros objetos em FreeCAD.


 * [[Image:Feature9.jpg|left]] Um módulo Robot simulation que permite estudar os movimentos robotizados. O módulo robot já possui uma interface gráfica extensa que permite um fluxo de trabalho inteiramente gráfico.


 * [[Image:Feature8.jpg|left]] Um módulo Folhas de desenho que permite inserir vistas 2D dos modelos 3D numa folha de desenho. Este módulo produz folhas em SVG ou PDF prontas a exportar. Este módulo encontra-se ainda pouco desenvolvido mas já possui recursos que permitem poderosas funcionalidades Python.


 * [[Image:Feature-raytracing.jpg|left]] Um módulo Renderização capaz de exportar objetos 3D para renderizar com renderizadores externos. De momento apenas suporta povray e LuxRender, mas espera-se que venha a ser extendido com outros renderizadores no futuro.


 * [[Image:Feature-arch.jpg|left]] Um Módulo Arquitetura que permite um fluxo de trabalho tipo-BIM, com compatibilidade IFC. A criação do módulo de Arquitetura é amplamente discutido pela comunidade aqui.

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


 * Operações boleanas (união, diferença, interseção)


 * 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

 * [[Image:Feature-assembly.jpg|left]] Um modulo de Assemblagem (montagem) que permite trabalhar com múltiplos projetos, múltiplas formas, múltiplos documentos, múltiplos ficheiros, múltiplas relações...


 * [[Image:Feature-CAM.jpg|left]] Um módulo CAM dedicado a maquinação mecânica como fresagem, e será capaz gerar, visualizar e ajustar G code. Este módulo está correntemente em fase de planeamento.

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