Feature list/pt: Difference between revisions

From FreeCAD Documentation
No edit summary
(Updating to match new version of source page)
 
(133 intermediate revisions by 7 users not shown)
Line 1: Line 1:
<languages/>
ATENÇAO: esta pagina esta em construçao
{{Docnav
|[[About_FreeCAD|About FreeCAD]]
|[[Installing_on_Windows|Installing on Windows]]
}}


<div class="mw-translate-fuzzy">
Este é uma lista extensa mas incompleta das funcionalidades do FreeCAD. Se quiser saber o que está planeado para o futuro veja o [[Development roadmap]](em ingles); para uma vista rápida os [[Screenshots]] são uma boa ideia.
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>


{{TOCright}}
== Release notes ==


<span id="Release_notes"></span>
* [[Release notes 011|Release 0.11]]
== Notas da Versão ==


<div class="mw-translate-fuzzy">
== Características Gerais ==
* [[Release notes 0.11|Versão 0.11]] - março 2011
* [[Release notes 0.12|Versão 0.12]] - dezembro 2011
* [[Release notes 0.13|Versão 0.13]] - janeiro 2013
* [[Release notes 0.14|Versão 0.14]] - março 2014
* [[Release notes 0.15/pt|Versão 0.15]] - março 2015
* [[Release notes 0.16/pt|Versão 0.16]] - abril 2016
* [[Release notes 0.17/pt|Versão 0.17]] - abril 2018
</div>


<span id="Key_features"></span>
=== Aplicação Base ===
== Recursos Principais ==


<div class="mw-translate-fuzzy">
[[Image:Freecad09-thumbnail.jpg|300px|right]]
* [[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: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 [[Power users hub/pt|Python scripts]] ou [[macros/pt|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 [[Topological data scripting/pt|criação e transformação de geometria]], ou a representação 2D ou 3D dessa geometria ([[scenegraph/pt|scenegraph]]) ou até a [[PySide/pt|interface do FreeCAD]] {{clear}}
* [[Image:Feature5.jpg|left]] Importar/exportar para '''formatos standard''' como sejam [http://en.wikipedia.org/wiki/ISO_10303 STEP], [http://en.wikipedia.org/wiki/IGES IGES], [http://en.wikipedia.org/wiki/Obj OBJ], [http://en.wikipedia.org/wiki/STL_%28file_format%29 STL], [http://en.wikipedia.org/wiki/Dxf DXF], [http://en.wikipedia.org/wiki/Svg SVG], [http://en.wikipedia.org/wiki/STL_(file_format) STL], [http://en.wikipedia.org/wiki/COLLADA DAE], [http://en.wikipedia.org/wiki/Industry_Foundation_Classes IFC] ou [http://people.sc.fsu.edu/~jburkardt/data/off/off.html OFF], [http://en.wikipedia.org/wiki/NASTRAN NASTRAN], [http://en.wikipedia.org/wiki/VRML VRML] além do [[Fcstd file format/pt| 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.{{clear}}
* [[Image:Feature7.jpg|left]] Uma [[Sketcher Workbench/pt| 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.{{clear}}
* [[Image:Feature9.jpg|left]] Um módulo [[Robot Workbench/pt|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.{{clear}}
* [[Image:Feature8.jpg|left]] Um módulo [[Drawing Workbench/pt|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.{{clear}}
* [[Image:Feature-raytracing.jpg|left]] Um módulo [[Raytracing Workbench/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 Workbench/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>


<span id="General_features"></span>
*'''O FreeCAD é multiplataforma'''. Corre e funciona exatamente da mesma maneira nas plataformas Windows, Linux e Mac OSX.
<div class="mw-translate-fuzzy">
== Recursos Gerais ==
</div>


<div class="mw-translate-fuzzy">
*'''O FreeCAD é uma aplicação completamente gráfica'''. O interface gráfico é baseado na popular arquitetura [http://www.qtsoftware.com/ Qt] e o processamento das vistas 3D é baseado na biblioteca [http://pt.wikipedia.org/wiki/Open_Inventor Open Inventor], permitindo um processamento eficiente u uma representação da cena (scene graph representation) muito acessível.
* '''FreeCAD é multiplataforma'''. Executa-se e comporta-se exactamente da mesma maneira em Windows, Linux e MacOS.
</div>


<div class="mw-translate-fuzzy">
*'''O FreeCAD também corre como uma ferramenta da linha de comandos''', com consumo reduzido de recursos. No modo de linha de comandos, o FreeCAD corre sem o interface gráfico, mas com todas as suas ferramentas geométricas. Pode ser usado, por exemplo, como um servidor para produzir conteúdos para outras aplicações.
* '''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">
*'''O FreeCAD pode ser importado como um [[Embedding FreeCAD|módulo Python]]''', seja como parte de outras aplicações capazes de correr scripts python ou como uma série de comandos numa consola python. Como no modo de linha de comandos, o interface gráfico não está disponível, mas é possível aceder a todas as ferramentas geométricas.
* '''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">
*'''Arquitetura Plugin/Módulo para posterior carregamento de funcionalidades/dados'''. O FreeCAD encontra-se dividido entre um programa base e módulos, que são carregados apenas quando necessário. Quase todas as ferramentas e tipos de geometria estão incluídos em módulos. Os módulos funcionam como plugins, e podem ser adicionados ou removidos a uma instalação existente do FreeCAD.
* '''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">
*'''Arquitetura de scripting incluída'''. O FreeCAD inclui um intérprete de [http://www.python.org/ Python], e um [http://pt.wikipedia.org/wiki/Api API] que abrange praticamente todas as áreas do programa, o interface, a geometria e a representação da geometria na janela 3D. O intérprete pode correr desde programas individuais até scripts complexos; de facto, é possível programar módulos completos em Python.
* '''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">
*'''Um instalador MSI modular'''. Permite instalações flexíveis em sistemas Windows. Pacotes para Ubuntu também são mantidos.
* '''"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">
=== Estrutura dos Documentos 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.
</div>


<div class="mw-translate-fuzzy">
[[Image:Freecad-vista01.jpg|300px|right]]
* '''Criação de primitivas paramétricas''' (caixas, esferas, cilindros, etc)
</div>


<div class="mw-translate-fuzzy">
*'''Arquitectura Undo/Redo''': Todas as operações podem ser desfeitas/feitas, com acesso à sequencia de operações anteriores, de maneira que é possível desfazer várias operações ao mesmo tempo.
* '''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">
*'''Gestão de transações''': A sequencia de operações desfazer/fazer guarda as transações no documento a não apenas ações individuais, permitindo a cada ferramenta definir exatamente o que deve ser desfeito ou refeito.
* '''[http://en.wikipedia.org/wiki/Constructive_solid_geometry Operações boleanas]''' (união, diferença, interseção)
</div>


<div class="mw-translate-fuzzy">
*'''Objetos do documento associativos paramétricos''': Todos os objetos num documento FreeCAD podem ser definidos por parâmetros. Esses parâmetros podem ser modificados em tempo real, e recalculados em qualquer momento. A relação entre objetos também é guardada, assim, modificar um objeto também modifica os objetos dependentes.
* 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">
*'''Formato compósito (baseado em compressão ZIP)''': os documentos guardados com a extensão .[[fcstd file format|fcstd]] podem conter muitos tipos diferentes de informação, por exemplo, geometria, scripts ou imagens.
* Modelação com '''extrusão ou revolução, secções''' e '''boleados''' (fillets).
</div>


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


<div class="mw-translate-fuzzy">
*'''Interface Gráfico completamente configurável/programável'''. O interface baseado em [http://www.qtsoftware.com Qt] é completamente acessível através do intérprete de Python. Para além de todas as funções fornecidas pelo FreeCAD às workbenches, a arquitetura QT está também acessível, permitindo qualquer operação no [http://pt.wikipedia.org/wiki/Interface_gr%C3%A1fica_do_utilizador GUI], tal como criação, adição, modificação ou remoção de [http://pt.wikipedia.org/wiki/Widget widgets] e barras de ferramentas.
* '''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">
*'''Conceito de workbenches''': No interface do FreeCAD, as ferramentas são agrupadas em [[workbenches]](bancadas). Isto permite mostrar apenas as ferramentas necessárias para realizar uma certa tarefa, mantendo a área de trabalho organizada e funcional, e o programa com um tempo de iniciação curto.
* '''Anotações''' como textos ou cotas dimensionais
</div>


<div class="mw-translate-fuzzy">
*'''Consola Python incluída''' com realce de sintaxe, '''autocomplete''' e explorador de classes: os comandos Python podem ser invocados diretamente no FreeCAD e devolver resultados imediatamente, permitindo aos autores de scripts testar a funcionalidade em tempo real, explorar os conteúdos dos módulos e conhecer o funcionamento do FreeCAD.
* "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">
*'''Interações do utilizador refletidas na consola''': Todo o que o utilizador faz no interface executa código Python, que pode ser mostrado na consola e guardado na forma de macros.
* '''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">
*'''Gravação e edição de macros completa''': Os comandos Python invocados quando o utilizador usa o interface podem ser guardados, alterados se necessário, e guardados para seres reproduzidos depois.
* '''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">
*'''Miniaturas''' (neste momento apenas em Linux): O documento FreeCAD mostra os conteúdos do ficheiro na maioria dos gestores de ficheiros como o Nautilis do Gnome.
* '''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">
== Caraterísticas específicas do programa ==
* '''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">
A funcionalidade do FreeCAD está separada em módulos, cada um lida com tipos de dados e aplicações especiais:
* '''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">
===[[Image:Workbench_Mesh.png]] [[Mesh Module|Meshes]] ===
* '''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">
[[Image:Screenshot_mesh.jpg|300px|right]]
* '''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">
* O [[Mesh Module|Módulo de Malhas]] lida com malhas 3D. Serve principalmente para a importação, reparação e conversão de malhas geradas por software externo, e a conversão de geometria FreeCAD para malhas. O FreeCAD em si fornece formas geométricas muito mais avançadas do que malhas.
* '''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">
* '''Criação de Primitivas''' (caixa, esfera, cilindro, etc), '''offset''' (trivial ou de Jung/Shin/Choi) ou '''operações booleanas''' (adição, corte, interseção)
* '''Instalador MSI modular''' permite uma instalação flexível em sistemas baseados em Windows. Também são disponibilizados pacotes para sistemas Ubuntu.
</div>


==Extra Workbenches ==
*'''Importação''' dos formatos seguintes: formato [http://en.wikipedia.org/wiki/STL_%28file_format%29 STL] ASCII ou binário ('''*.stl, *.ast'''), formato [http://en.wikipedia.org/wiki/Obj OBJ] ('''*.obj'''), suporte [http://en.wikipedia.org/wiki/NASTRAN NASTRAN] limitado ('''*.nas'''), malhas [http://en.wikipedia.org/wiki/Open_Inventor Open Inventor] ('''*.iv'''), e malha nativa do FreeCAD ('''*.bms''')


<div class="mw-translate-fuzzy">
*'''Exportação''' dos formatos seguintes: formato [http://en.wikipedia.org/wiki/STL_%28file_format%29 STL] ASCII ou binário ('''*.stl, *.ast'''), formato [http://en.wikipedia.org/wiki/Obj OBJ] ('''*.obj'''), suporte [http://en.wikipedia.org/wiki/NASTRAN NASTRAN] limitado ('''*.nas'''), malhas [http://en.wikipedia.org/wiki/Open_Inventor Open Inventor] ('''*.iv'''), e malha nativa do FreeCAD ('''*.bms'''), malhas [http://en.wikipedia.org/wiki/VRML VRML] ('''*.wrl''') e malhas como módulos Python ('''*.py''')
==Bancadas de trabalho Extra==
Utilizadores avançados criaram várias [[external workbenches/pt|Bancadas de trabalho externas]] personalizadas.
</div>


*Ferramentas de '''Teste e reparação''' de malhas: teste de solidez, teste '''non-two-manifolds''', teste de autointerseção, preenchimento de furos e orientação uniforme.


<div class="mw-translate-fuzzy">
*'''API de [[Mesh Scripting|scripting Python]] extensivo.'''
{{docnav/pt|[[About FreeCAD/pt|Visão Geral]]|[[Install on Windows/pt|Instalação em Windows]]}}
</div>


{{Userdocnavi{{#translation:}}}}
===[[Image:Workbench_Draft.png]] [[Draft Module|2D Drafting]] ===
[[Category:User Documentation{{#translation:}}]]

*Criação gráfica de '''geometria planar simples''' como linhas, arames, retângulos, arcos ou círculos em qualquer plano no espaço 3D

*'''Anotações como textos ou dimensões

*'''Operações de modificação''' gráficas como translação, rotação, escala, espelhamento, offset e conversão de forma, em qualquer plano do espaço 3D

*'''Importar''' e '''Exportar''' os seguintes formatos: Autodesk's Drawing Exchange Format ('''*.dxf'''), Open Cad Format ('''*.oca, *.gcad''') e SVG ('''*.svg''')

===[[Image:Workbench_Part.png]] [[Part Module|CAD]] ===

[[Image:Part_BooleanOperations.png|300px|right|Um exemplo de união, interseção e diferença]]

*O [[Part Module]] lida com tudo à volta da modelação CAD e das estruturas de dados CAD. A funcionalidade CAD está em desenvolvimento (ver o [[PartDesign_project]] e [[Assembly_project]] no [[Development_roadmap]]). O [[Part Module]] funciona com geometria [http://en.wikipedia.org/wiki/Open_CASCADE Open CASCADE] de alto nível.

*'''Formas primitivas paramétricas''' como caixas, esferas, cilindros e toros.

*Componentes topológicos como '''vértices, arestas, arames''' e ''' planos''' (através de scripts Python).

*Modelação com '''extrusões''' lineares ou de revolução, '''secções''' e '''chamfros'''.

*'''[http://en.wikipedia.org/wiki/Constructive_solid_geometry operações Booleanas]''' como '''união''', '''diferença''' e '''interseção'''.

*'''[[Topological_data_scripting|API de scripting Python]] extensivo'''.

*'''Importação''' e '''Exportação''' dos seguintes formatos: peças e assemblies [http://en.wikipedia.org/wiki/Standard_for_the_Exchange_of_Product_model_data STEP] ('''*.stp,*.step'''), modelos [http://en.wikipedia.org/wiki/IGES IGES] ('''*.igs, *.iges''') e BRep ('''*.brp'''), o formato nativo da biblioteca [http://en.wikipedia.org/wiki/Open_CASCADE Open CASCADE].

Latest revision as of 22:02, 14 April 2023

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.

Extra Workbenches

Bancadas de trabalho Extra

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