Developer hub/it



Questo è il posto giusto per contribuire allo sviluppo del software di FreeCAD.

Queste pagine sono in fase iniziale di sviluppo. Se non è possibile trovare le informazioni cercate, o se da altre parti si trovano informazioni utili non collegate, si prega di lasciare un commento nella pagina delle discussioni nel forum in modo che qualcuno se ne possa occupare (oppure, modificare direttamente questa pagina).



Documentazione per gli sviluppatori
La documentazione per gli sviluppatori comprende le seguenti sezioni:



Compilare FreeCAD

 * Github repo. Se sei nuovo su git, leggi Gestione del codice sorgente
 * Compilazione con Docker
 * Compilare in Windows
 * Compilare in Linux
 * Compilare in MacOS
 * Licence details - Dettagli sulle licenze FreeCAD
 * Librerie di terze parti
 * Strumenti di terze parti
 * Avvio e configurazione
 * Documentazione del codice sorgente
 * Usare il bug Tracker quando quando si ha un problema o si pensa di aver trovato un bug

Packaging
Il Packaging consiste nel prendere i binari compilati e i file sorgente di Python di FreeCAD e distribuirli per l'uso in un particolare sistema.


 * Linux packaging
 * Debian development
 * Debian Unstable
 * Git buildpackage
 * Windows packaging
 * MacOS packaging



Costruire Strumenti di Supporto

 * Strumenti per costruire FreeCAD
 * Creare un Ambiente di lavoro a FreeCAD
 * Mettere a punto FreeCAD
 * Testare FreeCAD
 * Compilare FreeCAD in modo veloce
 * Integrazione continua



Modificare FreeCAD

 * Comprendere il Codice sorgente di FreeCAD
 * Inviare patch
 * Aggiungere Funzioni a FreeCAD o a un Ambiente di lavoro
 * Marchiare e Personalizzare, oppure come dare un aspetto uniforme a FreeCAD
 * Materiale grafico creato per FreeCAD, liberamente riutilizzabile
 * Linee guida standard per le icone
 * Tradurre FreeCAD, le voci dell'interfaccia grafica
 * Moduli extra in Python, o come estendere le funzionalità di python all'interno FreeCAD
 * Google Summer of Code get involved via Google's student support program
 * Fine-tuning Mostra varie regolazioni e impostazioni che è possibile utilizzare per perfezionare l'installazione di FreeCAD o per risolvere determinati problemi
 * Wrapping a C++ class in Python mostra come creare il wrapper Python per una classe C++
 * Lista di controllo per l'aggiunta di una caratteristica ad un ambiente C++ fornisce un aiuto per i contributori.


 * Traduzione di un ambiente esterno



Guida per gli sviluppatori del modulo
FreeCAD Mod Dev Guide: Si tratta di un ebook in fase di scrittura su GitHub, si prega di creare una biforcazione e di inviare una richiesta di pull per contribuire.

Capitoli:
 * Overview and Software Architecture
 * Source code structure
 * Base and App module
 * Gui module
 * Python wrapping
 * Modular design
 * Fem module source analysis (mixed C++ and Python)
 * Development of CFD Module (pure Python)
 * Module testing and debugging
 * Contribute code with git

L'ultima anteprima del pdf può essere scaricata dalla cartella dei pdf di questo repo git

Moduli interni


Documentazione di OpenCascade
OpenCascade è una piattaforma di sviluppo software per la modellazione 3D di superfici e solidi, lo scambio di dati CAD e la visualizzazione, principalmente sotto forma di librerie C++.


 * Roman Lygin's tutorials
 * Full Online Documentation
 * Reference Manual
 * Il wiki di openCascade



Formato dei file
Formato dei file FCStd. I file creati con FreeCAD sono file che includono la geometria  BREP, nonché i dati XML che descrivono il documento.



Solutore di Sketcher

 * Sketcher Solver Architecture Booklet (forum thread), source in GitHub.
 * PlaneGCS solver in the FreeCAD source code; important files are GCS.cpp and SubSystem.cpp.
 * Recent Several Sketcher improvements.

Il risolutore di sketcher non è perfetto, in quanto vi sono alcuni problemi con la precisione numerica quando si utilizzano valori elevati, vedere Adventure of fixing sketcher solver for large sketches.

Lo sviluppo di una nuova architettura di risolutore potrebbe migliorare il modo in cui il risolutore viene utilizzato sia in Sketcher, sia per l'assemblaggio di corpi 3D. Vedere Reimplementing constraint solver.

Mappa delle fasi di sviluppo
Anche se già utilizzabile in diverse parti, FreeCAD è solo all'inizio di un lungo cammino nell'ambiente del CAD.

Serve ancora molto lavoro prima che possa competere con i software commerciali.

FreeCAD 1.0 Development Cycle

Community

 * [ircs://irc.libera.chat:6697/freecad IRC channel] ,synchronized with gitter channel
 * Development forum


 * Piano di sviluppo

Crediti
Collaboratori