Documentação para desenvolvedores
Este é o lugar para vir se você quiser contribuir para o desenvolvimento do programa FreeCAD.
Estas páginas estão em estágio inicial de desenvolvimento. Se você não conseguir encontrar as informações que procura ou se encontrou informações úteis em algum lugar para o qual não fornecemos links, por favor, deixe um comentário no fórum e alguém irá investigar (ou, se estiver se sentindo corajoso, por que não editar esta página diretamente!).
Documentação do desenvolvedor
A documentação do desenvolvedor compreende as seguintes seções:
Compilação do FreeCAD
- repositório Github. Se você é novo no git, leia Gerenciamento de código-fonte
- Compilar com Docker
- Compilando no Windows
- Compilando no Linux
- Compilando no MacOS
- Detalhes da licença sobre as licenças do FreeCAD
- Bibliotecas de Terceiros
- Ferramentas de terceiros
- Inicialização e Configuração
- Documentação fonte
- Use o bug tracker quando você tiver um problema ou achar que pode ter encontrado um bug
Empacotamento
Empacotamento consiste em pegar os binários compilados e os arquivos fonte Python do FreeCAD, e distribuí-los para uso em um sistema específico.
Construir ferramentas de suporte
- A Ferramenta de Construção FreeCAD
- Adicionando um módulo de aplicativo ao FreeCAD
- Depuração FreeCAD
- Teste FreeCAD
- Compilando (Acelerando) FreeCAD
- Integração Contínua
Modificando o FreeCAD
- Compreendendo O código-fonte do FreeCAD
- Enviando patches
- Adicione Comandos de interface gráfica ao FreeCAD ou a uma bancada de trabalho
- Branding ou como dar ao FreeCAD uma aparência única
- Artwork que fizemos para o FreeCAD, que você pode reutilizar livremente
- Diretrizes de arte padrões para ícones
- Tradução do FreeCAD
- Módulos python extras, ou como estender a funcionalidade python dentro do FreeCAD
- Google Summer of Code participe por meio do programa de suporte estudantil do Google
- Ajuste fino mostra diferentes opções e opções de parâmetros que podem superar problemas
- Envolvendo uma classe C++ em Python mostra como criar o wrapper Python para uma classe C++
- Lista de verificação para adicionar um recurso a um ambiente de trabalho C++ fornece uma ajuda para contribuidores.
Guia do desenvolvedor do módulo
FreeCAD Mod Dev Guide: Este é um e-book escrito no github, bifurque e envie uma solicitação pull para contribuir.
Capítulos:
- Visão geral e arquitetura de software
- Estrutura do código-fonte
- Módulo Base e App
- Módulo Gui
- Envolvimento do Python
- Projeto modular
- Análise da fonte do módulo Fem (mistura de C++ e Python)
- Desenvolvimento do módulo CFD (Python puro)
- Teste e depuração do módulo
- Contribuição de código com o git
A amostra mais recente do PDF pode ser baixada na pasta de PDF deste repositório git.
Internos
Documentação do OpenCascade
OpenCascade é uma plataforma de desenvolvimento de software para modelagem 3D de superfícies e sólidos, troca de dados CAD e visualização, principalmente na forma de bibliotecas em C++.
- Tutoriais de Roman Lygin
- Documentação on-line completa
- Manual de referência
- O wiki openCascade (atualmente contendo ?? spam chinês)
Formato de arquivo
Formato de arquivo FCStd. Os arquivos criados com FreeCAD são arquivos .zip
que incluem a geometria BREP, bem como dados XML que descrevem o documento.
Solucionador de esboços
- Sketcher Solver Architecture Booklet (tópico do fórum), source no GitHub.
- PlaneGCS solver no código-fonte do FreeCAD; arquivos importantes são GCS.cpp e /blob/master/src/Mod/Sketcher/App/planegcs/SubSystem.cpp SubSystem.cpp.
- Várias melhorias recentes no Sketcher.
O solucionador de sketcher não é perfeito, pois há alguns problemas com precisão numérica ao usar valores grandes, consulte Aventura de consertar o solucionador de sketcher para esboços grandes .
O desenvolvimento de uma nova arquitetura de solucionador poderia melhorar a forma como o solucionador é utilizado tanto no Sketcher Workbench, quanto para montagem de corpos 3D. Consulte Reimplementando o solucionador de restrições.
Roteiro
Embora o FreeCAD seja utilizável em certas áreas, ainda está no início de um longo caminho rumo à adoção generalizada no mercado de CAD. Ainda há muito a ser feito para alcançar um estado no qual possamos competir com o software comercial.
Ciclo de desenvolvimento do FreeCAD 1.0
Comunidade
IRC channel ,sincronizado com gitter channel
Créditos

- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Assembly, BIM, CAM, Draft, FEM, Inspection, Material, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework
- Hubs: User hub, Power users hub, Developer hub