Funzionalità

From FreeCAD Documentation
Revision as of 20:46, 2 June 2011 by Maegras (talk | contribs)

Questa è una lista estesa, ma non completa, delle caratteristiche già implementate in FreeCAD. Se siente interessati agli sviluppi futuri è possibile consultare la roadmap di sviluppo. Per avere un assaggio delle caratteristiche ci sono invece gli screenshot.

Note di sviluppo

Caratteristiche Generali

Di Base

  • FreeCAD è multipiattaforma. È in grado di funzionare esattamente allo stesso modo su piattaforme Microsoft Windows®, Linux e Mac OSX®.
  • FreeCAD ha una interfaccia grafica completa basata sulla famosa 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.
  • FreeCAD funziona anche da riga di comando, con il minimo utilizzo di memoria. Utilizzando quest'ultima FreeCAD si avvia senza la GUI, ma dispone comunque di tutte le sue funzioni, anche quelle più avanzate. Può, così facendo, essere utilizzato come server per generare contenuti utilizzati in altre applicazioni.
  • FreeCAD può essere importato come modulo Python all'interno di altre applicazioni in grado di gestire script in questo linguaggio, oppure direttamente all'interno di una console python. In questa modalità la GUI non viene caricata, ma è comunque possibile utilizzare tutti gli strumenti di modellazione geometrica come se si stesse agendo da riga di comando.
  • Basato su plugins e moduli. FreeCAD è formato da una struttura di base, il core, e numerosi moduli che vengono avviati solo quando è necessario. Questo permette di aggiungere e/o rimuovere funzionalità ,attraverso i moduli, anche ad una installazione preesistente.
  • Strumento di sviluppo di script integrato: FreeCAD fornisce un interpreter 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'interpreter è in grado di gestire singoli comandi così come interi script complessi. Tutti i moduli possono essere gestiti tramite Python.
  • Un installer MSI modulare che garantisce una installazione flessibile in ambiente Microsoft Windows®. Sono disponibili anche pacchetti specifici per Ubuntu.

Struttura dei documenti

  • Strumento annulla/ripristina: tutto si può annullare o ripristinare tramite l'accesso diretto allo storico delle azioni. In questo modo è possibile annullare più modifiche allo stesso tempo.
  • Gestione delle modifiche: lo storico annulla/ripristina conserva informazioni sulle modifiche globali e non sulla singola azione, così ogni singolo strumento può gestire esattamente ciò che deve essere annullato o ripristinato.
  • Gestione parametrica degli ogetti: Tutti gli oggetti in un documento FreeCAD vengono definiti tramite parametri. Questi sono modificabili a piacere e gli effetti delle modifiche sono visibili in tempo reale. Vengono memorizzate anche le relazioni che intercorrono tra i vari oggetti, quindi modificandone uno vengono modificati automaticamente tutti gli altri oggetti collegati con esso.
  • 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.

Interfaccia Utente

  • G.U.I. completamente personalizzabile. L'interfaccia di FreeCAD, basata su Qt è completamente configurabile tramite il Python interpreter. 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.
  • Workbench: nell'interfaccia di FreeCAD le icone degli strumenti sono raggruppate all'interno delle workbenches (aree di lavoro ndr.). Questo permette che vengano visualizzati soltanto gli strumenti necessari all'azione specifica che si deve compiere, ottenendo un'area di lavoro pulita, veloce e facile da gestire.
  • Console Python integrata completa della funzione di highlight del codice, dell'autocompletamento e anche del class-browser. I comandi, in python, possono essere inviati direttamente dall'interno del programma e immediatamente eseguiti. Questa funzione è molto utile per testare il funzionamento di uno script, piuttosto che per esplorare i contenuti dei moduli integrati e conoscere a fondo il programma stesso.
  • Azioni 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 .
  • Le Macro: l'utilizzo di queste procedure automatizza le operazioni da svolgere e rende l'uso di FreeCAD molto più veloce e semplice.
  • Thumbnailer (disponibile solo su piattaforme GNU/Linux): le icone dei documenti salvati in formato .fcstd forniscono una comoda anteprima del loro contenuto, rendendo facile individuare i propri elaborati.

Specifiche

File:Workbench Mesh.png Meshes

  • Il modulo meshes è stato sviluppato principalmente per importare, convertire, modificare mesh 3D realizzate con altri software e per esportare i modelli FreeCAD. Vengono forniti anche numerosi altri strumenti geometrici e meshes nativi.
  • Creazione di primitive (cubi, sfere, cilindri, ecc), offset (triviali o di tipo Jung/Shin/Choi) e anche operazioni boleane (aggiungi, taglia, interseca, ecc)
  • Strumenti per il test e la correzione di meshes: solid test, non-two-manifolds test, self-intersection test, hole-filling e uniform-orientation.

Progettazione 2D

  • Creazione di geometrie semplici come line, archi, rettangoli, cerchi, spezzate in ogni proiezione dello spazio 3D.
  • Quote dimensionali oppure commenti.
  • Interazione con le forme come traslazione, rotazione, scalatura, specchiatura, offset ecc.
  • Importazione ed Esportazione nei seguenti formati: Autodesk's Drawing Exchange Format (*.dxf), Open Cad Format (*.oca, *.gcad) e SVG (*.svg)

CAD

Un esempio delle funzioni Unione, intersezione e sottrazione
Un esempio delle funzioni Unione, intersezione e sottrazione
  • Il modulo CAD ha a che fare con tutto quello che ruota attorno alla tecnologia del ComputerAidedDesign. Questo ramo del programma è in fase di sviluppo intensivo all'interno dei moduli CAD e Assembly. Le fasi dello sviluppo e lo stato attuale possono essere visionate nella Roadmap (En)). Questo modulo lavora per mezzo del kernel geometrico OpenCASCADE (En) che fornisce strumenti professionali di manipolazione delle forme.

Alcune tra le caratteristiche principali di questo modulo sono:

  • Geometrie primitive costruite per via parametrica come, ad esempio, cubi e parallelepipedi, sfere, cilintri, coni, figure toroidali ecc.
  • Elementi topologici quali vertici, spigoli, fili e piani facilmente ottenibili tramite script.
  • Modellazione lineare o rivolutiva di estrusioni, sezioni e nastri.
  • Importazione ed Esportazione dei seguenti formati: oggetti o aggregati STEP (*.stp,*.step), modelli IGES (*.igs, *.iges) e BRep (*.brp).

Raytracing

  • Il modulo di Raytracing consente di esportare i propri modelli verso software di rendering esterni per poter generare immagini 3D realistiche delle scene. Attualmente l'unico motore di renderin supportato è POV-Ray. Il modulo consente, per il momento solo di creare un foglio di rendering e di aggiungere oggetti solidi al foglio per esportarli successivamente e processarli con POV-Ray.

Disegno

  • Il modulo per il Disegno consente di esportare le proiezioni del modello 3D così da poter essere salvate in un documento .SVG. Consente anche di creare un modello a partire da file .SVG, cambiare il punto di vista, e salvare la nuova proiezione.

CAM

  • Il modulo CAM si dedica interamente ai processi della lavorazione meccanica per mezzo delle macchine utensili. Lo stadio di sviluppo è ancora all'inizio e per il momento gli sviluppatori si stanno dedicando alle procedure di Incremental Sheet Forming. Sono già stati sviluppati alcuni algoritmi per la simulazione del passaggio di un utensile, ma non sono ancora pienamente fruibili per gli utenti finali.


Altre lingue: