Feature list/it

Questa è una lista estesa, ma non completa, delle funzionalità (caratteristiche) già implementate in FreeCAD. Se siete interessati a conoscere gli sviluppi futuri è possibile consultare il Piano di sviluppo. Per un approccio sommario alle caratteristiche sono anche disponibili gli screenshot.

Note di rilascio

 * Note di rilascio della versione 0.11 - Marzo 2011
 * Note di rilascio della versione 0.12 - Dicembre 2011
 * Note di rilascio della versione 0.13 - Gennaio 2013
 * Note di rilascio della versione 0.14 - Marzo 2014
 * Note di rilascio della versione 0.15 - Marzo 2015
 * Note di rilascio della versione 0.16 - Aprile 2016
 * Note di rilascio della versione 0.17 - Aprile 2018
 * Note di rilascio della versione 0.18 - Marzo 2019

Funzioni principali

 * [[Image:Feature1.jpg|left]] Un kernel geometrico (nucleo) basato su OpenCasCade permette operazioni complesse su profili di varia natura, anche molto articolati. È presente il supporto nativo al BREP, alle curve e alle superfici NURBS, una vasta gamma di entità geometriche, di operazioni booleane e raccordi, e il supporto interno per i file STEP e IGES.


 * [[Image:Feature3.jpg|left]] Un modellatore interamente parametrico. Tutti gli oggetti di FreeCAD sono nativamente parametrici, il che significa che la loro forma può essere basata sulle proprietà e, quando dipendono da altri oggetti, se subiscono delle modifiche possono essere ricalcolati a richiesta, e registrati dall'albero delle operazioni annulla o ripeti. Possono essere aggiunti facilmente nuovi tipi di oggetti, anche quelli completamente programmati in Python


 * [[Image:Feature4.jpg|left]] Una architettura modulare permette di estendere le funzioni del programma attraverso l'utilizzo dei plugins. Queste estensioni possono essere complesse, come sono le intere nuove applicazioni programmate in C++ o essere semplici, come gli script Python o le macro auto-registrate. Attraverso l'utilizzo della riga di comando integrata nella GUI, è possibile accedere praticamente a tutte le funzionalità del software per mezzo di semplici comandi Python. Si possono creare e/o modificare oggetti geometrici, interagire con l'ambiente di lavoro o addirittura personalizzare l'interfaccia grafica del programma.


 * [[Image:Feature5.jpg|left]] È possibile importare ed esportare molti dei formati standard di rappresentazione 3D, come ad esempio: STEP, IGES, OBJ, STL, DXF, SVG, STL, DAE, IFC oppure OFF, NASTRAN, VRML, oltre al formato nativo di FreeCAD Fcstd. Il livello di compatibilità tra FreeCAD e un formato di file specifico è variabile, dipende dal modulo che lo implementa.


 * [[Image:Feature7.jpg|left]] Un ambiente di sketch dotato di strumenti per disegnare sagome in 2D vincolate. Questa funzionalità permette di vincolare in diversi modi le geometrie tracciate e poi di utilizzarle come base per la costruzione delle forme 3D.


 * [[Image:Feature9.jpg|left]] Un modulo di simulazione robotica con il quale studiare i movimenti e le traiettorie del manipolatore. È disponibile una interfaccia grafica di questo modulo che permette di manovrare i vari elementi del modello 3D in modo semplice e intuitivo.


 * [[Image:Feature8.jpg|left]] Un nuovo modulo comodo per creare fogli di disegno tradizionali con opzioni come viste di dettagli, sezioni trasversali, quotatura e altre, che consente di inserire delle viste 2D dei modelli 3D su un foglio. Questo modulo produce quindi fogli SVG o PDF pronti per l'esportazione. Esiste ancora il vecchio modulo Drawing con i suoi scarni comandi Gui, ma una potente funzionalità Python.


 * [[Image:Feature-raytracing.jpg|left]] Un modulo dedicato al rendering per mezzo del quale si possono esportare i modelli 3D ed effettuare renderizzazioni con software di terze parti. Al momento è pienamente supportato solo POV-Ray.


 * [[Image:Feature-arch.jpg|left]] Inoltre, è stato avviato lo sviluppo di un modulo di architettura compatibile con il modello BIM e compatibile con l'IFC. Le caratteristiche di questo modulo sono ancora in via di definizione e sono discusse dalla comunità in questa pagina del forum.


 * [[Image:Feature-CAM.jpg|left]] Un modulo Path dedicato alle lavorazioni meccaniche, come la fresatura (CAM), in grado di produrre, visualizzare e modificare il Codice G.


 * [[Image:Feature_spreadsheet.png|left]] Il foglio di calcolo integrato e un parser delle espressioni per guidare i modelli basati su formule o recuperare dati dai modelli.

Funzioni Generali

 * multipiattaforma. FreeCAD funziona esattamente allo stesso modo su piattaforme Microsoft Windows®, Linux e macOS®.


 * interfaccia grafica completa  basata sulla piattaforma Qt e una interfaccia di visualizzazione 3D basata su Open Inventor che garantisce un rendering rapido e permette di accedere facilmente alle varie proiezioni della scena.


 * funziona tramite riga di comando. In modalità riga di comando, FreeCAD viene eseguito senza la sua interfaccia ma con tutti i suoi strumenti di geometria. In questa modalità ha un ingombro di memoria relativamente basso e può essere utilizzato, ad esempio, come server per produrre contenuti per altre applicazioni.


 * può essere importato come un modulo Python. FreeCAD può essere importato in qualsiasi applicazione in grado di eseguire script Python. Come in modalità riga di comando, la parte di interfaccia di FreeCAD non è disponibile, ma tutti gli strumenti di geometria sono accessibili.


 * concepito in Ambienti. Nell'interfaccia di FreeCAD gli strumenti sono raggruppati all'interno di workbenches (ambienti di lavoro). Questo permette che vengano visualizzati soltanto gli strumenti necessari all'azione specifica che si deve compiere, ottenendo un'area di lavoro pulita, facile da gestire e veloce da caricare.


 * plugins e moduli per il caricamento ritardato di funzioni e dati. FreeCAD è diviso in un'applicazione principale con moduli che vengono caricati solo quando è necessario. Quasi tutti gli strumenti e i tipi di geometria sono memorizzati nei moduli. I moduli si comportano come dei plug-in; oltre al caricamento ritardato, è possibile aggiungere o rimuovere singoli moduli da un'installazione di FreeCAD esistente.


 * gestione parametrica degli oggetti. In un documento di FreeCAD tutti gli oggetti possono essere definiti da parametri. Questi parametri possono essere modificati e ricalcolati in qualsiasi momento. Poiché le relazioni tra gli oggetti vengono mantenute, la modifica di un oggetto si propaga automaticamente a qualsiasi oggetto dipendente.


 * creazione parametrica di primitive. Gli oggetti primitivi come box, sfere, cilindri, ecc. possono essere creati specificando i loro vincoli geometrici.


 * operazioni di modifica grafica. FreeCAD può eseguire traslazioni, rotazione, ridimensionamento, mirroring, offset (triviali o come descritte in Jung/Shin/Choi) o anche trasformazione della forma, in qualsiasi piano dello spazio 3D.


 * constructive solid geometry (operazioni booleane). FreeCAD può eseguire operazioni di geometria solida costruttiva (unione, differenza, intersezione).


 * creazione grafica di geometrie piane. Linee, spezzate, rettangoli, b-spline e archi circolari o ellittici possono essere creati graficamente in qualsiasi piano dello spazio 3D


 * modellazione lineare o rivolutiva di estrusioni, sezioni e raccordi.


 * elementi topologici quali vertici, spigoli, contorni e piani facilmente ottenibili anche tramite script Python.


 * test e correzione. FreeCAD dispone di strumenti per il test delle mesh (test solido, test di non-due-varietà, test di auto-intersezione) e per la riparazione di mesh (riempimento del foro, orientamento uniforme).


 * annotazioni. FreeCAD può inserire annotazioni per testo o dimensioni.


 * strumento annulla/ripristina. In FreeCAD si può annullare o ripristinare tutto tramite l'accesso diretto allo storico delle azioni. In questo modo è possibile annullare più modifiche contemporaneamente.


 * gestione delle modifiche. Lo storico annulla/ripristina conserva le informazioni sulle modifiche globali e non sulla singola azione, così ogni singolo strumento può gestire esattamente ciò che deve essere annullato o ripristinato.


 * strumento di sviluppo di script integrato. FreeCAD fornisce un interprete Python integrato nel programma e delle API che coprono la quasi totalità del programma, come ad esempio l'interfaccia, la geometria e la visualizzazione 3D. L'interprete è in grado di gestire singoli comandi così come interi script complessi. Tutti i moduli possono essere gestiti tramite Python.


 * Console Python integrata completa della funzione di highlight del codice, dell'auto-completamento e anche del class-browser. I comandi, in python, possono essere inviati direttamente dall'interno del programma e essere eseguiti immediatamente. Questa funzione è molto utile per testare il funzionamento di uno script, ma anche per esplorare i contenuti dei moduli integrati e conoscere a fondo il programma stesso.


 * Azioni dell'utente registrate nella console: tutto quello che si costruisce in FreeCAD viene tradotto in comandi Python. L'output di tali comandi può essere stampato sulla riga di comando integrata per tenerne nota oppure per essere registrato nelle macro.


 * Registrazione e editazione di macro.: I comandi Python generati quando l'utente manipola l'interfaccia possono essere registrati, modificati, se necessario, e salvati per essere poi riprodotti in seguito.


 * Formato di salvataggio parametrico: I documenti FreeCAD vengono salvati con estensione .fcstd e contengono numerose informazioni come ad esempio la geometria, gli script e le anteprime. Il file .fcstd è di per sé un contenitore zip, quindi un file di FreeCAD salvato è già stato compresso.


 * G.U.I. completamente personalizzabile. L'interfaccia di FreeCAD è basata su Qt ed è completamente configurabile tramite l'interprete Python. Oltre alle funzioni standard definite nel software, si ha a disposizione la potenze e la versatilità dell'intero framework Qt, il quale permette di aggiungere, spostare, agganciare oppure eliminare i widgets dall'area di lavoro.


 * Thumbnailer (per ora disponibile solo su piattaforme GNU/Linux): le icone dei documenti salvati in formato .fcstd forniscono una comoda anteprima del loro contenuto in molte applicazioni di gestione dei file, come Nautilus di Gnome, rendendo facile individuare i propri elaborati.


 * Un installer MSI modulare garantisce una installazione flessibile in ambienti Microsoft Windows®. Sono disponibili anche dei pacchetti specifici per Ubuntu.

Funzioni in fase di sviluppo
Questo modulo è attualmente in fase di progettazione.
 * [[Image:Feature-assembly.jpg|left]] Un modulo di Assemblaggio che permetta di lavorare contemporaneamente su diverse forme, documenti, file e relazioni...

Ambienti complementari
Alcuni utenti esperti hanno creato vari ambienti complementari personalizzati.