Feature list/pt: Difference between revisions

From FreeCAD Documentation
(Created page with "* '''Consola Python incorporada''' com destaques de sintaxe, autocompletar e navegador de classe: Os comandos Python podem ser introduzidos diretamente no FreeCAD e os resulta...")
(Updating to match new version of source page)
(38 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<languages/>
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/pt|Development roadmap]] para uma rápida visão geral do que vem aí. Além disso, a consulta de [[Screenshots/pt|Screenshots]] pode ser interessante.
{{docnav|About FreeCAD|Install on Windows}}

<div class="mw-translate-fuzzy">
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/pt|Development roadmap]] para uma rápida visão geral do que vem aí. Além disso, a consulta de [[Screenshots/pt|Screenshots]] pode ser interessante.
</div>


== Notas da Versão ==
== Notas da Versão ==


<div class="mw-translate-fuzzy">
* [[Release notes 011|Versão 0.11]] - março 2011
* [[Release notes 011|Versão 0.11]] - março 2011
* [[Release notes 012|Versão 0.12]] - dezembro 2011
* [[Release notes 012|Versão 0.12]] - dezembro 2011
* [[Release notes 013|Versão 0.13]] - janeiro 2013
* [[Release notes 013|Versão 0.13]] - janeiro 2013
* [[Release notes 014|Versão 0.14]] - março 2014
* [[Release notes 014|Versão 0.14]] - março 2014
* [[Release notes 015|Versão 0.15]] - março 2015
* [[Release notes 0.15/pt|Versão 0.15]] - março 2015
* [[Release notes 016|Versão 0.16]] - Q1 2016
* [[Release notes 0.16/pt|Versão 0.16]] - abril 2016
* [[Release notes 0.17/pt|Versão 0.17]] - abril 2018
</div>


== Recursos Principais ==
== Recursos Principais ==


<div class="mw-translate-fuzzy">
* [[Image:Feature1.jpg|left]] Um completo '''geometry kernel''' baseado [http://en.wikipedia.org/wiki/Open_CASCADE 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 {{clear}}
* [[Image:Feature1.jpg|left]] Um completo '''geometry kernel''' baseado [http://en.wikipedia.org/wiki/Open_CASCADE 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 {{clear}}
* [[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 [[Property/pt|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 [[Scripted objects/pt|totalmente programados em Python]]{{clear}}
* [[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 [[Property/pt|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 [[Scripted objects/pt|totalmente programados em Python]]{{clear}}
Line 21: Line 30:
* [[Image:Feature-raytracing.jpg|left]] Um módulo [[Raytracing Module/pt|Renderização]] capaz de exportar objetos 3D para renderizar com renderizadores externos. De momento apenas suporta [http://en.wikipedia.org/wiki/POV-Ray povray] e [http://en.wikipedia.org/wiki/LuxRender LuxRender], mas espera-se que venha a ser extendido com outros renderizadores no futuro.{{clear}}
* [[Image:Feature-raytracing.jpg|left]] Um módulo [[Raytracing Module/pt|Renderização]] capaz de exportar objetos 3D para renderizar com renderizadores externos. De momento apenas suporta [http://en.wikipedia.org/wiki/POV-Ray povray] e [http://en.wikipedia.org/wiki/LuxRender LuxRender], mas espera-se que venha a ser extendido com outros renderizadores no futuro.{{clear}}
* [[Image:Feature-arch.jpg|left]] Um Módulo [[Arch Module/pt|Arquitetura]] que permite um fluxo de trabalho tipo-[http://en.wikipedia.org/wiki/Building_Information_Modeling BIM], com compatibilidade [http://en.wikipedia.org/wiki/Industry_Foundation_Classes IFC]. A criação do módulo de Arquitetura é amplamente discutido pela comunidade [http://forum.freecadweb.org/viewtopic.php?f=10&t=821 aqui].{{clear}}
* [[Image:Feature-arch.jpg|left]] Um Módulo [[Arch Module/pt|Arquitetura]] que permite um fluxo de trabalho tipo-[http://en.wikipedia.org/wiki/Building_Information_Modeling BIM], com compatibilidade [http://en.wikipedia.org/wiki/Industry_Foundation_Classes IFC]. A criação do módulo de Arquitetura é amplamente discutido pela comunidade [http://forum.freecadweb.org/viewtopic.php?f=10&t=821 aqui].{{clear}}
</div>


<div class="mw-translate-fuzzy">
== Recursos Gerais ==
== Recursos Gerais ==
</div>


<div class="mw-translate-fuzzy">
* '''FreeCAD é multiplataforma'''. Executa-se e comporta-se exactamente da mesma maneira em Windows, Linux e Mac OSX.
* '''FreeCAD é multiplataforma'''. Executa-se e comporta-se exactamente da mesma maneira em Windows, Linux e MacOS.
</div>


<div class="mw-translate-fuzzy">
* '''FreeCAD é uma aplicação totalmente GUI'''. O FreeCAD conta com uma completa interface gráfica de utilizador baseada no famoso framework [http://www.qtsoftware.com/ Qt], com um visualizador 3D baseado em [http://en.wikipedia.org/wiki/open_inventor Open Inventor], que permite uma rápida renderização das cenas 3D e uma representação gráfica muito acessível.
* '''FreeCAD é uma aplicação totalmente GUI'''. O FreeCAD conta com uma completa interface gráfica de utilizador baseada no famoso framework [http://www.qtsoftware.com/ Qt], com um visualizador 3D baseado em [http://en.wikipedia.org/wiki/open_inventor Open Inventor], que permite uma rápida renderização das cenas 3D e uma representação gráfica muito acessível.
</div>


<div class="mw-translate-fuzzy">
* '''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 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.
</div>


<div class="mw-translate-fuzzy">
* '''FreeCAD pode ser importado como um [[Embedding FreeCAD/pt|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.
* '''FreeCAD pode ser importado como um [[Embedding FreeCAD/pt|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.
</div>


<div class="mw-translate-fuzzy">
* '''Conceito de bancada de trabalho''': No interface do FreeCAD, as ferramentas estão agrupadas em [[workbenches/pt| 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.
* '''Conceito de bancada de trabalho''': No interface do FreeCAD, as ferramentas estão agrupadas em [[workbenches/pt| 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.
</div>


<div class="mw-translate-fuzzy">
* '''"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.
* '''"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.
</div>


<div class="mw-translate-fuzzy">
* '''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.
* '''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.
</div>


<div class="mw-translate-fuzzy">
* '''Criação de primitivas paramétricas''' (caixas, esferas, cilindros, etc)
* '''Criação de primitivas paramétricas''' (caixas, esferas, cilindros, etc)
</div>


<div class="mw-translate-fuzzy">
* '''Operações de modificação''' gráficas como translações, rotações, escala, simetria, deslocamento paralelo (offset) (normais ou de acordo com [http://www.ann.jussieu.fr/~frey/papers/meshing/Jung%20W.,%20Self-intersection%20removal%20in%20triangular%20mesh%20offsetting.pdf Jung/Shin/Choi]) ou conversão de formas, em qualquer plano do espaço 3D
* '''Operações de modificação''' gráficas como translações, rotações, escala, simetria, deslocamento paralelo (offset) (normais ou de acordo com [http://www.ann.jussieu.fr/~frey/papers/meshing/Jung%20W.,%20Self-intersection%20removal%20in%20triangular%20mesh%20offsetting.pdf Jung/Shin/Choi]) ou conversão de formas, em qualquer plano do espaço 3D
</div>


<div class="mw-translate-fuzzy">
* '''[http://en.wikipedia.org/wiki/Constructive_solid_geometry Operações boleanas]''' (união, diferença, interseção)
* '''[http://en.wikipedia.org/wiki/Constructive_solid_geometry Operações boleanas]''' (união, diferença, interseção)
</div>


<div class="mw-translate-fuzzy">
* 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
* 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
</div>


<div class="mw-translate-fuzzy">
* Modelação com '''extrusão ou revolução, secções''' e '''boleados''' (fillets).
* Modelação com '''extrusão ou revolução, secções''' e '''boleados''' (fillets).
</div>


<div class="mw-translate-fuzzy">
* Componentes topológicos como '''vértices, arestas, polilinhas''' e '''planos''' (por programação em Python).
* Componentes topológicos como '''vértices, arestas, polilinhas''' e '''planos''' (por programação em Python).
</div>


<div class="mw-translate-fuzzy">
* '''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.
* '''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.
</div>


<div class="mw-translate-fuzzy">
* '''Anotações''' como textos ou cotas dimensionais
* '''Anotações''' como textos ou cotas dimensionais
</div>


<div class="mw-translate-fuzzy">
* "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.
* "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.
</div>


<div class="mw-translate-fuzzy">
* '''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.
* '''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.
</div>


<div class="mw-translate-fuzzy">
* '''framework [[Scripting/pt|scripting]] incorporada''': O FreeCAD conta com um interprete [http://www.python.org/ 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.
* '''Framework de [[Scripting/pt|programação]] incorporada''': O FreeCAD conta com um interprete [http://www.python.org/ 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.
</div>


<div class="mw-translate-fuzzy">
* '''Consola Python incorporada''' com destaques de sintaxe, autocompletar e navegador de classe: Os comandos Python podem ser introduzidos diretamente no FreeCAD e os resultados surgem de imediato, permitting scriptwriters to test functionality on the fly, explore the contents of the modules and easily learn about FreeCAD internals.
* '''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.
</div>


<div class="mw-translate-fuzzy">
* '''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.
* '''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.
</div>


<div class="mw-translate-fuzzy">
* '''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 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.
</div>


<div class="mw-translate-fuzzy">
* '''Compound (ZIP based) document save format''': FreeCAD documents saved with .[[fcstd file format|fcstd]] extension can contain many different types of information, such as geometry, scripts or thumbnail icons. The .fcstd file is itself a zip container, so a saved FreeCAD file has already been compressed.
* '''Gravação de documento em formato composto (basedo em ZIP)''': Os documentos do FreeCAD salvos com a extensão .[[fcstd file format|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.
</div>


<div class="mw-translate-fuzzy">
* '''Fully customizable/scriptable Graphical User Interface'''. The [http://www.qtsoftware.com 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.
* '''Interface Gráfica do Utilizador totalmente personalizável/programável'''. A interface do FreeCAD baseada em [http://www.qtsoftware.com 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.
</div>


<div class="mw-translate-fuzzy">
* '''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.
* '''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.
</div>


<div class="mw-translate-fuzzy">
* '''A modular MSI installer''' allows flexible installations on Windows systems. Packages for Ubuntu systems are also maintained.
* '''Instalador MSI modular''' permite uma instalação flexível em sistemas baseados em Windows. Também são disponibilizados pacotes para sistemas Ubuntu.
</div>


== Em desenvolvimento ==
==In development==


<div class="mw-translate-fuzzy">
* [[Image:Feature-assembly.jpg|left]] An [[Assembly project|Assembly]] module that allows to work with multiple projects, multiple shapes, multiple documents, multiple files, multiple relationships...{{clear}}
* [[Image:Feature-assembly.jpg|left]] Um modulo de [[Assembly project|Assemblagem (montagem)]] que permite trabalhar com múltiplos projetos, múltiplas formas, múltiplos documentos, múltiplos ficheiros, múltiplas relações...{{clear}}
* [[Image:Feature-CAM.jpg|left]] A [[Cam Module]] dedicated to mechanical machining like milling, and will be able to output, display and adjust [http://en.wikipedia.org/wiki/G-code G code]. This module is currently in planning state.{{clear}}
</div>


==Bancadas de trabalho Extra==
==Extra Workbenches ==
Power users have created various custom [[external workbenches]].
Utilizadores avançados criaram várias [[external workbenches/pt|Bancadas de trabalho externas]] personalizadas.


{{docnav/pt|[[About FreeCAD/pt|Visão Geral]]|[[Install on Windows/pt|Install on Windows]]}}


{{docnav/pt|[[About FreeCAD/pt|Visão Geral]]|[[Install on Windows/pt|Instalação em Windows]]}}
[[Category:User_Documentation/pt]]

<languages/>
[[Category:User_Documentation/pt|Categoria:Documentação do utilizador]]

Revision as of 12:45, 12 April 2019

About FreeCAD
Install on Windows

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

  • 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
  • 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
  • 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
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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 MacOS.
  • 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

  • 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...

Bancadas de trabalho Extra

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