User:Renatorivo

From FreeCAD Documentation
Revision as of 17:57, 30 November 2016 by Renatorivo (talk | contribs)

Caratteristiche di FreeCAD



150
150


FreeCAD è una applicazione di modellazione parametrica 3D free e open-source. È fatto principalmente per modellare gli oggetti del mondo reale, che vanno dai piccoli componenti elettronici fino agli edifici e ai progetti di ingegneria civile, con particolare attenzione agli oggetti stampabili in 3D. FreeCAD può essere scaricato, usato, distribuito e modificato liberamente, il suo codice sorgente è aperto e pubblicato sotto la molto permissiva licenza LGPL. I dati prodotti con FreeCAD sono di completa proprietà dell'autore, e possono essere recuperati anche senza FreeCAD.

FreeCAD è anche fondamentalmente un progetto sociale, in quanto è sviluppato e mantenuto da una comunità di sviluppatori e di utenti uniti dalla passione per FreeCAD.

Questo manuale è un esperimento per prendere la strada diversa rispetto a quella del wiki della documentazione ufficiale di FreeCAD. Il wiki è scritto in modo collaborativo da decine di membri della comunità e, come la maggior parte dei wiki, contiene enormi quantità di informazioni, ma per i nuovi utenti è un po 'difficile da navigare. Ciò trasforma il wiki in una preziosa risorsa di riferimento, ma non è uno strumento molto pratico per imparare ad usare FreeCAD. Questo manuale è una guida attraverso le stesse informazioni disponibili sul wiki, però speriamo che i passaggi più graduali, basati su esempi, e lo stile più uniforme dovuto a un minor numero di autori, lo rendano più adatto per un primo contatto con FreeCAD, e che diventi un perfetto accompagnatore del wiki.

Questo manuale è stato scritto per la nuova versione stabile di FreeCAD, la versione 0.18 (inizio 2019).

Il contenuto di questo manuale è pubblicato sotto licenza Creative Commons 4.0, e può essere liberamente utilizzato, scaricato, copiato, e modificato. I file originali di questo manuale sono ospitati su questo wiki, e sull'account github originale usato per scrivere la prima versione di questo libro. Le versioni HTML, PDF, MOBI e EPUB, più facili da leggere, sono disponibili su also available here. È in preparazione una versione stampata.



FreeCAD è una applicazione di modellazione parametrica 3D open source, fatta soprattutto per la progettazione di oggetti della vita reale. La Modellazione parametrica è un determinato tipo di modellazione, in cui la forma degli oggetti 3D che si disegnano è controllata dai parametri. Ad esempio, la forma di un mattone può essere controllata da tre parametri: altezza, larghezza e lunghezza. In FreeCAD, come in altri modellatori parametrici, questi parametri sono parte dell'oggetto, e rimangono modificabili in qualsiasi momento, dopo che l'oggetto è stato creato. Alcuni oggetti possono avere come parametri altri oggetti, per esempio si può avere un oggetto che prende il nostro mattone come input, e che da esso crea una colonna. Si può pensare ad un oggetto parametrico come ad un piccolo programma che crea la geometria dai parametri.

FreeCAD non è progettato per un particolare tipo di lavoro, o per creare un determinato tipo di oggetto. Invece, permette una vasta gamma di usi, e permette agli utenti di produrre modelli di tutte le dimensioni e per ogni finalità, dai piccoli componenti elettronici fino ai pezzi stampabili in 3D, e poi fino agli edifici. Per ognuna di queste azioni sono disponibili specifici set di strumenti e diversi flussi di lavoro.

FreeCAD è anche multi-piattaforma (funziona esattamente allo stesso modo su piattaforme Windows, Mac OS e Linux), ed è open-source. Essendo open-source, FreeCAD beneficia dei contributi e degli sforzi di una vasta comunità di programmatori, appassionati e utenti di tutto il mondo. FreeCAD è essenzialmente un'applicazione costruita dalle persone che ne fanno uso, invece di essere fatta da una società che cerca di vendere un prodotto. E, naturalmente, significa anche che FreeCAD è free, non solo si può usare, ma si può anche distribuire, copiare, modificare, o addirittura vendere.

FreeCAD beneficia anche della grande esperienza accumulata nel mondo open-source. Al suo interno sono utilizzati diversi altri componenti del mondo open-source, così come FreeCAD stesso può essere utilizzato come componente in altre applicazioni. Possiede anche tutti i tipi di caratteristiche che sono diventate uno standard nel mondo open-source, quali, ad esempio, supportare un'ampia gamma di formati di file, essere altamente scriptabile, personalizzabile e modificabile. Il tutto è reso possibile tramite una comunità di utenti dinamica e appassionata.

Il sito ufficiale di FreeCAD è http://www.freecad.org

Approfondimenti:



FreeCAD usa la licenza LGPL, che permette di scaricare, installare, ridistribuire e utilizzare FreeCAD nel modo desiderato, a prescindere dal tipo di lavoro si farà con esso (commerciale o non commerciale). Non si è tenuti a rispettare nessuna clausola o restrizione, e i file prodotti sono di completa proprietà dell'autore. In realtà, l'unica cosa vietata dalla licenza è quella di affermare che avete programmato FreeCAD voi stessi!

FreeCAD funziona senza alcuna differenza su Windows, Mac OS e Linux. Tuttavia, i metodi per installarlo differiscono leggermente a seconda della piattaforma. Su Windows e Mac, la comunità di FreeCAD fornisce i pacchetti precompilati (installatori) pronti per il download, mentre su Linux, il codice sorgente è reso disponibile dai manutentori delle distribuzioni Linux, che sono quindi i responsabili dei pacchetti di FreeCAD per la loro specifica distribuzione. Di conseguenza, su Linux, di solito si può installare la giusta versione di FreeCAD dal gestore del software.

La pagina ufficiale per il download di FreeCAD per Windows e Mac OS è https://github.com/FreeCAD/FreeCAD/releases

Versioni di FreeCAD

I rilasci ufficiali di FreeCAD che si trovano sulla pagina di cui sopra e nel software manager della distribuzione sono delle versioni stabili. Tuttavia, lo sviluppo di FreeCAD è veloce! Quasi ogni giorno sono aggiunte delle nuove funzionalità e viene corretto qualche bug. Dato che a volte può passare molto tempo tra una versione stabile e la successiva, si può essere interessati a provare una versione più avanzata di FreeCAD. Queste versioni di sviluppo, o pre-release, vengono caricate periodicamente sulla pagina di download menzionata sopra, o, se si utilizza Ubuntu o Fedora, la comunità di FreeCAD mantiene anche un PPA (Personal Package Archives) e copr o 'daily builds' che viene regolarmente aggiornato con le modifiche più recenti.

Se si sta installando FreeCAD su una macchina virtuale, bisogna essere consapevoli che le sue prestazioni potrebbero essere basse, e in alcuni casi essere inutilizzabile, a causa del limitato supporto di OpenGL sulla maggior parte delle macchine virtuali.

Installazione in Windows

  1. Scaricare il pacchetto di installazione (.exe) corrispondente alla propria versione di Windows (32bit o 64bit) da download page. Gli installatori FreeCAD dovrebbero funzionare su qualsiasi versione di Windows a partire da Windows 7.
  2. Fare doppio clic sul programma di installazione scaricato.
  3. Accettare i termini della licenza LGPL, questo è uno dei pochi casi in cui si può veramente, fare clic in modo sicuro sul pulsante "Accetto" senza leggere il testo. Non ci sono clausole nascoste:
  4. È possibile lasciare il percorso predefinito, o cambiarlo a piacere:
  5. Non è necessario impostare la variabile PYTHONPATH, a meno che non si abbia intenzione di fare un po di programmazione Python avanzata, nel qual caso probabilmente è già noto di cosa si tratta:
  6. Durante l'installazione, vengono anche installati un paio di componenti aggiuntivi, che sono impacchettati all'interno del programma di installazione:
  7. Questo è tutto, FreeCAD è installato. Lo trovate nel menu Start.

Installare una versione di sviluppo

Impacchettare FreeCAD e creare di un programma di installazione richiede un po' di tempo e di dedizione, così, di solito, le versioni di sviluppo (chiamate anche pre-release) sono fornite come archivi .zip oppure .7z. Queste versioni non hanno bisogno di essere installate, basta decomprimerle e lanciare FreeCAD facendo doppio clic sul file FreeCAD.exe che si trova al suo interno. Questo permette di avere contemporaneamente sullo stesso computer sia le versioni stabili che quelle "instabili".

Installazione in Linux

Sulla maggior parte delle distribuzioni Linux moderne (Ubuntu, Fedora, openSUSE, Debian, Mint, Elementary, ecc), FreeCAD può essere installato con il clic di un pulsante, direttamente dall'applicazione di gestione del software fornita dalla propria distribuzione (dato che ogni distribuzione utilizza un proprio strumento, il suo aspetto può differire dalle immagini sottostanti).

  1. Aprire il gestore del software e cercare "freecad":


  1. Fare clic sul pulsante "Installa" e il gioco è fatto, FreeCAD viene installato. Dopo, non dimenticare di votarlo!

Metodi alternativi

Uno dei grandi piaceri di usare Linux è la moltitudine di possibilità di adattare il software, quindi non trattenetevi. Su Ubuntu e derivate, FreeCAD può anche essere installato da un PPA mantenuto dalla comunità di FreeCAD (contiene entrambe le versioni, la stabile e quella di sviluppo). Su Fedora è possibile installare le versioni di sviluppo recenti di FreeCAD da copr e siccome questo è un software open-source, può anche essere compilato facilmente.

Installazione in Mac OS

Installare FreeCAD su Mac OSX oggi è facile come sulle altre piattaforme. Tuttavia, dal momento che ci sono meno persone della comunità che possiedono un Mac, i pacchetti disponibili spesso sono in ritardo di un paio di versioni rispetto alle altre piattaforme.

  1. Scaricare il pacchetto zip corrispondente alla propria versione da download page.
  2. Aprire la cartella Download ed espandere il file zip scaricato:
  3. Trascinare l'applicazione FreeCAD dalla cartella zip alla cartella Applicazioni:
  4. Questo è tutto, FreeCAD è installato!

5. Se il sistema impedisce l'avvio di FreeCAD a causa delle restrizioni per le applicazioni non provenienti da App Store è necessario abilitarlo nelle impostazioni di sistema:

Disinstallazione

Speriamo che non si voglia disinstallare FreeCAD, comunque è bene sapere come farlo. In Windows e Linux, la disinstallazione FreeCAD è molto semplice. In Windows utilizzare l'opzione standard "Disinstalla" che si trova nel pannello di controllo su Windows, o rimuoverlo con lo stesso gestore del software utilizzato per installare FreeCAD. Su Linux rimuoverlo con lo stesso software manager usato per installarlo. Su Mac, basta rimuoverlo dalla cartella Applicazioni.

Impostare le preferenze di base

Dopo aver installato FreeCAD, forse si desidera aprirlo e modificare alcune preferenze. Le impostazioni delle preferenze in FreeCAD si trovano nel menu Modifica → Preferenze. Sotto sono elencate alcune impostazioni di base che magari si desidera modificare; sfogliare le pagine delle preferenze per vedere se c'è qualcos'altro che si vuole cambiare.

  1. Language: (categoria Generale, scheda Generale)
  2. Lingua: FreeCAD sceglie automaticamente la lingua del sistema operativo, ma si può cambiarla. FreeCAD è quasi completamente tradotto in cinque o sei lingue; altre attualmente sono tradotte solo parzialmente. Si può facilmente contribuire a tradurre FreeCAD.
  3. Modulo da caricare automaticamente: (categoria Generale, scheda Generale) Normalmente, FreeCAD si avvia visualizzando la pagina Start center. È possibile saltare questo e iniziare una sessione di FreeCAD direttamente nell'ambiente di lavoro preferito, elencato sotto Avvio, Modulo da caricare automaticamente.. Gli ambienti di lavoro sono spiegati in dettaglio nel prossimo capitolo.
  4. Crea un nuovo documento all'avvio: (categoria Generale, scheda Documento) In combinazione con l'opzione Modulo da caricare automaticamente, avvia FreeCAD pronto per il lavoro.
  5. Archiviazione: (categoria Generale, scheda Documento) Come tutte le applicazioni complesse, FreeCAD potrebbe bloccarsi di tanto in tanto. Qui è possibile configurare alcune opzioni che aiutano a recuperare il lavoro in caso di incidente.
  6. Diritti d'autore e licenze: (categoria Generale, scheda Documento) Qui è possibile stabilire le impostazioni predefinite che verranno utilizzate per i nuovi file. Considerare fin dall'inizio di rendere i file condivisibili, utilizzando una licenza amichevole, copyleft come Creative Commons.
  7. Reindirizza l'output interno di python nel report: (categoria Generale, scheda Finestra di Output) Conviene sempre attivare queste due opzioni, in quanto indirizzano dei messaggi dall'interprete python interno che appaiono nella vista Report quando c'è un problema nell'esecuzione di uno script python.
  8. Unità: (categoria Generale, scheda Unità) Qui si può impostare il sistema di unità di misura di default che si desidera utilizzare.
  9. Zoom al cursore: (categoria Visualizzazione, scheda Vista 3D) Se selezionato, le operazioni di zoom sono focalizzate sul puntatore del mouse, altrimenti il fuoco dello zoom è il centro della vista corrente.
  10. Inverti lo zoom: (categoria Visualizzazione, scheda Vista 3D) Inverte la direzione dello zoom rispetto al movimento del mouse. .

Installare dei contenuti aggiuntivi

Dato che il progetto FreeCAD e la sua comunità crescono rapidamente, e anche perché è facile da estendere, i contributi esterni e i progetti paralleli realizzati dai membri della comunità e da altri appassionati cominciano ad apparire ovunque su internet. La maggior parte di questi progetti esterni sono degli ambienti di lavoro o macro e possono essere facilmente installati direttamente da FreeCAD tramite Addon Manager che si trova nel menu Strumenti. Il gestore dei componenti aggiuntivi consente di installare molti componenti interessanti, ad esempio:

  1. Una Parts library, che contiene tutti i tipi di modelli utili, o pezzi di modelli, creati dagli utenti di FreeCAD che possono essere utilizzati liberamente nei vostri progetti. È possibile accedere e usare le libreria direttamente dall'interno della propria installazione FreeCAD.
  2. Ambienti aggiuntivi che estendono le funzionalità di FreeCAD per determinate attività, ad esempio animano le parti dei modelli, come piegatura della lamiera o BIM. Ulteriori spiegazioni su ogni ambiente e su quali strumenti contiene sono fornite nella pagina di ogni addon, che si può visitare facendo clic sul link corrispondente in Addon manager.
  3. Una collezione di macro, che sono disponibili anche nel wiki di FreeCAD insieme alla documentazione su come usarle.

Se si utilizza il sistema operativo Ubuntu, alcuni degli addon indicati sopra sono disponibili anche come pacchetti sul FreeCAD addons PPA

Approfondimenti



FreeCAD utilizza il framework Qt per disegnare e gestire la sua interfaccia. Questa struttura viene utilizzata in una vasta gamma di applicazioni, perciò l'interfaccia di FreeCAD è molto classica e non presenta particolari difficoltà di comprensione. La maggior parte dei pulsanti sono standard e si trovano dove ci si aspetta che siano File → Apri, Modifica → Incolla, ecc. Ecco l'aspetto di FreeCAD quando lo si apre per la prima volta, subito dopo l'installazione, e mostra il centro di partenza:

Lo start center è una comoda "schermata di benvenuto", che mostra le informazioni utili ai nuovi utenti, come gli ultimi file su cui si è lavorato, cosa c'è di nuovo nel mondo FreeCAD, o sintetiche informazioni sugli ambienti di lavoro più comuni. Comunica inoltre se è disponibile una nuova versione stabile di FreeCAD.

Dopo un po' di tempo, quando si ha maggiore familiarità con FreeCAD, si possono fare alcuni cambiamenti nelle preferenze, e molto probabilmente si vuole andare direttamente in uno degli altri ambienti di lavoro, con un nuovo documento aperto, o semplicemente, chiudere la pagina iniziale e creare un nuovo documento:

Gli ambienti di lavoro

Notare che tra le due schermate precedenti alcune delle icone sono cambiate. Questo è il momento in cui entra in gioco il concetto più importante utilizzato nell'interfaccia di FreeCAD: gli ambienti di lavoro.

Gli ambienti di lavoro sono costituiti da un gruppo di strumenti (i pulsanti della barra degli strumenti, i menu e altri controlli dell'interfaccia) che sono raggruppati secondo la loro specializzazione. Pensate ad un laboratorio dove ci sono diverse persone che lavorano insieme: una che lavora con il metallo, un'altra con il legno. Ognuno di loro ha, nel laboratorio, un tavolo separato con gli strumenti specifici per il proprio lavoro. Tuttavia, tutti possono lavorare sugli stessi oggetti. Lo stesso accade in FreeCAD.

Il più importante controllo dell'interfaccia di FreeCAD è il selettore Workbench, che si usa per passare da un ambiente all'altro:

Gli ambienti di lavoro spesso confondono i nuovi utenti, dato che non è sempre facile sapere in quale ambiente cercare uno specifico strumento. Ma in breve tempo, quasi senza rendersene conto, si trova un modo conveniente per organizzare la moltitudine di strumenti che FreeCAD offre, e che sono anche completamente personalizzabili (vedi sotto). Lo stesso strumento può apparire in più di un ambiente. L'icona del pulsante per uno specifico strumento è sempre la stessa, indipendentemente dall'ambiente in cui appare.

Più avanti in questo manuale, troverete anche una tabella che mostra i contenuti di tutti gli ambienti di lavoro.

L'interfaccia

Diamo uno sguardo alle diverse parti dell'interfaccia:

  • La vista 3D è il componente principale dell'interfaccia,

è dove gli oggetti con cui si lavora sono disegnati e manipolati. È possibile avere più viste dello stesso documento (o degli stessi oggetti) o più documenti aperti contemporaneamente. Ognuna di queste viste può essere sganciata individualmente dalla finestra principale. È possibile selezionare oggetti o parti di oggetti facendo clic su di essi, quindi è possibile eseguire panoramiche, zoomare e ruotare la vista con i pulsanti del mouse. Questo è spiegato ulteriormente nel prossimo capitolo.

Oltre al pannello di visualizzazione 3D, sono disponibili i seguenti pannelli di informazioni. Possono essere resi visibili o nascosti selezionandoli da Visualizza → Pannelli. Il nome del pannello appare nell'angolo in alto a sinistra del pannello quando viene visualizzato:

  • La vista combinata ha due schede:
    • La scheda Modello propone i contenuti e la struttura del documento nella parte superiore e le proprietà (o parametri) dell'oggetto selezionato (i) nella parte inferiore. Queste proprietà sono divise in due categorie:
      • Dati (proprietà che riguardano la geometria stessa)
      • Vista (proprietà che determinano il modo in cui la geometria appare sullo schermo).
    • La scheda Azioni è il posto dove FreeCAD chiede di specificare i valori per lo strumento che si sta utilizzando, per esempio, di inserire un valore per la 'lunghezza' quando si utilizza lo strumento Linea. Essa si chiude automaticamente quando si preme il tasto OK (o Annulla). Inoltre, facendo doppio clic sull'oggetto correlato nella vista combinata, la maggior parte degli strumenti permette di ritornare sul pannello delle Azioni, per modificare le impostazioni.
      La scheda Azioni a volte ha effetti collaterali sconcertanti e frustranti. Se la scheda Azioni non è vuota, alcune operazioni di FreeCAD non funzionano come previsto. Ad esempio, se nel modello è presente un singolo oggetto come un cubo, facendo doppio clic su di esso si apre la scheda Azioni per consentire all'utente di modificare i parametri che caratterizzano il cubo. Se si apre la Vista selezione, viene visualizzato il nome interno del cubo. L'intero cubo diventa verde nel pannello 3D, a indicare che l'intero cubo è selezionato. Cliccando sullo sfondo si deseleziona l'intero cubo e si cancella la Vista selezione. Finora, questo è un comportamento normale. Tuttavia, se ora si fai clic su una faccia del cubo, invece della faccia selezionata, non viene selezionato nulla perché la scheda Azioni non è stata completata. Anche se non sono state apportate modifiche ai parametri, FreeCAD aspetta che si faccia clic sul pulsante OK (o altro) nella scheda Azioni.
  • La vista Report è normalmente nascosta, ma è una buona idea aprirla in quanto elenca tutte le informazioni, avvertimenti o errori che sono di aiuto per decifrare (o eseguire il debug) quello che può aver causato un errore.
  • La console Python per impostazione predefinita è anche essa nascosta. Questo è il posto dove è possibile interagire con il contenuto del documento utilizzando il linguaggio Python. Dato che ogni azione fatta sull'interfaccia di FreeCAD in realtà esegue un pezzo di codice Python, con questo pannello aperto è possibile vedere il codice svolgersi in tempo reale, e consente strada facendo di imparare un po' di Python in un modo meraviglioso e facile, quasi senza accorgersene.
  • La vista Struttura visualizza solo la struttura ad albero mostrata nella scheda Modello nella vista combinata. È normalmente nascosta.
  • La vista Proprietà visualizza solo le informazioni sulle proprietà dell'oggetto visualizzate nella parte inferiore della vista combinata. È normalmente nascosta.
  • La vista Selezione mostra i nomi di tutti gli oggetti che sono attualmente selezionati. Questi sono gli oggetti a cui viene applicata un'operazione dell'ambiente. Può essere usata per affinare la selezione deselezionando alcuni di questi oggetti prima che venga applicata un'operazione. La vista selezione può anche essere utilizzata per cercare oggetti per nome e quindi selezionarli. Per impostazione predefinita, la vista selezione è nascosta. Sebbene sia spesso possibile determinare gli oggetti attualmente selezionati osservando l'albero degli oggetti nella scheda Modello della vista combinata, per operazioni complesse che richiedono selezioni multiple e in cui la selezione è difficile, è utile rendere visibile questa vista in modo da poter vedere tutte le etichette e contare gli oggetti selezionati.

Personalizzare l'interfaccia

L'interfaccia di FreeCAD è altamente personalizzabile. Tutti i pannelli e le barre degli strumenti possono essere spostati in luoghi diversi o impilati uno sull'altro. Quando è necessario possono anche essere chiusi e riaperti dal menu Visualizza o facendo clic destro su un'area vuota dell'interfaccia. Inoltre sono disponibili molte altre opzioni, come la creazione di barre degli strumenti personalizzate contenenti gli strumenti di uno qualsiasi degli ambienti, o l'assegnazione e la modifica dei tasti di scelta rapida.

Le opzioni di personalizzazione avanzate sono disponibili dal menu Strumenti → Personalizza:

Approfondimenti



Alcune parole sullo spazio 3D

Se questo è il primo contatto con un'applicazione 3D, prima è necessario familiarizzare con alcuni concetti. In caso contrario, si può tranquillamente saltare questa sezione.

Lo spazio 3D in FreeCAD è uno spazio euclideo. Ha un punto di origine e tre assi: X, Y e Z. Se si guarda la scena dall'alto, convenzionalmente, l'asse X punta verso destra, l'asse Y all'indietro, e l'asse Z verso l'alto. Nell'angolo in basso a destra della vista di FreeCAD, è sempre possibile vedere da dove si sta visualizzando la scena:

Il punto in cui i tre assi si incontrano è l'origine. È il punto in cui il valore di tutte le coordinate è zero. Per ogni dato asse, lo spostamento in una direzione aumenta il valore delle coordinate e lo spostamento nella direzione opposta diminuisce il valore delle coordinate. Ogni punto di ogni oggetto esistente nello spazio 3D può essere localizzato tramite le sue coordinate (x, y, z). Ad esempio, un punto con coordinate (2,3,1) si trova a +2 unità sull'asse X, +3 unità sull'asse Y e +1 unità sull'asse Z:

Si può guardare la scena da qualsiasi angolazione, come se si fosse in possesso di una fotocamera. Questa camera può essere spostata a sinistra, a destra, in alto e in basso (Sposta), oppure ruotata attorno a ciò che si sta guardando (Ruota) e portata più vicino o più lontano dalla scena (Zoom).

La vista 3D di FreeCAD

Navigazione con il mouse

La navigazione nella Vista 3D di FreeCAD può essere fatta con un mouse, un dispositivo Space Navigator, la tastiera, un touchpad, o una combinazione di questi. FreeCAD implementa diverse modalità di navigazione, che determinano come vengono eseguite le tre operazioni base di manipolazione della vista (panoramica, rotazione e zoom), nonché come viene eseguita la selezione degli oggetti sullo schermo. È possibile accedere alle modalità di navigazione dalla schermata Preferenze o direttamente facendo clic con il pulsante destro del mouse in qualsiasi punto della Vista 3D:

Ognuna di queste modalità attribuisce per queste quattro operazioni pulsanti diversi del mouse, o combinazioni di mouse + tastiera, o gesti del mouse. Nella tabella che segue sono riportate le principali modalità disponibili:

Modalità Spostamento Rotazione Zoom Selezione
OpenInventor Click middle button mouse Click left button mouse Roll middle button mouse Premere Ctrl + trascinare Click left button mouse
CAD (default) Click middle button mouse o Click right button mouse + CTRL key Hold middle then left mouse button o Click right button mouse + SHIFT key Roll middle button mouse o Click right button mouse + CTRL + SHIFT key Click left button mouse
Blender Premere Shift + trascinare Click middle button mouse o trascinare Click left + right button mouse and drag Click middle button mouse Roll middle button mouse Click left button mouse
Touchpad Premere Shift + trascinare Touchpad (mouse) pointer Alt + Touchpad (mouse) pointer PgUp / PgDn Click touchpad (mouse) left button
Gesture Trascinare Click right button mouse Trascinare Click left button mouse Roll middle button mouse Click left button mouse
OpenCascade Click middle button mouse Hold middle then right mouse button Roll middle button mouse Click left button mouse

Navigazione da tastiera

In alternativa, sono sempre disponibili alcuni comandi da tastiera, a prescindere dalla modalità di navigazione:

Questi controlli sono anche disponibili dal menu Visualizza e alcuni dalla barra degli strumenti Vista.

Utilizzo del cubo di navigazione

Nella configurazione predefinita, compare un cubo di navigazione nell'angolo in alto a destra della finestra 3D. Può essere utilizzato per ruotare la visualizzazione dell'oggetto di un valore prestabilito, ripristinare la visualizzazione su una delle diverse viste standard e cambiare la modalità di visualizzazione.

Quando si utilizza il cubo di navigazione, e si passa il puntatore su un'area sensibile del cubo appare un controllo di colore azzurro. Se l'area sotto il puntatore non cambia colore, fare clic su di essa non ha alcun effetto. Al momento della stesura di questo documento (v0.18), ci sono alcuni problemi di registrazione che impediscono l'attivazione di tutti i controlli.

Facendo clic su una faccia si commuta la vista che diventa frontale a tale faccia; facendo clic su un angolo la vista diventa perpendicolare a quello'angolo.

Facendo clic su uno dei quattro triangoli, la vista ruota di 45 gradi nella direzione indicata. Facendo clic su una delle due frecce curve in alto, la vista ruota di 45 gradi nella direzione indicata attorno a una linea che punta verso l'osservatore.

Il cubo di navigazione può essere spostato in qualsiasi parte dell'area 3D trascinandolo. Il pulsante di trascinamento (sinistro) del mouse deve essere premuto all'interno del cubo stesso per avviare un trascinamento. La struttura non si muove finché il puntatore non viene trascinato fuori dal cubo.

C'è un cubo più piccolo, nella parte inferiore destra del cubo, che attiva un menu a discesa per cambiare la modalità di visualizzazione.

Selezionare gli oggetti

Gli oggetti nella vista 3D possono essere selezionati cliccandoli con il corrispondente tasto del mouse, secondo la modalità di navigazione descritte sopra. Un singolo clic seleziona l'oggetto, e una delle sue sotto-componenti (bordo, faccia, vertice). Facendo doppio click si seleziona l'oggetto e tutte le sue sotto-componenti. Premendo il tasto CTRL è possibile selezionare più di un sotto-componente, o anche diversi sotto-componenti da diversi oggetti. Facendo clic con il pulsante di selezione su una parte vuota della visualizzazione 3D si deseleziona tutto.

Si può anche aprire un pannello chiamato "Selezione", disponibile dal menu Visualizza, che mostra ciò che attualmente è selezionato:

Inoltre è possibile utilizzare Selezione per selezionare gli oggetti attraverso la ricerca di un particolare oggetto.

Approfondimenti



Un documento di FreeCAD contiene tutti gli oggetti della scena. Può contenere gruppi e oggetti realizzati con qualsiasi ambiente di lavoro. È quindi possibile cambiare ambiente e continuare a lavorare sullo stesso documento e / o oggetti all'interno dello stesso documento. Il documento è ciò che viene salvato su disco quando si salva il lavoro. In FreeCAD è anche possibile aprire più documenti contemporaneamente, e aprire diverse viste dello stesso documento.

All'interno del documento, gli oggetti possono essere spostati e riuniti in gruppi, e avere un nome univoco. La gestione dei gruppi, degli oggetti e dei nomi degli oggetti è svolta principalmente dalla struttura ad albero. Quindi, è possibile creare gruppi, spostare gli oggetti a gruppi, eliminare gli oggetti o i gruppi. Facendo clic destro nella vista ad albero o su un oggetto, è possibile rinominare gli oggetti, cambiare il loro colore, nasconderli o mostrarli, o fare altre operazioni, secondo quale ambiente si sta utilizzando.

Gli oggetti all'interno di un documento FreeCAD possono essere di diversi tipi. Ogni ambiente può aggiungere i propri tipi di oggetti, ad esempio, l'ambiente Mesh aggiunge oggetti Mesh, l'ambiente Part aggiunge oggetti Part, etc.

Se vi è almeno un documento aperto in FreeCAD, c'è sempre uno e un solo documento attivo. Questo è il documento che viene visualizzato nella vista 3D corrente, il documento su cui si sta lavorando. Se si passa a un altro documento, quello diventa il documento attivo. La maggior parte delle operazioni agiscono sempre sul documento attivo.

I documenti di FreeCAD vengono salvati con l'estensione .FcStd, che è un formato composto basato su zip, simile a LibreOffice. Se qualcosa viene rovinato, spesso è possibile decomprimerlo e risolvere il problema, oppure salvare i dati.

Approfondimenti



FreeCAD è stato progettato per la modellazione parametrica. Ciò significa che la geometria che si crea, invece di essere liberamente modellabile, è prodotta da regole e parametri. Ad esempio, un cilindro può essere prodotto da raggio e altezza. Con questi due parametri, il programma ha informazioni sufficienti per realizzare il cilindro.

In FreeCAD gli oggetti parametrici sono in realtà delle piccole parti di un programma che viene eseguito ogni volta che uno dei parametri viene modificato. Gli oggetti possono avere un sacco di parametri di diversi tipi: numeri (interi come 1, 2, 3 o valori in virgola mobile come 3,1416), dimensioni reali (1 mm, 2,4 m, 4.5 ft), coordinate (x, y, z), stringhe di testo ("ciao!") o anche un altro oggetto.

Questo ultimo tipo permette di costruire rapidamente complesse catene di operazioni, basando ogni nuovo oggetto su uno precedente, e aggiungendo ad esso delle nuove funzioni.

Nell'esempio sottostante, un oggetto cubico solido (Pad) è basato su una forma 2D rettangolare (Schizzo) e ha una lunghezza di estrusione. Con queste due proprietà viene prodotta una forma solida estrudendo la forma di base alla distanza determinata. Dopo è possibile utilizzare questo oggetto come base per ulteriori operazioni, come, ad esempio, per disegnare una nuova forma 2D su una delle sue facce (Sketch001) e poi fare una sottrazione (tasca), fino ad arrivare all'oggetto finale.

Tutte le operazioni intermedie (forme 2D, pad, tasche, ecc) sono ancora lì presenti, e si può ancora cambiare qualsiasi dei loro parametri in qualsiasi momento. Se è necessario, viene ricostruita l'intera catena (ricalcolata) .

Due cose importanti che è necessario sapere:

  1. Il ricalcolo non è sempre automatico. Le operazioni pesanti, che modificano una grande parte del documento, e quindi richiedono un po' di tempo, non vengono eseguite automaticamente. Invece, l'oggetto (e tutti gli oggetti che dipendono da esso) vengono contrassegnati per il ricalcolo (su di loro viene visualizzata una piccola icona blu nella vista ad albero). Quindi per ricalcolare tutti gli oggetti contrassegnati è necessario premere il pulsante Ricalcola (o Modifica->Aggiorna).
  2. L'albero delle dipendenze deve sempre scorrere nella stessa direzione. I loop sono vietati. Vedere DAG, e Vista DAG. Si può avere un oggetto A che dipende dall'oggetto B che dipende dall'oggetto C. Ma non si può avere l'oggetto A che dipende dall'oggetto B che a sua volta dipende dall'oggetto A. Questa sarebbe una dipendenza circolare. Tuttavia, si possono avere molti oggetti che dipendono dallo stesso oggetto, ad esempio gli oggetti B e C che dipendono entrambi da A. Il menu Strumenti -> Grafico delle dipendenze mostra un grafico delle dipendenza come nell'immagine qui sopra. Può essere utile per individuare eventuali problemi.

In FreeCAD non tutti gli oggetti sono parametrici. Spesso, le geometrie che si importano da altri file non contengono alcun parametro, e sono dei semplici oggetti non parametrici. Tuttavia, questi oggetti possono essere utilizzati come base o punto di partenza per creare dei nuovi oggetti parametrici, a seconda, ovviamente, di cosa richiede l'oggetto parametrico e la qualità della geometria importata.

Tutti gli oggetti, parametrici o no, hanno comunque un paio di parametri di base, come ad esempio un Nome, che è unico nel documento e non può essere modificato, una Etichetta, che è invece un nome definito dall'utente e che può essere modificato, e un posizionamento, che definisce la sua posizione nello spazio 3D.

Infine, vale la pena di notare che gli oggetti parametrici personalizzati sono facili da programmare in Python.

Approfondimenti



FreeCAD può importare ed esportare molti tipi di file. Ecco un elenco dei più importanti con una breve descrizione delle funzioni disponibili:

Formato Importazione Esportazione Note
STEP Si Si Questo è il più fedele formato di importazione / esportazione disponibile, dato che supporta la geometria solida e NURBS. Usatelo ogni volta che è possibile.
IGES Si Si Un vecchio formato per i solidi, anche molto ben supportato. Alcune applicazioni meno recenti non supportano STEP, ma hanno IGES.
BREP Si Si Il formato nativo di OpenCasCade, il kernel della geometria di FreeCAD.
DXF Si Si Un formato aperto gestito da Autodesk. Dato che i dati 3D all'interno di un file DXF sono codificati in formato proprietario, FreeCAD può solo importare e esportare dati 2D da e verso questo formato.
DWG Si Si La versione proprietaria di DXF. Richiede l'installazione dell'utility Teigha File Converter. Questo formato soffre delle stesse limitazioni di DXF.
OBJ Si Si Un formato basato su mesh. Può contenere solo maglie triangolari. In fase di esportazione tutti gli oggetti solidi e le superfici basate su NURBS di FreeCAD sono convertiti in mesh. L'ambiente Arch fornisce un esportatore alternativo, più adatto all'esportazione di modelli architettonici.
DAE Si Si Il principale formato di importazione e esportazione di Sketchup. Può contenere solo maglie triangolari. In fase di esportazione tutti gli oggetti solidi e le superfici basate su NURBS di FreeCAD sono convertiti in mesh.
STL Si Si Un formato basato su mesh, comunemente utilizzato per la stampa 3D. Può contenere solo maglie triangolari. In fase di esportazione tutti gli oggetti solidi e le superfici basate su NURBS di FreeCAD sono convertiti in mesh.
PLY Si Si Un vecchio formato basato su mesh. Può contenere solo maglie triangolari. In fase di esportazione tutti gli oggetti solidi e le superfici basate su NURBS di FreeCAD sono convertiti in mesh.
IFC Si Si Industry Foundation Classes. Richiede l'installazione di IfcOpenShell-python. Il formato IFC e la sua compatibilità con altre applicazioni è un affare complesso, utilizzare con cautela.
SVG Si Si Un eccellente e diffuso formato grafico 2D
VRML Si Si Un formato web piuttosto vecchio basato su mesh.
GCODE Si Si FreeCAD può già importare ed esportare da e verso vari dialetti di codice G, ma per il momento supporta solo alcune macchine.
CSG Si No Formato di OpenSCAD CSG (Constructive Solid Geometry).

Alcuni di questi formati di file hanno delle opzioni. Questi formati possono essere configurati nel menu Modifica → Preferenze → Importa/esporta:

Approfondimenti


Lavorare con FreeCAD


Per i nuovi utenti di FreeCAD una delle maggiori difficoltà è quella di sapere in quale ambiente di lavoro trovare uno strumento specifico. La tabella sottostante fornisce una panoramica degli ambienti più importanti e dei loro strumenti. Per un elenco più completo fare riferimento alla pagina della documentazione di FreeCAD per ciascun ambiente.

Quattro ambienti sono inoltre progettati per lavorare in coppia, e uno di loro è completamente incluso nell'altro: Architettura contiene tutti gli strumenti di Draft, e PartDesign tutti gli strumenti di Sketcher. Tuttavia, per chiarezza, qui sono separati.

Parte

L'ambiente Parte fornisce gli strumenti di base per lavorare con le parti solide: primitive, come cubi e sfere, e operazioni geometriche semplici e operazioni booleane. Essendo il punto di ancoraggio principale con OpenCasCade, l'ambiente Parte fornisce le fondamenta del sistema di geometria di FreeCAD, e quasi tutti gli altri ambienti producono della geometria basata su Part.

Tool Descrizione Tool Descrizione
Box Disegna un cubo Cono Disegna un cono
Cilindro Disegna un cilindro Sfera Disegna una sfera
Toro Disegna un toro (anello) Crea primitive Crea varie altre primitive geometriche parametriche
Genera una forma Crea forme più complesse da primitive Unione Unisce (fonde) due oggetti
Intersezione Estrae la parte comune (intersezione) di due oggetti Taglio Taglia (sottrae) un oggetto da un altro
JoinConnect Collega gli interni di oggetti con pareti (es. tubazioni) JoinEmbed Incorpora un oggetto con pareti in un altro oggetto analogo
Join Cutout Crea un ritaglio nella parete di un oggetto per un altro oggetto analogo Estrudi Estrude le facce piane di un oggetto
Raccorda Raccordo (arrotonda) i bordi di un oggetto Rivoluziona Crea un solido ruotando un altro oggetto (non solido) attorno ad un asse
Sezione Crea una sezione intersecando un oggetto con un altro Sezioni Crea più sezioni trasversali lungo un oggetto
Smussa Smussa i bordi di un oggetto Specchia Specchia l'oggetto selezionato in un determinato piano di specchio
Crea superficie rigata Crea una superficie rigata tra le curve selezionate Sweep Spazza uno o più profili lungo un percorso
Loft Congiunge due profili Offset Crea una copia in scala dell'oggetto originale
Spessore Assegna uno spessore alle facce di una forma

Draft

L'ambiente Draft fornisce gli strumenti per fare disegni di base CAD 2D: linee, cerchi, ecc ... e una serie di utili strumenti generici come spostare, ruotare o scalare. Esso fornisce inoltre diversi aiuti di disegno, come la griglia e l'aggancio. Esso è pensato principalmente per disegnare le linee guida per gli oggetti di Arch, ma serve anche come "coltellino svizzero" di FreeCAD.

Tool Descrizione Tool Descrizione
Linea Disegna un segmento tra 2 punti Wire Disegna una linea composta da più segmenti (polilinea)
Cerchio Disegna un cerchio da centro e raggio Arco Disegna un arco da centro, raggio, angolo iniziale e angolo finale
Ellisse Disegna un'ellisse da due punti d'angolo Poligono Disegna un poligono regolare da un centro e un raggio
Rettangolo Disegna un rettangolo da 2 vertici opposti Testo Disegna un testo di annotazione multi-linea
Dimensione Disegna un'annotazione dimensione BSpline Disegna una B-Spline da una serie di punti
Punto Inserisce un singolo punto Forma da testo Inserisce in un dato punto nel documento corrente una forma composta che riproduce una stringa di testo
Lega facce Crea un nuovo oggetto da facce selezionate su oggetti esistenti Curva di Bezier Disegna una curva di Bezier da una serie di punti
Sposta Sposta o copia gli oggetti da un posto ad un altro Ruota Ruota gli oggetti di un certo angolo attorno ad un punto
Offset Crea un offset di un oggetto ad una certa distanza Tronca o estendi Tronca, estende o estrude un oggetto
Promuovi Converte o unisce gli oggetti in un oggetto di livello superiore Retrocedi Converte o separa gli oggetti in un oggetto di livello inferiore
Scala Scala gli oggetti in relazione a un punto Vista Profilo 2D Crea un oggetto 2D ottenuto dalla proiezione di un altro oggetto
Da Draft a Sketch Converte un oggetto Draft in uno schizzo e viceversa Matrice Crea una serie polare o rettangolare da un oggetto
Clona Crea copie collegate di oggetti
Specchia Specchia oggetti rispetto a una linea

Sketcher

L'ambiente Sketcher contiene gli strumenti per costruire e modificare gli oggetti 2D complessi, chiamati schizzi. La geometria all'interno di questi disegni può essere posizionata con precisione e relazionata usando i vincoli. Gli schizzi sono destinati principalmente ad essere i mattoni della geometria di PartDesign, ma in FreeCAD sono utili ovunque.

Tool Descrizione Tool Descrizione
Punto Disegna un punto Linea Disegna un segmento da 2 punti
Arco Disegna un arco dal centro, raggio, angolo iniziale e angolo finale Arco da 3 punti Disegna un arco da due punti finali e un altro punto sulla circonferenza
Cerchio Disegna un cerchio da centro e raggio Cerchio da 3 punti Disegna un cerchio da tre punti sulla circonferenza
Ellisse Disegna un'ellisse da centro, punto su raggio maggiore e punto su raggio minore Ellisse da 3 punti Disegna un'ellisse da diametro maggiore (2 punti) e punto su raggio minore
Arco di ellisse Disegna un arco di ellisse da centro,punto su raggio maggiore, punto iniziale e punto finale Polilinea Disegna una linea fatta di molteplici segmenti di linea. Sono disponibili diverse modalità di disegno
Rettangolo Disegna un rettangolo da 2 vertici opposti Triangolo Disegna un triangolo regolare inscritto in un cerchio di geometria di costruzione
Quadrato Disegna un quadrato regolare inscritto in un cerchio di geometria di costruzione Pentagono Disegna un pentagono regolare inscritto in un cerchio di geometria di costruzione
Esagono Disegna un esagono regolare inscritto in un cerchio di geometria di costruzione Ettagono Disegna un ettagono regolare inscritto in un cerchio di geometria di costruzione
Ottagono Disegna un ottagono regolare inscritto in un cerchio di geometria di costruzione Asola Disegna un'asola selezionando il centro di un semicerchio e un punto finale dell'altro semicerchio
Raccordo Crea un raccordo tra le due linee Smusso Tronca una linea, un cerchio o un arco in un dato punto cliccato
Geometria esterna Crea un bordo collegato alla geometria esterna Costruzione Commuta un elemento da/in modalità di costruzione. Un oggetto costruzione non è utilizzato in un'operazione di geometria 3D ed è visibile solo durante la modifica dello schizzo che lo contiene
Coincidente Sovrappone un punto su (coincidente con) uno o più altri punti. Punto su oggetto Sovrappone un punto su un altro oggetto come una linea, un arco o un asse.
Verticale Vincola le linee selezionate o gli elementi di una polilinea ad avere un orientamento verticale. Prima di applicare questo vincolo si può selezionare più di un oggetto. Orizzontale Vincola le linee selezionate o gli elementi di una polilinea ad avere un orientamento orizzontale. Prima di applicare questo vincolo si può selezionare più di un oggetto.
Parallelo Vincola due o più linee parallele tra loro. Perpendicolare Vincola due linee perpendicolari tra loro, o vincola una linea perpendicolare ad un punto finale di un arco.
Tangente Crea un vincolo di tangenza tra due entità selezionate, o un vincolo collineare tra due segmenti di linea. Uguale lunghezza Vincoli due entità selezionate uguali fra loro. Se usato su cerchi o archi vengono posti uguali i loro raggi.
Simmetrico Vincola due punti simmetricamente rispetto a una linea, o vincola i primi due punti selezionati simmetricamente rispetto ad un terzo punto selezionato. Blocca Vincola l'elemento selezionato impostando le distanze verticale e orizzontale rispetto all'origine, bloccando in tal modo la posizione di tale elemento
Distanza orizzontale Fissa la distanza orizzontale tra due punti o tra i punti finali della linea. Se viene selezionato un solo elemento, la distanza è impostata dall'origine. Distanza verticale Fissa la distanza verticale tra due punti o tra i punti finali della linea. Se viene selezionato un solo elemento, la distanza è impostata dall'origine.
Lunghezza Fissa la lunghezza di una linea selezionata, e definisce la distanza tra due punti vincolando la distanza fra loro. Raggio Definisce il raggio di un arco o cerchio selezionato vincolando il raggio.
Angolo interno Definisce l'angolo interno tra due linee selezionate. Mappa sketch Mappa uno schizzo sulla faccia di un solido selezionata in precedenza
Unisci Unisce due o più schizzi Rifletti Riflette gli elementi selezionati in uno schizzo

Part Design

L'ambiente Part Design contiene strumenti avanzati per costruire parti solide. Esso contiene inoltre tutti gli strumenti di Sketcher. Dato che può produrre solo forme solide (la regola numero uno di Parte Design), è il principale ambiente da utilizzare nella progettazione di pezzi (parti) da produrre come manufatti o stampare in 3D, poiché si ottengono sempre oggetti stampabili.

Tool Descrizione Tool Descrizione
Prisma Estrudere un oggetto solido da uno schizzo selezionato Cavità Crea una tasca da uno schizzo selezionato. Il disegno deve essere mappato sulla faccia di un oggetto solido esistente
Rivoluzione Crea un solido rivoluzionando uno schizzo attorno ad un asse Gola Crea una gola rivoluzionando uno schizzo attorno ad un asse
Raccordo Arrotonda i bordi di un oggetto Smusso Smussa i bordi di un oggetto
Sformo Applica uno sformo angolare alle facce di un oggetto Specchiato Specchia le funzioni su un piano o una faccia
Serie lineare Crea una schiera lineare di funzioni Serie polare Crea una schiera polare di funzioni
Scalatura Scala le funzioni a una dimensione diversa Trasformazione multipla Permette di creare una schiera con una qualsiasi combinazione delle altre trasformazioni
Shaft wizard Genera un albero da una tabella di valori e permette di analizzare le forze e i momenti Involute gear wizard Consente di creare diversi tipi di ingranaggi

Arch

L'ambiente Arch contiene gli strumenti per lavorare con i progetti BIM (ingegneria civile e architettura). Esso contiene inoltre tutti gli strumenti dell'ambiente Draft. Arch è usato principalmente per creare oggetti BIM o dare gli attributi BIM agli oggetti costruiti con altri ambienti, al fine di esportarli in IFC.

Tool Descrizione Tool Descrizione
Muro Crea un muro da zero o utilizzando un oggetto selezionato come base Struttura Crea un elemento strutturale da zero o utilizzando un oggetto selezionato come base
Armatura Crea una barra di rinforzo in un elemento strutturale selezionata Piano Crea un piano includendo gli oggetti selezionati
Edificio Crea un edificio includendo gli oggetti selezionati Sito Crea un sito includendo gli oggetti selezionati
Finestra Crea una finestra utilizzando un oggetto selezionato come base Piano di sezione Aggiunge un oggetto piano di sezione al documento
Asse Aggiunge un sistema di assi al documento Tetto Crea una falda del tetto da una faccia selezionata
Spazio Crea un oggetto spazio nel documento Scale Crea un oggetto scala nel documento
Pannello Crea un oggetto pannello da un oggetto 2D selezionato Telaio Crea un oggetto telaio da uno schema selezionato
Arredo Crea un oggetto attrezzature o arredo Materiale Attribuisce un materiale agli oggetti selezionati
Scheda Crea diversi tipi di schede Taglia con piano Taglia un oggetto con un piano
Aggiungi Aggiunge oggetti a un componente Rimuovi Sottrae o rimuove oggetti da un componente
Ispeziona Entra o esce dalla modalità di ispezione

Altri ambienti incorporati

Quanto sopra riassume i più importanti strumenti di FreeCAD, ma sono disponibili molti altri ambienti di lavoro, tra i quali:

  • L'ambiente TechDraw per produrre disegni tecnici da modelli 3D.
  • L'ambiente Mesh permette di lavorare con le mesh poligonali. Anche se le mesh (maglie) non sono il tipo di geometria preferito con cui lavorare in FreeCAD, a causa della loro mancanza di precisione e di supporto per le curve, le mesh sono ancora molto usate, e sono pienamente supportate in FreeCAD. L'ambiente Mesh offre anche una serie di strumenti "da Part a Mesh" e "da Mesh a Part".
  • L'ambiente Raytracing offre strumenti per interfacciarsi con i renderer esterni come POV-Ray o LuxRender. Proprio da dentro FreeCAD, questo ambiente permette di produrre rendering di alta qualità dai modelli.
  • L'ambiente Spreadsheet permette di creare e manipolare i dati dei fogli di calcolo, che possono essere estratti dai modelli FreeCAD. Le celle del foglio possono anche essere usate da riferimento per molti settori (campi di inserimento dati) di FreeCAD, e questo permette di usarle come base di dati.
  • L'ambiente FEM si occupa di Finite Elements Analysis, e consente di effettuare i calcoli pre e post-elaborazione FEA e di visualizzare i risultati graficamente.

Ambienti esterni

Esistono anche numerosi altri ambienti molto utili, prodotti dai membri della comunità FreeCAD. Anche se non sono inclusi in una installazione standard di FreeCAD, sono facili da installare come plug-in. Essi sono tutti referenziati nel repositorio FreeCAD-addons. Tra i più sviluppati ci sono:

  • L'ambiente Drawing Dimensioning offre molti nuovi strumenti per lavorare direttamente su fogli di disegno (Drawing) e permette di aggiungere quote, annotazioni e altri simboli tecnici con un grande controllo sul loro aspetto. L'ambiente di lavoro Drawing non è più mantenuto.
  • L'ambiente Fasteners offre una vasta gamma di oggetti dispositivi di fissaggio pronti per l'uso come viti, bulloni, barre, rondelle e dadi. Sono disponibili molte opzioni e impostazioni.
  • L'ambiente A2plus offre una serie di strumenti per assiemare e lavorare con gli assemblaggi.

Approfondimenti


CSG sta per Geometria solida costruttiva e rappresenta il modo più semplice per lavorare con la geometria solida 3D, con cui si creano oggetti complessi con l'aggiunta e la rimozione di pezzi a o da solidi usando le operazioni booleane, come unione, sottrazione o intersezione.

Come si è visto in precedenza in questo manuale, FreeCAD è in grado di gestire diversi tipi di geometrie, ma il tipo preferito e più utile per gli oggetti 3D che si vogliono progettare con FreeCAD, cioè gli oggetti del mondo reale, è, senza dubbio , quella solida, la geometria BREP che viene gestita principalmente dall'ambiente Part. A differenza dei poligoni mesh, che sono fatti solo di punti e triangoli, gli oggetti BREP hanno le loro facce definite da curve matematiche che permettono una precisione assoluta, a prescindere dalla scala.

La differenza tra i due può essere paragonata alla differenza tra le immagini bitmap e quelle vettoriali. Come nelle immagini bitmap, le mesh poligonali hanno le loro superfici curve frazionate in una serie di punti. Se si guardano da molto vicino, o si stampano molto grandi, non si vede una curva, ma una superficie sfaccettata. Invece nelle immagini vettoriali, come con i dati BREP, la posizione di un punto di una curva non viene memorizzata nella geometria, ma calcolata al volo, con assoluta precisione.

In FreeCAD, tutta la geometria basata su BREP è gestita da OpenCasCade, che è un'altra parte di software open-source. L'interfaccia principale tra FreeCAD e il kernel OpenCasCade è l'ambiente Parte. La maggior parte degli altri ambienti costruiscono la loro funzionalità sull'ambiente Parte.

Anche se altri ambienti offrono spesso degli strumenti più avanzati per costruire e manipolare la geometria, dato che in realtà manipolano tutti degli oggetti Parte, è molto utile sapere come questi oggetti lavorano internamente, ed essere in grado di utilizzare gli strumenti di Parte, poiché, essendo più semplici, spesso possono aiutare a risolvere dei problemi che gli strumenti più intelligenti non riescono a risolvere in modo corretto.

Per illustrare il funzionamento dell'ambiente Parte, modelliamo questo tavolo, utilizzando solo operazioni CSG (tranne le viti, per cui useremo uno degli addons, e le dimensioni che vedremo nel prossimo capitolo):

Creare un nuovo documento (Ctrl + N o il menu File → Nuovo documento)per cominciare a modellare il tavolo. Inizialmente nella scheda Modello del pannello Vista combinata il documento viene chiamato "senza nome", ma se si salva il documento (Ctrl + Maius + S o dal menu File → Salva come) come un nuovo documento di FreeCAD chiamato "table.FCStd" il documento viene rinominato "table", che identifica più chiaramente il progetto.

Ora si può passare all'ambiente Part e iniziare a creare la prima gamba del tavolo.

  • Premere il pulsante Cube
  • Selezionare il Cube, quindi impostare le seguenti proprietà (nella tabella Dati):
    • Lunghezza: 80 mm (o 8 cm, o 0.8 m, FreeCAD opera in qualsiasi unità)
    • Larghezza: 80 mm
    • Altezza: 75 cm
  • Duplicare il Cube premendo Ctrl+C poi Ctrl+V (o menu Modifica → Copia e Incolla) (Non si vede nessun cambiamento, poiché il secondo oggetto è sovrapposto al primo).
  • Selezionare il nuovo oggetto denominato Cube001 che è stato creato (Fare clic su Cube001 nella scheda Modello a sinistra)
  • Cambiare la sua posizione modificando la sua proprietà Placement:
    • Posizione x: 8 mm
    • Posizione y: 8 mm

Si dovrebbe ottenere due parallelepipedi, uno scostato dall'altro di 8 millimetri:

  • Ora possiamo sottrarre uno dall'altro: Selezionare il primo, vale a dire quello che rimane, poi,con il tasto CTRL premuto, selezionare il secondo, quello da sottrarre (l'ordine è importante) e premere il pulsante Taglio:

Osservare che l'oggetto appena creato, chiamato "Cut", contiene ancora i due cubi usati come operandi. In realtà, i due cubi sono ancora lì nel documento, sono semplicemente stati nascosti e raggruppati sotto l'oggetto Cut nella vista ad albero. È ancora possibile selezionarli espandendo la freccia accanto all'oggetto Cut, e, se lo si desidera, renderli nuovamente visibili cliccandoli con il tasto destro o modificando le loro proprietà.

Puoi usare lo strumento Taglia e altri strumenti booleani anche tramite "Combo view" con il comando Operazioni booleane. Questo fornisce un modo più esplicito ma più laborioso.

  • Ora creare le altre tre gambe duplicando il cubo di base 6 altre volte. Dato che è ancora copiato, si può semplicemente incollarlo (CTRL + V) 6 volte. Cambiare la loro posizione con la seguente:
    • Cube002: x: 0, y: 80 cm
    • Cube003: x: 8 mm, y: 79.2 cm
    • Cube004: x: 120 cm, y: 0
    • Cube005: x: 119.2 cm, y: 8 mm
    • Cube006: x: 120 cm, y: 80 cm
    • Cube007: x: 119.2 cm, y: 79.2 cm
  • Ora fare gli altri tre Tagli, selezionando prima il cubo "ospite", quindi il cubo da tagliare. Ora abbiamo quattro oggetti Cut:

Si potrebbe avere pensato che, invece di duplicare il cubo di base sei volte, si poteva duplicare tre volte la gamba completa. Questo è totalmente vero, come sempre in FreeCAD, ci sono molti modi per raggiungere il medesimo risultato. Questa è una cosa preziosa da ricordare, perché, come si vedrà con oggetti più complessi, alcune operazioni potrebbero non dare il risultato atteso e spesso bisogna provare in altri modi.

  • Ora faremo i fori per le viti, utilizzando lo stesso metodo di Taglio. Dato che servono 8 fori, due in ogni gamba, potremmo fare 8 oggetti da sottrarre. Invece, esploriamo altri modi e facciamo 4 tubi, che saranno riutilizzati da due delle gambe. Quindi creare quattro tubi utilizzando lo strumento Cilindro. È nuovamente possibile farne un solo e poi duplicarlo. Dare a tutti i cilindri un raggio di 6 mm. Questa volta, avremo bisogno di ruotarli, che avviene anche attraverso la proprietà Placement nella scheda Dati (Nota: cambiare la proprietà dell'Asse prima di impostare l'angolo, altrimenti la rotazione non viene applicata) :
    • Cylinder: height: 130 cm, angle: 90°, axis: x:0,y:1,z:0, position: x:-10 mm, y:40 mm, z:72 cm
    • Cylinder001: height: 130 cm, angle: 90°, axis: x:0,y:1,z:0, position: x:-10 mm, y:84 cm, z:72 cm
    • Cylinder002: height: 90 cm, angle: 90°, axis: x:-1,y:0,z:0, position: x:40 mm, y:-10 mm, z:70 cm
    • Cylinder003: height: 90cm, angle: 90°, axis: x:-1,y:0,z:0, position: x:124 cm, y:-10 mm, z:70 cm

Notare che i cilindri sono un po' più lunghi del necessario. Questo perché, come in tutte le applicazioni 3D basate su solidi, le operazioni booleane in FreeCAD sono a volte ipersensibili nelle situazioni faccia-contro-faccia e potrebbero non riuscire. In questo modo, ci mettiamo dalla parte della sicurezza.

  • Ora facciamo le sottrazioni. Selezionare la prima gamba, poi, con CTRL premuto, selezionare uno dei tubi che la attraversa, premere il pulsante Taglio. Viene fatto il foro e viene nascosto il tubo. Cercarlo nella vista ad albero espandendo la gamba forata.
  • Selezionare un'altra gamba trapassata da questo tubo nascosto, quindi ripetere l'operazione, questa volta CTRL + selezionare il tubo nella vista ad albero, dato che nella vista 3D è nascosto (si può anche renderlo di nuovo visibile e selezionarlo nella vista 3D). Ripetere questa operazione per le altre gambe fino a quando ognuna di esse ha i suoi due fori:

Come si può vedere, ogni gamba è diventata una serie piuttosto lunga di operazioni. Tutto questo rimane parametrico, e in qualsiasi momento si può andare a cambiare qualsiasi parametro di una delle operazioni precedenti. In FreeCAD, spesso ci riferiamo a questa pila come allo "storico della modellazione", infatti riporta tutta la storia delle operazioni che sono state eseguite.

Un'altra particolarità di FreeCAD è che il concetto di oggetto 3D e il concetto di operazione 3D tendono a fondersi in una stessa cosa. Il Taglio è allo stesso tempo una operazione e anche l'oggetto 3D risultante da questa operazione. In FreeCAD questo si chiama "caratteristica" (feature), piuttosto che oggetto o operazione.

  • Ora facciamo il piano del tavolo, si tratta di un semplice blocco di legno, facciamolo con un altro Box con lunghezza: 126 cm, larghezza: 86 cm, altezza: 8 cm, posizione: x: 10 mm, y: 10 mm, z: 67 cm. Nella scheda Vista si può dare un bel marrone, come il colore del legno, modificando la sua proprietà Shape Color:

Notare che, anche se le gambe hanno spessore 8 mm, le abbiamo distanziate di 10 mm, lasciando due millimetri di vuoto. Naturalmente questo non è necessario, non accade con un tavolo vero, ma è una cosa da fare comunemente in questo tipo di modelli "assemblati", aiuta le persone che guardano il modello a capire che queste sono delle parti indipendenti , che in seguito dovranno essere unite manualmente.

Ora che i cinque pezzi sono completi, è un buon momento per dare loro dei nomi più appropriati di "Cut015". Facendo clic destro sugli oggetti nella vista ad albero (o premendo F2), si possono rinominare in qualcosa di più significativo per voi stessi o per un'altra persona che in seguito apra il file. Si dice spesso che semplicemente dare dei nomi propri agli oggetti è molto più importante del modo in cui sono modellati.

  • Ora posizioniamo alcune viti. Attualmente c'è un addon estremamente utile sviluppato da un membro della comunità di FreeCAD, che si trova nel repository FreeCAD addons, chiamato Fasteners, che rende molto facile l'inserimento di viti. Installazione degli ambienti supplementari è facile ed è descritto nelle pagine addons.
  • Una volta installato l'ambiente Fasteners e riavviato FreeCAD, esso appare nella lista degli ambienti, ed è possibile passare in esso. Per aggiungere una vite ai fori selezionare prima il bordo circolare del foro:

  • Poi possiamo premere uno dei pulsanti vite dell'ambiente Fasteners, ad esempio, la EN 1665 Vite a testa esagonale con flangia, serie pesante. La vite viene posizionata e allineata con il foro, e il diametro viene selezionato automaticamente in base alle dimensioni del foro. A volte la vite viene posta invertita, cosa che possiamo correggere invertendo la sua proprietà invert. Possiamo anche impostare il suo offset a 2 mm, per seguire la stessa regola usata tra il tavolo e le gambe:

  • Ripetere questa operazione per tutti i fori, e il tavolo è completo!

La struttura interna degli oggetti Parte

Come visto in precedenza, in FreeCAD è possibile selezionare non solo oggetti interi, ma parte di essi, come il bordo circolare del foro della vite. Questo è un buon momento per dare un rapido sguardo a come sono costruiti internamente gli oggetti Parte. Ogni ambiente che produce la geometria Parte si basa su questi:

  • Vertici: Essi sono i punti (di solito punti finali) su cui è costruito tutto il resto. Ad esempio, una linea ha due vertici.
  • Bordi: i bordi sono geometria lineare come linee, archi, ellissi o le curve NURBS. Di solito hanno due vertici, ma in alcuni casi speciali ne hanno un solo (un circolo chiuso per esempio).
  • Wire: Un wire (poliliea) è una sequenza di bordi collegati dai loro punti finali. Può contenere bordi di qualsiasi tipo, e può essere chiuso o no.
  • Facce: Le facce possono essere planari o curve, e possono essere formate da una polilinea chiusa, che forma il confine della faccia, o da più di una, nel caso che la superficie abbia dei fori.
  • Shells: I gusci sono semplicemente un gruppo di facce connesse dai bordi. Possono essere aperti o chiusi.
  • Solidi: Quando un guscio è completamente chiuso, cioè non ha "fughe", diventa un solido. I solidi portano la nozione di interno ed esterno. Molti ambienti si basano su questo per assicurarsi che gli oggetti che producono possono essere costruiti nel mondo reale.
  • Composti: I composti sono semplicemente aggregati di altre forme in un'unica forma, indipendentemente dalla loro tipologia.

Nella vista 3D, è possibile selezionare singoli vertici, bordi o facce. Selezionando uno di questi si seleziona anche l'intero oggetto.

Una nota sulla progettazione condivisa

Si può guardare il tavolo di cui sopra, e pensare il suo design non è buono. Il serraggio delle gambe con il piano del tavolo probabilmente è troppo debole. Si può desiderare di aggiungere dei pezzi di rinforzo, o semplicemente avere altre idee per renderlo migliore. Questo è dove la condivisione diventa interessante. È possibile scaricare il file realizzato nel corso di questo esercizio dal link sottostante, e modificarlo per renderlo migliore. Poi, se si condivide il file migliorato, altri possono essere in grado di renderlo ancora migliore, o possono utilizzare il tavolo ben progettato nei loro progetti. Il vostro disegno potrebbe poi dare altre idee ad altre persone, e forse avrete dato un piccolo contributo per un mondo migliore ...

Download

Approfondimenti



Si può essere interessati a FreeCAD perché si ha già una certa esperienza di disegno tecnico, ad esempio con un software come AutoCAD. Si conosce già qualcosa sulla progettazione, oppure si preferisce disegnare le cose prima di costruirle. In ogni caso, FreeCAD dispone di un ambiente di lavoro più tradizionale, con gli strumenti che si trovano nella maggior parte delle applicazioni CAD 2D: l'ambiente Draft.

L'ambiente Draft, anche se adotta metodi di lavoro ereditati dal tradizionale mondo del CAD 2D, non si limita affatto al regno 2D. Tutti i suoi strumenti lavorano in tutto lo spazio 3D e molti degli strumenti di Draft, ad esempio Sposta o Ruota, sono comunemente utilizzati in tutto FreeCAD, perché sono spesso più intuitivi che cambiare i parametri di posizionamento manualmente.

Tra gli strumenti offerti dall'ambiente Draft, si trovano gli strumenti di disegno tradizionali come Linea, Cerchio, o Wire (polilinea), gli strumenti di modifica come Sposta, Ruota o Offset, un sistema piano di lavoro con griglia che consente di definire con precisione in quale piano si sta lavorando, e un completo sistema di aggancio (snap) che rende molto facile disegnare e posizionare gli elementi in relazione tra di loro con precisione.

Per mostrare il funzionamento e le possibilità dell'ambiente Draft, cammineremo attraverso un semplice esercizio, il cui risultato sarà questo piccolo disegno. Esso mostra la planimetria di una piccola casa che contiene solo un top cucina (Un piano abbastanza assurdo, ma qui possiamo fare quello che vogliamo)?:

  • Passare nell'ambiente Draft
  • Come in tutte le applicazioni di disegno tecnico, è bene preparare il proprio ambiente in modo corretto, questo farà risparmiare un sacco di tempo. Configurare le impostazioni griglia e piano di lavoro, Testo e Dimensioni secondo le proprie preferenze nel menu Modifica → Preferenze → Draft. In questo esercizio, però, si procederà come se queste impostazioni delle preferenze vengano lasciate ai loro valori predefiniti.

  • C'è un'opzione che richiede un po' di attenzione: Riempi gli oggetti con le facce quando possibile. Se essa è attivata, gli oggetti chiusi come i rettangoli o i cerchi sono riempiti automaticamente con una faccia, e questo può rendere difficile l'aggancio agli oggetti sottostanti. Si può disattivare questa opzione o, in seguito, disattivare la proprietà Crea facce di ogni singolo oggetto, per impedire che creino una faccia.
  • L'ambiente Draft ha anche due barre degli strumenti speciali: una con le impostazioni di visualizzazione, in cui è possibile cambiare il piano di lavoro corrente, attivare o disattivare la modalità costruzione, impostare il colore della linea, il colore della faccia, lo spessore di linea e le dimensioni del testo da utilizzare per i nuovi oggetti, e un'altra con le posizioni di aggancio. Quindi, è possibile attivare o disattivare la griglia e stabilire di volta in volta le posizioni di Aggancio:

  • L'attivazione di tutti i pulsanti di snap è utile, ma rende anche più lento il disegno, poiché è necessario eseguire più calcoli quando si sposta il cursore del mouse. Spesso è meglio mantenere solo quelli che si usano effettivamente.
  • Iniziare attivando la modalità costruzione che permette di disegnare alcune linee guida su cui disegnare la geometria finale.
  • Se lo si desidera, impostare il piano di lavoro in XY. Se si esegue questa operazione, il piano di lavoro non cambia, qualsiasi sia la vista corrente. In caso contrario, il piano di lavoro si adatta automaticamente alla vista corrente, e si deve stare attenti ad essere nella vista dall'alto ogni volta che si vuole disegnare sul piano XY (terra).
  • Quindi, selezionare lo strumento Rettangolo e disegnare un rettangolo, a partire dal punto (0,0,0), di 2 metri per 2 metri (lasciando Z a zero). Notare che la maggior parte dei comandi di Draft possono essere eseguiti completamente dalla tastiera, senza toccare il mouse, usando le loro due lettere di scelta rapida. Questo primo rettangolo di 2x2m può essere eseguito da tastiera con: re 0 Enter 0 Enter 0 Enter 2m Enter 2m Enter 0 Enter.
  • Duplicare il rettangolo distanziato di 15 centimetri all'interno, utilizzando lo strumento Offset, attivando la sua modalità Copia, e assegnando una distanza di 15cm:

  • Si possono quindi disegnare un paio di linee verticali per definire dove verranno posizionate le porte e le finestre, utilizzando lo strumento Linea (notare che la casella della modalità "relativa" dovrebbe essere deselezionata per questo passaggio). L'incrocio di queste linee con i due rettangoli fornisce le intersezioni utili per agganciare i muri. Disegnare la prima linea dal punto (15cm, 1m, 0) al punto (15cm, 3m, 0).
  • Duplicare la linea 5 volte, usando lo strumento Sposta con la modalità Copia attivata. Attivare anche la modalità Relativa, che permette di definire gli spostamenti in distanze relative, che è più facile che calcolare la posizione esatta di ogni linea. Eseguire ogni operazione di spostamento in sequenza sulla riga creata immediatamente prima. Assegna a ogni nuova copia un punto iniziale, ad esempio puoi lasciarlo a (0,0,0) e i seguenti punti finali relativi:
    • line001: x: 10cm
    • line002: x: 120cm
    • line003: x: -55cm, y: -2m
    • line004: x: 80cm
    • line005: x: 15cm

  • Ora c'è tutto quello che serve, quindi si può disattivare la modalità di costruzione. Notare che tutta la geometria di costruzione è stata collocata in un gruppo "Costruzione", che la rende facile da nascondere tutta insieme o addirittura eliminarla completamente in seguito.
  • Disegnare due porzioni di muro utilizzando lo strumento Wire. Assicurarsi che lo snap intersezione sia attivo, dato che ci si deve agganciare alle intersezioni tra le linee ed i rettangoli. Disegnare due polilinee come segue, facendo clic su tutti i vertici del loro contorno. Per chiuderle, fare di nuovo clic sul primo punto, o premere il pulsante Chiudi:

  • E' possibile dare alle pareti un bel modello di tratteggio. Selezionare entrambi i muri, assicurarsi che la loro proprietà Make Face sia impostata su true, quindi impostare la loro proprietà Pattern su Simple e la Dimensione del motivo a proprio piacimento, ad esempio 0.005.

  • A questo punto si può nascondere la geometria di costruzione facendo clic destro sul gruppo Construction e scegliendo Nascondi selezione.
  • Ora disegnare le finestre e le porte. Assicurarsi che lo snap al punto centrale sia attivato, e disegnare sei linee come segue:

  • Ora cambiare la linea della porta per creare un simbolo di porta aperta. Iniziare a ruotare la linea utilizzando lo strumento Ruota. Fare clic sul punto finale della linea come centro di rotazione, dargli un angolo iniziale di 0, e un angolo finale di -90.
  • Quindi creare l'arco dell'apertura con lo strumento Arco. Scegliere come centro lo stesso punto usato come centro di rotazione nel passaggio precedente, cliccare l'altro punto della linea per assegnare il raggio, quindi i punti di inizio e di fine arco come segue:

  • Ora si può iniziare a posizionare alcuni mobili. Per cominciare, collocare un piano di lavoro disegnando un rettangolo dall'angolo interno in alto a sinistra, con una larghezza di 170 centimetri e un'altezza di -60cm. Nell'immagine sottostante, la proprietà Trasparenza del rettangolo è impostata su 80%, per dare ai mobili un aspetto piacevole.
  • Poi aggiungere un lavandino e un piano cottura. Disegnare questi tipi di simboli a mano può essere molto noioso, e di solito sono facili da trovare su Internet, ad esempio su http://www.cad-blocks.net . Da questo sito nella sezione Download, per comodità, ci si può procurare un lavandino e un piano cottura separati, e salvarli come file DXF. È possibile scaricare questi due file visitando il link, e facendo clic destro sul pulsante Raw , poi su Salva con nome.
  • L'inserimento di un file DXF in un documento FreeCAD aperto può essere fatto scegliendo l'opzione del menu File → Importa, oppure trascinando il file DXF dal file explorer nella finestra di FreeCAD. Il contenuto dei file DXF potrebbero non apparire proprio al centro della visualizzazione corrente, a seconda di dove si trovava nel file DXF. È possibile utilizzare il menu Visualizza → Viste standard → Visualizza tutto per adattare la vista e trovare gli oggetti importati. Inserire i due file DXF, e spostarli nella posizione appropriata sul tavolo:

  • Ora si possono mettere alcune dimensioni utilizzando lo strumento Dimensioni. Le dimensioni sono disegnate facendo clic su 3 punti: il punto iniziale, il punto finale, e un terzo punto per posizionare la linea di quota. Per rendere le dimensioni orizzontali o verticali, anche se i primi due punti non sono allineati, premere Shift mentre si clicca sul secondo punto.
  • È possibile modificare la posizione di un testo di quota con un doppio clic sulla dimensione nella vista ad albero. Un punto di controllo permette di spostare il testo graficamente. Nell'esercizio, i testi "0.15" sono stati allontanati per una migliore chiarezza.
  • È possibile modificare il contenuto del testo di quota modificando la loro proprietà Override. Nell'esempio, il testo delle dimensioni della porta e della finestra sono stati modificati per indicare le loro altezze:

  • Aggiungere alcuni testi di descrizione utilizzando lo strumento Testo. Fare clic in un punto per posizionare il testo, quindi inserire le righe di testo, premendo Invio dopo ogni riga. Per finire, premere Invio due volte.
  • Le linee di indicazione (chiamate anche "leader" o linee guida) che collegano i testi all'oggetto che descrivono sono fatte semplicemente con lo strumento Wire. Disegnare le linee partendo dalla posizione del testo e andando verso l'oggetto descritto. Fatto ciò, è possibile aggiungere un pallino o una freccia alla fine delle linee impostando la loro proprietà End Arrow su true

  • Ora il disegno è completo! Dato che cominciano ad esserci un certo numero di oggetti, sarebbe saggio fare un po' di pulizia e mettere tutto in una bella struttura per gruppi, in modo da rendere il file più comprensibile da altri:

  • Ora è possibile stampare il lavoro ponendolo in un foglio di disegno (una pagina di Drawing), che viene spiegato più avanti in questo manuale, o esportare direttamente il disegno per altre applicazioni CAD esportandolo in un file DXF. È sufficiente selezionare il gruppo "Floor plan", selezionare il menu File → Esporta, e selezionare il formato di Autodesk DXF. Il file può essere aperto in qualsiasi altra applicazione CAD 2D come LibreCAD. Ci possono essere alcune differenze, a seconda delle configurazioni di ciascuna applicazione.

  • Però, la cosa più importante di Draft è che la geometria creata con questo ambiente può essere utilizzata come base o facilmente estrusa in oggetti 3D, semplicemente utilizzando lo strumento Estrudi dell'ambiente Part, o, per rimanere in Draft, lo strumento Trimex (Tronca/Estendi/Estrudi), che in realtà esegue un Estrusione di Parte, ma lo fa "nel modo di Draft", cioè, consente di indicare e agganciare la lunghezza di estrusione graficamente. L'estrusione sarà sperimentata con le pareti come illustrato in seguito.
  • Premendo il pulsante piano di lavoro dopo aver selezionato una faccia di un oggetto, si è anche in grado di posizionare il piano di lavoro ovunque, e quindi di disegnare oggetti Draft in piani diversi, ad esempio sulla parte superiore delle pareti. Questi possono poi essere estrusi per formare altri solidi 3D. Sperimentare l'impostazione del piano di lavoro su una delle facce superiori delle pareti, quindi disegnare dei rettangoli sopra di essa.

  • Tutti i tipi di aperture possono anche essere fatte facilmente disegnando degli oggetti Draft sulle facce dei muri, poi estrudendoli, e quindi utilizzando gli strumenti booleani dell'ambiente Parte per sottrarli da un altro solido, come abbiamo visto nel capitolo precedente.

Fondamentalmente, l'ambiente Draft fornisce un modo grafico per creare le operazioni base di Parte. Mentre in Parte di solito gli oggetti si posizionano impostando a mano i loro parametri di posizionamento, in Draft si può farlo sullo schermo. Ci sono casi in cui è meglio uno, e casi in cui è preferibile l'altro. Non dimenticare che è possibile creare una barra degli strumenti personalizzata in uno di questi ambienti, aggiungere gli strumenti dall'altro, e di ottenere il meglio dei due mondi.

Downloads

Correlazioni



Questo tutorial è obsoleto. Provare invece il Tutorial di Base per Part Design 019.

Product design è in origine un termine commerciale, ma nel mondo 3D, significa spesso modellazione di qualcosa con l'idea di stamparlo in 3D o, più in generale, prodotto da una macchina, per esempio con una stampante 3D o con una macchina CNC.

Quando si stampano oggetti in 3D, è di fondamentale importanza che gli oggetti siano dei solidi. Dato che diventeranno reali, oggetti solidi, questo è ovvio. Naturalmente nulla impedisce che essi siano vuoti internamente. Ma è sempre necessario sapere esattamente quale punto è all'interno del materiale, e quale punto è al di fuori, perché la stampante 3D o la macchina CNC deve sapere esattamente cosa è riempito di materiale e cosa non lo è. In FreeCAD, l'ambiente PartDesign è lo strumento perfetto per costruire questi pezzi, perché si prende sempre cura che gli oggetti rimangono solidi e costruibili.

Per illustrare come funziona l'ambiente PartDesign, cerchiamo di modellare questo pezzo ben noto di Lego:

La cosa bella con i pezzi Lego è che le dimensioni sono facili da reperire su Internet, almeno per i pezzi standard. Questi sono abbastanza facili da modellare e da stampare in 3D, e con un po' di pazienza (la stampa 3D richiede spesso molte regolazioni di messa a punto) si possono fare pezzi che sono totalmente compatibili e che si incastrano perfettamente nei blocchi Lego originali. Nell'esempio seguente, faremo un pezzo che è 1,5 volte più grande di quello originale.

Ora useremo esclusivamente strumenti di Sketcher e PartDesign. Dato che tutti gli strumenti dell'ambiente Sketcher sono inclusi anche nell'ambiente PartDesign, possiamo stare in PartDesign e non avremo bisogno di passare avanti e indietro tra i due.

Gli oggetti di Part Design sono completamente basati su Schizzi. Uno Schizzo è un oggetto 2D, fatto di segmenti lineari (linee, archi di cerchio o ellissi) e di vincoli. I vincoli possono essere applicati sia sui segmenti lineari sia sui loro punti finali o centrali, e costringono la geometria ad adottare determinate regole. Ad esempio, è possibile inserire un vincolo verticale su un segmento di linea per costringerlo a rimanere in verticale, o applicare un vincolo di posizione (blocco) su un punto finale per impedirgli di muoversi. Quando uno schizzo ha la giusta quantità di vincoli che impedisce a qualsiasi punto del disegno di spostarsi, si parla di uno schizzo completamente vincolato. Quando ci sono dei vincoli ridondanti, che possono essere rimossi senza consentire alla geometria da spostarsi, si parla di geometria sovra-vincolata. Questo deve essere evitato, e, se succede, FreeCAD lo comunica.

Gli Schizzi hanno una modalità di modifica, in cui la loro geometria e i loro vincoli possono essere cambiati. Quando si ha finito con le modifiche, e si esce dalla modalità di modifica, gli schizzi si comportano come qualsiasi altro oggetto FreeCAD, e possono essere utilizzati come elementi di base per tutti gli strumenti di PartDesign, ma anche in altri ambienti di lavoro, come ad esempio Parte o Arch. Draft ha anche uno strumento che converte gli oggetti di Draft in schizzi, e viceversa.

  • Cominciamo modellando una forma cubica che sarà la base del nostro mattoncino Lego. Successivamente intaglieremo l'interno, e vi aggiungeremo le 8 bugne. Quindi cominciamo questo facendo uno schizzo rettangolare che sarà poi estruso:
  • Passare nell'ambiente PartDesign
  • Cliccare sul pulsante Nuovo Schizzo. Appare una finestra di dialogo che chiede dove si vuole posizionare il disegno, scegliere il piano XY, che è il piano "terra". Viene creato il disegno e viene immediatamente commutato in modalità di modifica, e la vista viene ruotata in modo che il disegno sia ortogonale all'osservatore.
  • Ora si può disegnare un rettangolo, selezionando lo strumento Rettangolo e cliccando 2 punti d'angolo opposti. È possibile inserire i due punti dove si vuole, dato che la loro posizione corretta verrà impostata nel passaggio successivo.
  • Notare che al rettangolo sono stati automaticamente aggiunti alcuni vincoli: i segmenti verticali hanno ricevuto un vincolo verticale, quelle orizzontali un vincolo orizzontale, e ogni angolo un vincolo di punto-con-punto che incolla insieme i segmenti. Si può sperimentare lo spostamento del rettangolo trascinando le sue linee con il mouse, tutta la geometria si manterrà fedele ai vincoli.

  • Ora, aggiungiamo altri tre vincoli:
    • Selezionare uno dei segmenti verticali e aggiungere un vincolo distanza verticale. Dategli una dimensione di 23.7mm.
    • Selezionare uno dei segmenti orizzontali e aggiungere un vincolo distanza orizzontale. Dategli una dimensione di 47.7mm.
    • Infine, selezionare uno dei punti d'angolo, quindi il punto di origine (che è il punto di incrocio degli assi rosso e verde), e aggiungere un vincolo coincidente. Il rettangolo salta al punto di origine, e lo schizzo diventa verde, il che significa che ora è completamente vincolato. Si può provare a spostare le sue linee o punti, ma nulla può più muoversi.

Notare che l'ultimo vincolo punto-su-punto non era assolutamente necessario. Non si è mai costretti a lavorare con schizzi completamente vincolati. Tuttavia, se vogliamo stampare questo blocco in 3D, è necessario mantenere il pezzo vicino al punto di origine (che è il centro dello spazio in cui la testina di stampa può muoversi). Con l'aggiunta di quel vincolo siamo certi che il pezzo rimarrà sempre "ancorato" al punto di origine.

  • Lo schizzo di base è pronto, possiamo lasciare la modalità di modifica premendo il pulsante Chiudi sulla parte superiore del pannello Azioni, o semplicemente premendo il tasto Esc. Se necessario in seguito, siamo in grado di rientrare in modalità di modifica in qualsiasi momento facendo doppio clic sullo schizzo nella vista ad albero.
  • Facciamo estrudere lo schizzo utilizzando lo strumento Pad, per una lunghezza di 14,4 mm. Le altre opzioni possono essere lasciate ai loro valori di default:

Il Pad si comporta in modo molto simile allo strumento Estrusione che abbiamo usato nel capitolo precedente. Ci sono, però, alcune differenze, e la principale è che un pad non può essere spostato, esso è sempre collegato al suo schizzo. Se si vuole cambiare la posizione del pad, è necessario spostare il disegno di base. Nel contesto attuale, in cui vogliamo essere sicuri che nulla si muova dalla sua posizione, si tratta di una sicurezza aggiuntiva.

  • Ora intagliamo l'interno del blocco, utilizzando lo strumento Tasca, che è la versione PartDesign di Parte Taglia. Per effettuare una tasca, creiamo uno schizzo sulla faccia inferiore del blocco, che sarà utilizzato per rimuovere una parte del blocco.
  • Con la faccia inferiore selezionata, premere il pulsante Nuovo schizzo.
  • Disegnare un rettangolo sulla faccia.

  • Ora vincoliamo il rettangolo in relazione alla faccia inferiore. Per fare questo, bisogna "importare" alcuni bordi della faccia con lo strumento Geometria esterna. Utilizzare questo strumento sulle due linee verticali della faccia inferiore:

Notare che con questo strumento possono essere aggiunti solo i bordi dalla faccia di base. Quando si crea uno schizzo con una faccia selezionata, si crea una relazione tra quella faccia e il disegno, che è importante per le successive operazioni. È sempre possibile rimappare in un secondo tempo uno schizzo su un'altra faccia con lo strumento Mappa schizzo.

  • La geometria esterna non è "reale", viene nascosta quando si esce dalla modalità di modifica. Ma è possibile usarla per posizionare i vincoli. Posizionare i seguenti 4 vincoli:
    • Selezionare il punto in alto a sinistra del rettangolo e il punto in alto della linea importata di sinistra e aggiungere un vincolo Distanza orizzontale di 1.8mm
    • Selezionare nuovamente il punto in alto a sinistra del rettangolo e il punto in alto della linea importata di sinistra e aggiungere un vincolo Distanza verticale di 1.8mm
    • Selezionare il punto in basso a destra del rettangolo e il punto in basso della linea importata di destra e aggiungere un vincolo Distanza orizzontale di 1.8mm
    • Selezionare nuovamente il punto in basso a destra del rettangolo e il punto in basso della linea importata di destra e aggiungere un vincolo Distanza verticale di 1.8mm

  • Uscire dalla modalità di modifica. Ora si può eseguire l'operazione di tasca: con il disegno selezionato, premere il pulsante Pocket. Assegnargli una lunghezza di 12.6 mm, che lascia alla faccia superiore del pad lo spessore di 1.8 mm (ricordare che l'altezza totale del pad è di 14.4 mm).

  • Ora si devono attaccare le 8 bugne sulla faccia superiore. Per fare questo, dato che sono una ripetizione di una stessa caratteristica, si può usare il pratico strumento Schiera lineare dell'ambiente Part Design, che permette di modellare una volta e poi ripetere la forma.
  • Iniziare selezionando la faccia superiore del blocco
  • Creare un Nuovo schizzo.
  • Creare due cerchi.
  • Per ogni cerchio, selezionarlo e aggiungere un /it|Vincolo raggio di 3.6mm a ciascuno di essi
  • Importare il bordo sinistro della faccia di base con lo strumento Geometria esterna.
  • Inserire due vincoli verticali e due vincoli orizzontali di 6 mm tra il centro di ogni cerchio ed i punti d'angolo del bordo importato, in modo che il centro di ogni cerchio sia a 6 millimetri dal bordo della faccia:

  • Si noti, ancora una volta, che quando si blocca la posizione e la dimensione di ogni elemento del disegno, esso diventa completamente vincolato. Questo permette di andare sempre sul sicuro. Ora si potrebbe cambiare il primo schizzo, ma tutto quanto fatto in seguito sarebbe conservato.
  • Uscire dalla modalità di modifica, selezionare questo nuovo schizzo, e creare un Pad di 2.7mm:

  • Si noti che, come in precedenza con la tasca, dato che si è utilizzata la faccia superiore del blocco di base come base per questo ultimo schizzo, qualsiasi operazione di PartDesign che si esegua con questo disegno sarà costruita correttamente sulla forma di base: la due bugne non sono oggetti indipendenti, esse sono state estruse direttamente dal mattoncino. Questo è il grande vantaggio di lavorare con l'ambiente PartDesign, a patto di costruire sempre ogni passaggio su quello precedente, in realtà si sta costruendo un oggetto solido finale.
  • Ora è possibile duplicare le bugne quattro volte, in modo da ottenerne otto. Selezionare l'ultimo Pad appena creato.
  • Premere il pulsante Schiera lineare.
  • Dargli una lunghezza di 36mm (che è l'estensione totale a cui si vuole adattare le copie), nella direzione "asse orizzontale dello schizzo", e creare 4 occorrenze:

  • Notare, ancora una volta, che questa non è solo una duplicazione di un oggetto, ma è una *caratteristica* di una forma che è stata duplicata, l'oggetto finale è ancora un solo oggetto solido.
  • Ora si deve lavorare sui tre "tubi" che riempiono il vuoto che è stato creato sulla faccia inferiore. Ci sono diverse possibilità: creare uno schizzo con tre cerchi, un pad e poi una tasca per tre volte, o creare uno schizzo di base con un cerchio dentro l'altro e fare pad per formare il tubo già completo, o anche altre combinazioni. Come sempre, in FreeCAD ci sono molti modi per raggiungere il medesimo risultato. A volte un modo non funziona come si desidera, e si deve cercare altri modi. Qui, useremo l'approccio più sicuro, facendo le cose un passo alla volta.
  • Selezionare la faccia che è al fondo della cavità scavata in precedenza all'interno del blocco.
  • Creare un nuovo schizzo, aggiungere un cerchio con un raggio di 4,8825 millimetri, importare il bordo sinistro della faccia, e vincolarlo verticalmente e orizzontalmente a 10,2 millimetri dall'angolo superiore della faccia:

Se si hanno difficoltà a selezionare le caratteristiche può essere d'aiuto nascondere parte del modello. Per nascondere un elemento, selezionarlo dalla vista ad albero e premere il tasto Spazio per attivare o disattivare la visibilità.

  • Uscire dalla modalità di modifica, e con questo schizzo eseguire un pad con una lunghezza di 12,6 mm
  • Creare una schiera lineare da questo ultimo pad, dargli una lunghezza di 24 mm e 3 occorrenze. Ora nello spazio vuoto ci sono tre tubi pieni:

  • Ora si devono fare i fori finali. Selezionare la faccia circolare del primo dei tre "spinotti"
  • Creare un nuovo schizzo, importare il bordo circolare della faccia, creare un cerchio con un vincolo raggio di 3,6 millimetri, e aggiungere un Vincolo di coincidenza tra il centro del cerchio importato e il nuovo cerchio. Ora il cerchio è perfettamente centrato, e ancora una volta completamente vincolato:

  • Uscire dalla modalità di modifica, e da questo schizzo creare una tasca con una lunghezza di 12,6 mm
  • Creare una schiera lineare da questa tasca, con una lunghezza di 24 mm e 3 occorrenze. Questo è l'ultimo passo, ora il pezzo di Lego è completo, possiamo dargli un bel colore in segno di vittoria!

Notare che la storia della modellazione (ciò che appare nella vista ad albero) è diventata piuttosto lunga. Essa è preziosa perché in seguito ogni singolo passo di quello che si è fatto può essere modificato. Adattando questo modello per creare un altro tipo di mattoncino, per esempio uno con 2x2 bugne, o 2x4, è una parte del lavoro, basta cambiare un paio di dimensioni e il numero di occorrenze delle schiere lineari. Si possono anche creare facilmente pezzi più grandi che non esistono nel gioco Lego originale.

Ma può anche essere utile sbarazzarsi dello storico, per esempio, se si ha intenzione di modellare un castello con questo mattoncino, e non si vuole avere nel file tutta questa cronologia ripetuta 500 volte.

Ci sono due modi semplici per sbarazzarsi della storia, uno è con lo strumento Crea una semplice copia dell'ambiente Part, che crea una copia del pezzo che non dipende più dalla storia (è possibile eliminare tutta la storia in seguito), l'altro modo è esportare il pezzo come un file STEP e poi reimportarlo.

Assemblaggio

Ma esiste anche il meglio dei due mondi, che è Assembly2 Workbench, un addon che può essere installato dal repository FreeCAD-addons. Questo Workbench è denominato "2" perché è anche in fase di sviluppo un ambiente di Assemblaggio built-in ufficiale, che non è ancora pronto. L'ambiente Assembly2, invece, funziona già molto bene per costruire assemblaggi, e dispone anche di un paio di vincoli oggetto-su-oggetto, che è possibile utilizzare per vincolare la posizione di un oggetto in relazione ad un altro. Nell'esempio che segue, tuttavia, è più veloce e più facile posizionare i pezzi usando Draft muovi e Draft ruota che utilizzando i vincoli di Assembly2.

  • Salvare il file nello stato attuale
  • Installare Assembly2 Workbench e riavviare FreeCAD
  • Creare un nuovo documento vuoto
  • Passare nell'ambiente Assembly2
  • Premere il pulsante Import a part from another FreeCAD document
  • Selezionare il file salvato in precedenza
  • Il pezzo finale viene importato nel documento corrente. L'ambiente Assembly2 individua automaticamente nel file qual è il pezzo finale che deve essere utilizzato, e il nuovo oggetto rimane collegato al file. Se si modifica il contenuto del primo file, basta premere il tasto Update parts imported into the assembly per aggiornare anche qui i pezzi.
  • Utilizzando diverse volte il pulsante Import a part from another FreeCAD document , e lo spostamento e la rotazione dei pezzi (con gli strumenti Draft o manipolando la loro proprietà Placement), è possibile creare rapidamente un piccolo assemblaggio:

Download

Approfondimenti



Uno dei principali utilizzi di FreeCAD è quello di produrre oggetti del mondo reale. Questi possono essere progettati in FreeCAD, e poi essere resi reali in diversi modi, come ad esempio comunicati ad altre persone che poi li costruiscono, o, sempre più frequentemente, inviati direttamente ad una stampante 3D o ad una macchina CNC. In questo capitolo viene spiegato come ottenere dei modelli pronti per essere inviati a queste macchine.

Se siete stati oculati durante la modellazione, la maggior parte degli inconvenienti che si possono verificare durante la stampa in 3D del modello sono già stati evitati. Questo richiede fondamentalmente:

  • Fare in modo che gli oggetti 3D sono solidi. Gli oggetti del mondo reale sono solidi, anche il modello 3D deve essere solido. Abbiamo visto nei capitoli precedenti che FreeCAD aiuta molto in questo proposito, e che l'ambiente PartDesign vi avvisa se fate un'operazione che impedisce al vostro modello di rimanere solido. L'ambiente Part contiene anche lo strumento Controlla geometria che è comodo per controllare ulteriormente se ci sono difetti.
  • Essere sicuri delle dimensioni degli oggetti. Un millimetro sarà un millimetro nella realtà. Ogni dimensione è importante.
  • Controllare il degrado. Nessuna stampante 3D o nessun sistema di fresatura CNC può ricevere direttamente i file di FreeCAD. La maggior parte di essi capiranno solo un linguaggio macchina chiamato G-Code. G-code ha decine di dialetti diversi, ogni macchina o venditore di solito utilizza il proprio. La conversione dei modelli in G-Code può essere facile e automatica, ma si può anche farla manualmente, con il controllo totale sull'output. In ogni caso, durante il processo avverrà inevitabilmente una perdita di qualità del modello. Quando si stampa in 3D, è sempre necessario assicurarsi che questa perdita di qualità stia sotto i propri requisiti minimi.

Da qui in avanti, si suppone che i primi due criteri siano soddisfatti, e che ormai si è in grado di produrre oggetti solidi di dimensioni corrette. Vediamo ora come affrontare il terzo punto.

Esportare nello slicer

Questa è la tecnica più utilizzata per la stampa 3D. L'oggetto 3D viene esportato in un altro programma ( lo slicer, l'affettatrice) che genera il G-codice dall'oggetto, affettando in strati sottili (da qui il nome), che riproducono i movimenti che la stampante 3D farà. Poiché molti di tali stampanti sono di tipo proprietario, ci sono spesso piccole differenze da una all'altra. Questi programmi di solito offrono la possibilità di configurazioni avanzate che permettono di adattare l'uscita esattamente per le funzioni della propria stampante 3D.

Anche se la stampa 3D è un soggetto troppo vasto per questo manuale, vedremo come esportare e utilizzare questi slicer per verificare che l'uscita sia corretta.

Convertire gli oggetti in mesh

Alla data attuale, nessuno degli slicer è in grado di ricevere direttamente la geometria solida come viene prodotta in FreeCAD. Quindi è necessario convertire prima qualsiasi oggetto che si desideri stampare in 3D in un mesh, che apribile dallo slicer. Fortunatamente, anche se convertire un mesh in un solido è un'operazione complicata, al contrario, convertire un solido in un mesh, è molto semplice. Tutto quello a cui bisogna stare attenti è che ora si verifica il degrado di cui abbiamo parlato in precedenza. Bisogna controllare che il degrado rimanga all'interno di limiti accettabili.

Tutta la manipolazione delle mesh, in FreeCAD, è fatta da un'altro specifico ambiente di lavoro, l'ambiente Mesh. Questo ambiente contiene, oltre a quelli più importanti, gli strumenti che convertono tra oggetti Parte e oggetti mesh, diverse utility per analizzare e riparare le mesh. Anche se si lavorare con le mesh non è il focus di FreeCAD, quando si lavora con la modellazione 3D, è spesso necessario aver a che fare con gli oggetti mesh, dato che il loro uso è molto diffuso tra le altre applicazioni. Questo ambiente di lavoro consente di gestirle completamente in FreeCAD.

  • Andiamo a convertire uno degli oggetti modellati nei capitoli precedenti, come ad esempio il pezzo di Lego (che può essere scaricato dal link posto dalla fine del capitolo precedente).
  • Aprire il file FreeCAD che contiene il pezzo lego.
  • Passare all'ambiente Mesh
  • Selezionare il mattoncino Lego
  • Selezionare il menu Meshes → Crea Mesh da Forma
  • Si apre un pannello delle attività con diverse opzioni. Alcuni algoritmi di meshing aggiuntivi (Mefisto o NetGen) potrebbero non essere disponibili, secondo come è stata compilata la versione di FreeCAD. L'algoritmo standard di meshing è sempre presente. Esso offre meno possibilità rispetto agli altri due, ma è del tutto sufficiente per oggetti di piccole dimensioni che rientrano nel massimo formato di stampa di una stampante 3D.

  • Selezionare il mesher Standard, e lasciare il valore della deviazione per il valore di default di 0.10. Premere Ok.
  • Viene creato un oggetto mesh, esattamente sopra al nostro oggetto solido. Nascondere il solido, oppure spostare uno degli oggetti, in modo da poterli confrontare.
  • Cambiare la proprietà View → Display Mode del nuovo oggetto mesh in Flat Lines, per vedere che aspetto ha la triangolazione.
  • Se non si è soddisfatti, e si pensa che il risultato è troppo grossolano, è possibile ripetere l'operazione, abbassando il valore dalla deviazione. Nell'esempio che segue, nella mesh di sinistra si è utilizzato il valore di default di 0.10, mentre in quella di destra si è utilizzato il valore 0.01:

Nella maggior parte dei casi, però, i valori di default danno un risultato soddisfacente.

  • Ora possiamo esportare la mesh in un formato mesh, come STL, che è attualmente il formato più utilizzato nella stampa 3D, utilizzando il menu File → Esporta e scegliendo il formato di file STL.

Se non si possiede una stampante 3D, di solito è molto facile trovare dei servizi commerciali che stampano e inviano gli oggetti stampati per posta. Tra i più famosi ci sono Shapeways e Sculpteo, ma di solito è facile trovarne molti altri nella propria città. In tutte le grandi città al giorno d'oggi si trovano i Fab labs, che sono negozi dotati di una serie di macchine per la produzione 3D, compresa quasi sempre almeno una stampante 3D. I laboratori Fab sono solitamente degli spazi comunitari, che vi permettono di utilizzare le loro macchine, a pagamento o gratuitamente a seconda dei Fab Lab, ma che vi insegnano anche come usarle, e che promuovono altre attività relative alla produzione 3D.

Utilizzare Slic3r

Slic3r è un'applicazione che converte gli oggetti STL in G-code che possono essere inviati direttamente alle stampanti 3D. Come FreeCAD, è gratuito, open-source e funziona su Windows, Mac OS e Linux. Configurare correttamente le cose per la stampa 3D è un processo complicato, in cui è necessario avere una buona conoscenza della stampante 3D, quindi non è molto utile generare il codice G prima di poter realmente andare in stampa (il file G-code potrebbe non funzionare bene su un'altra stampante), ma per noi è comunque utile, per controllare che il file STL possa essere stampato senza problemi.

Questo è il nostro file STL esportato e aperto in Slic3r. Usando il scheda anteprima, e spostando il cursore a destra, possiamo visualizzare il percorso che la testina di stampa 3D seguirà per costruire il nostro oggetto.

Utilizzare l'addon Cura

Cura è un'altra applicazione slicer free e open-source per Windows, Mac e Linux, gestita dal produttore di stampante 3D Ultimaker. Alcuni utenti di FreeCAD hanno creato un Cura Workbench che utilizza Cura internamente. L'ambiente Cura è disponibile dal repositorio FreeCAD addons. Per utilizzare l'ambiente Cura è necessario installare anche Cura stesso, che non è incluso nell'ambiente.

Dopo aver installato sia Cura, sia l'ambiente Cura, si è in grado di usarlo per produrre il file G-code direttamente dagli oggetti Parte, senza la necessità di convertirli in mesh, e senza la necessità di aprire un'applicazione esterna. La produzione di un altro file G-code dal nostro mattoncino Lego, utilizzando questa volta l'ambiente Cura, è fatta nel seguente modo:

  • Caricare il file che contiene il mattoncino Lego (può essere scaricato dal link posto alla fine del capitolo precedente)
  • Passare all'ambiente Cura
  • Imposta lo spazio di stampa scegliendo il menu 3D printing -> Create a 3D printer definition. Dato che non stiamo stampando veramente, possiamo lasciare le impostazioni così come sono. Nella vista 3D viene mostrata la geometria del piano di stampa e lo spazio disponibile.
  • Spostare il mattoncino Lego in una posizione adatta, ad esempio il centro del piano di stampa. Ricordare che gli oggetti PartDesign non possono essere spostati direttamente, quindi è necessario spostare il suo primo schizzo (il primo rettangolo), oppure spostare (e stampare) una copia, che può essere fatta con lo strumento Parte → Crea una copia semplice. La copia può essere spostata, per esempio con Draft → Sposta.
  • Selezionare l'oggetto da stampare, e poi selezionare il menu 3D printing → Slice with Cura Engine.
  • Nel pannello delle Azioni che si apre, assicurarsi che il percorso del file eseguibile Cura sia impostato correttamente. Dato che in realtà non abbiamo intenzione di stampare , possiamo lasciare tutte le altre opzioni come sono. Premere Ok. Nella stessa directory del file di FreeCAD vengono generati due file, un file STL e un file G-code.

  • Il G-code generato può anche essere re-importato in FreeCAD (utilizzando il preprocessore slic3r) per il controllo.

Generating G-code

Generare il G-code

Warning: Questa sezione è stata realizzata per FreeCAD 0.16. Sono stati apportati cambiamenti significativi alla creazione del percorso. Si prega di fare riferimento alla documentazione dell'ambiente Path in generale o al tutorial della procedura per path!

FreeCAD offre anche modi più avanzati per generare direttamente il G-code. Questo è spesso molto più complicato rispetto all'utilizzo di strumenti automatici come abbiamo visto sopra, ma ha il vantaggio di permettere di controllare completamente l'uscita. Di solito questo è non necessario quando si utilizzano stampanti 3D, ma diventa molto importante quando si tratta di fresatrici CNC, che sono macchine molto più complesse.

In FreeCAD la generazione del percorso G-code è fatta con l'ambiente Path. Esso è dotato di strumenti che generano percorsi macchina completi e altri che generano solo parti di un progetto G-code, che possono essere assemblati per formare delle operazioni complesse di fresatura.

La generazione di percorsi di fresatura CNC è un altro argomento troppo grande per essere affrontato in questo manuale, quindi vediamo ora come costruire un progetto Path semplice, senza preoccuparci molto della maggior parte dei dettagli di una vera lavorazione CNC.

  • Caricare il file che contiene il pezzo di Lego, e passare all'ambiente Path.
  • Dato che il pezzo finale non contiene più nessuna faccia piana rettangolare, nascondere il pezzo lego finale, e mostrare il primo pad cubico fatto, che ha la faccia superiore rettangolare.
  • Selezionare la faccia superiore e premere il pulsante Profilo.
  • Impostare la sua proprietà Offset a 1mm.

  • Poi, duplichiamo questo primo ciclo alcune volte, in modo che lo strumento ritagli l'intero blocco. Selezionare il percorso Profile, e premere il pulsante Matrice.
  • Impostare la proprietà Copies della matrice a 8, e il suo Offset a -2mm nella direzione Z , e spostare il posizionamento della matrice di 2 mm in direzione Z, in modo che il taglio inizi poco sopra il pad, e comprenda anche l'altezza delle bugne.

  • Abbiamo definito un percorso che, quando seguita dalla fresatrice, intaglierà un volume rettangolare da un blocco di materiale. Ora bisogna intagliare lo spazio tra le bugne, per renderle evidenti. Nascondere il Pad, e mostrare di nuovo il pezzo finale, in modo che si possa selezionare la faccia che si trova tra le bugne.
  • Selezionare la faccia superiore, e premere il pulsante Tasca. Impostare la proprietà Offset a 1mm, e la retraction height a 20mm. Questo è l'altezza a cui l'utensile viaggerà nel passaggio da un ciclo all'altro. Altrimenti, l'utensile può tagliare una delle bugne:

  • Fare una nuova matrice. Selezionare l'oggetto Pocket, e premere il pulsante Matrice. Impostare il numero di Copies a 1 e un offset di -2 mm nella direzione Z. Spostare il posizionamento della matrice di 2 mm in direzione Z. Le due operazioni svolte:

  • Ora tutto ciò che rimane da fare è unire queste due operazioni in una sola. Questo può essere fatto con una Lavorazione. Premere il pulsante Lavorazione.
  • Impostare la proprietà Usa Posizionamento del progetto su True, perché cambiamo il posizionamento delle matrici, e vogliamo che questo sia preso in considerazione nel progetto.
  • Nella visualizzazione ad albero, trascinare e rilasciare i due array nel progetto. Se necessario, è possibile riordinare le matrici all'interno del progetto facendo un doppio clic su di esso.
  • Il progetto può essere esportato in codice G, selezionandolo, scegliendo menù File -> Esporta, selezionando il formato G-code, e nella finestra di pop-up che si apre, selezionando uno script di post-elaborazione in base alla macchina.

Per simulare il taglio vero sono molte disponibili applicazioni, una di queste, che è anche multi-piattaforma e open-source come FreeCAD, è Camotics.

Download

Approfondimenti

Video



Quando il modello non può essere stampato o fresato direttamente da una macchina, perché, ad esempio, è troppo grande (un edificio) o richiede un montaggio manuale dopo che i pezzi sono pronti, di solito bisogna spiegare ad un'altra persona come realizzarlo. Nel campo tecnico (ingegneria, architettura, ecc), questo di solito viene fatto con dei disegni. I disegni vengono consegnati alla persona responsabile dell'assemblaggio del prodotto finale e questi spiegheranno come farlo.

Esempi tipici sono architectural drawings e blueprints. Questi disegni di solito contengono non solo i disegni stessi, ma anche molte annotazioni, quali testo, quote, numeri, simboli che aiutano a capire che cosa deve essere fatto e come.

In FreeCAD, l'ambiente di lavoro responsabile della produzione di tali disegni è l'ambiente TechDraw.

L'ambiente TechDraw consente di creare dei fogli, che possono essere vuoti o utilizzare un modello predefinito che ha già una serie di elementi, come i bordi e un cartiglio. Su questi fogli, si possono quindi posizionare le viste degli oggetti 3D modellati in precedenza, e configurare come queste viste devono apparire sul foglio. E' anche possibile effettuare tutti i tipi di annotazione, come quotatura, testi e altri simboli comunemente usati nei disegni tecnici.

I fogli di disegno, una volta completi, possono essere stampati o esportati come file SVG, PDF o DXF.

Nel seguente esercizio, vedremo come creare un semplice disegno di un modello di sedia trovato in FreeCAD library (Industrial Design → Chairs → IkeaLikeChair). La libreria FreeCAD può essere facilmente aggiunta alla propria installazione FreeCAD (consultare il capitolo installazione di questo manuale), oppure si può semplicemente scaricare il modello dalla libreria della pagina web, oppure tramite il link diretto fornito in fondo a questo capitolo.

  • Caricare il file IkeaLikeChair dalla libreria. Si può scegliere tra la versione .FCStd, che carica la storia completa della modellazione, o la versione .step, che crea solo un oggetto, senza la storia. Dato che ora non avremo bisogno di fare ulteriore modellazione, è meglio scegliere la versione .step, in quanto è più facile da manipolare.

  • Passare all'ambiente TechDraw
  • Premere il pulsante Nuovo disegno da modello.
  • Selezionare il modello A4_Portrait_ISO7200TD. Una nuova scheda si aprirà nella finestra di FreeCAD, mostrando la nuova pagina.
  • Nella Vista ad albero (o nella scheda del modello), selezionare il modello della sedia. Molto probabilmente si chiamerà qualcosa come "Open CASCADE STEP translator".
  • Premere il pulsante Vista.
  • Verrà creato un oggetto View sulla nostra pagina. Selezionare l'oggetto della vista nella vista ad albero, quindi assegnare alla vista le seguenti proprietà nella scheda dati della vista combinata:
    • Sotto la categoria Base:
      • X: 70 mm
      • Y: 120 mm
      • Rotazione: 0
      • Scala: 0.1
    • Sotto la categoria Proiezione (premi la freccia del menu a discesa per modificare singolarmente i componenti x, y e z di queste proprietà):
      • Direzione: [0 0 1]
      • XDirection: [0 -1 0] (Cambia prima il campo y, poi il campo x)
  • Ora abbiamo una bella vista dall'alto della nostra sedia. Premere il pulsante Attiva o disattiva la cornice per disattivare la cornice, le etichette e i vertici della vista.

  • Ripetere l'operazione per due volte, per aggiungere altri due punti di vista. Poi impostare i valori X e Y, che indicano la posizione della vista nella pagina, per mostrarle spostate dalla vista dall'alto, e impostare la loro direzione per creare i diversi orientamenti di vista. Dare alle nuove viste le seguenti proprietà:
    • View001 (vista frontale): X: 70, Y: 220, Scale: 0.1, Rotation: 0, Direction: (-1,0,0), XDirection: (0,-1,0)
    • View002 (vista laterale): X: 150, Y: 220, Scale: 0.1, Rotation: 0, (0,-1,0), XDirection: (1,0,0)
  • Fatto questo, si ottiene la seguente pagina:

  • Tieni presente che potrebbero esserci modi più semplici per ottenere le visualizzazioni che desideri. Puoi semplicemente ruotare la vista 3D del tuo modello e, una volta ottenuta la vista che desideri, selezionare il modello nella vista ad albero e premere Nuova vista. Questo inserirà automaticamente una vista con le proprietà di rotazione e direzione desiderate. Puoi anche utilizzare lo strumento Gruppo di proiezioni.
  • Possiamo modificare l'aspetto delle nostre viste se vogliamo, per esempio possiamo cambiare la loro proprietà Line Width (sotto la scheda View nella Combo View) a 0.5.

Apporremo ora quote e indicazioni sul nostro disegno. Esistono due modi per aggiungere quote a un modello: uno consiste nel posizionare le quote all'interno del modello 3D, utilizzando lo strumento Quotatura dell'ambiente Draft, quindi posizionando una vista di queste dimensioni sul nostro foglio con lo strumento Vista di Draft. L'altro è fare le cose direttamente sul foglio TechDraw. Useremo quest'ultimo metodo.

  • Premere il pulsante di commutazione per attivare i vertici.
  • Utilizzare Ctrl + clic sinistro del mouse per selezionare i due vertici tra cui si desidera misurare la distanza.
  • Premere il pulsante Lunghezza.


  • Ripetere l'operazione, fino a posizionare tutte le quote che si desidera indicare. Usare gli strumenti Dimensione verticale e Dimensione orizzontale se necessario.
  • Prendersi un minuto per guardare le proprietà dell'oggetto Dimension nella vista combinata.
  • Tieni presente che se stai quotando una vista axonometric (ad es. vista isometrica) invece di una multiview vista (ad esempio, vista frontale) come abbiamo fatto qui, dovrai utilizzare lo strumento Link alla geometria 3D per ottenere una dimensione precisa.

  • Ora posizioneremo le due annotazioni mostrate nell'immagine sopra, utilizzando lo strumento Pallinatura.

  1. Guardando la Pagina nella finestra Vista 3D, selezionare la Vista a cui sarà collegata la Pallinatura, come mostrato nell'immagine qui sopra.
  2. Premere il pulsante .
  3. Il cursore viene ora visualizzato come icona a fumetto. Fare clic sulla pagina per posizionare l'origine del fumetto nella posizione desiderata.
  4. La bolla del fumetto può essere trascinata nella posizione desiderata.
  5. Modificare le proprietà del fumetto facendo doppio clic sull'etichetta del fumetto o sull'oggetto del fumetto nella Vista ad albero. Questo aprirà la finestra di dialogo Balloon Task. Impostare il campo Valore sul testo desiderato e modificare la selezione del menu a discesa Simbolo in None
  6. Premere OK
  7. Ripetere l'operazione per il secondo callout.
  • Adesso compileremo il cartiglio del foglio.
    • Assicurarsi che i frame, le etichette e i vertici della vista siano visibili. In caso contrario, premere il pulsante di commutazione .
    • Modificare il testo in ogni sezione del cartiglio del foglio facendo clic sul quadratino verde a sinistra del testo.

La pagina può essere esportata in formato SVG per essere ulteriormente lavorata in applicazioni grafiche come Inkscape, o in DXF. Selezionare la pagina nella vista ad albero e poi selezionare dal menu File → Export. Il formato DXF è importabile in quasi tutte le applicazioni CAD 2D esistenti. Le pagine TechDraw possono anche essere direttamente stampate o esportate in formato PDF.

Download

Approfondimenti

Guarda i tutorial


This documentation is not finished. Please help and contribute documentation.

GuiCommand model explains how commands should be documented. Browse Category:UnfinishedDocu to see more incomplete pages like this one. See Category:Command Reference for all commands.

See WikiPages to learn about editing the wiki pages, and go to Help FreeCAD to learn about other ways in which you can contribute.

BIM sta per Building Information Modeling (Modello di Informazioni di un Edificio). La definizione esatta di ciò che è varia, ma possiamo dire semplicemente che è il modo attuale di modellare gli edifici e le altre strutture di grandi dimensioni, come ponti, gallerie, ecc ... I modelli BIM sono di solito basate su modelli 3D, e comprendono anche una serie di ulteriori strati di informazioni, come le informazioni sui materiali, le relazioni con altri oggetti o modelli, o le istruzioni speciali per la costruzione o la manutenzione. Queste informazioni supplementari consentono tutti i tipi di analisi avanzate del modello, come ad esempio la resistenza strutturale, i costi e le stime dei tempi di costruzione, o il calcolo del consumo energetico.

L'ambiente Arch di FreeCAD implementa una serie di strumenti e servizi per la modellazione BIM. Anche se ha uno scopo diverso, è fatto per lavorare in stretta integrazione con il resto di FreeCAD. Qualsiasi cosa fatta con qualsiasi altro ambiente di FreeCAD può diventare un oggetto Arch, o essere utilizzato come base per un oggetto Arch.

Come nell'ambiente PartDesign, gli oggetti prodotti dall'ambiente Arch sono destinati ad essere costruiti nel mondo reale. Pertanto, devono essere solidi. Gli strumenti ad Arch di solito si prendono cura di questo automaticamente, e forniscono anche degli strumenti di utilità per facilitare la verifica della validità degli oggetti.

L'ambiente Arch comprende anche tutti gli strumenti di Draft, e usa la sua griglia e il sistema di aggancio. Prima di iniziare, è sempre una buona idea sfogliare le pagine delle preferenze di entrambi, Draft e Arch, e definire le impostazioni di default secondo i vostri gusti.

In questo capitolo, vedremo come modellare questo piccolo edificio:

e produrre un piano e una vista in sezione da esso:

  • Creare un nuovo documento e passare all'ambiente Arch.
  • Aprire il menu Modifica → Preferenze → Draft → Griglia e Snap e impostare:
    • Linee principali ogni 10.
    • Spaziatura della griglia 1000mm per avere una griglia di un metro, conveniente per le dimensioni del nostro edificio.
    • Dimensione della griglia 100 righe.
  • Sulla barra degli strumenti di snap assicurarsi che il pulsante Snap Griglia sia abilitato, in modo da poter utilizzare la griglia il più possibile.
  • Se non si vedono gli assi, fare clic sul pulsante Attiva/disattiva griglia.
  • Impostare il Piano di lavoro sul piano XY
  • Zoom indietro e panoramica in modo da poter vedere l'area da (0,0) a (4,3). Vedere la Navigazione con il mouse per le istruzioni.
  • Disegnare quattro linee con lo strumento Linea. E' possibile inserire le coordinate manualmente o semplicemente selezionando i punti sulla griglia con il mouse:
    • Dal punto (0,0) al punto (0,3)
    • Dal punto (0,3) al punto (4,3)
    • Dal punto (4,3) al punto (4,0)
    • Dal punto (4,0) al punto (0,0)

NOTA: A causa di un bug nella versione 0.18, assicurarsi di eseguire le righe in questo ordine e in questa direzione.

Si noti che abbiamo disegnato sempre nella stessa direzione (in senso orario). Questo non è necessario, ma farà in modo che le pareti che noi costruiremo in seguito abbiano tutte la stessa direzione, sinistra e destra. Si potrebbe anche pensare che qui avremmo potuto semplicemente disegnare un rettangolo, il che è vero. Ma le quattro linee ci permetteranno di illustrare meglio come aggiungere un oggetto in un altro.

  • Una volta create le linee, controllare i loro punti di inizio e di fine e regolare se necessario per renderle esattamente corrette.


  • Selezionare la prima linea, quindi premere il pulsante Muro.
  • Ripetere questa operazione per le altre 3 linee, fino a quando si dispone di 4 muri.
  • Selezionare le quattro mura, e impostare la loro proprietà Height a 3.00 m e la loro proprietà Alignment su left. Se non si tracciano le linee nello stesso ordine come abbiamo fatto in precedenza, alcune delle pareti potrebbero avere le loro direzioni sinistra e destra capovolte, e Alignement potrebbe dover essere invece impostato su right . Si otterranno quattro pareti intersecanti, all'interno delle linee di base:

Ora si devono unire queste mura, affinché si intersechino in modo corretto. Questo non è necessario quando i muri sono disegnati in modo che siano già collegati in modo corretto, ma qui dobbiamo farlo, dato che si intersecano. In Arch, questo viene fatto decidendo che una delle pareti è "host" (ospite), e aggiungendo le altre a questa, come "aggiunte". Tutti gli oggetti Arch possono avere qualsiasi numero di aggiunte (oggetti la cui geometria verrà aggiunta alla geometria ospite), e sottrazioni (oggetti la cui geometria verrà sottratta). Le aggiunte e le sottrazioni di un oggetto possono essere gestiti in qualsiasi momento facendo doppio clic sull'oggetto nella struttura.

  • Selezionare le quattro pareti tenendo premuto il tasto Ctrl, l'ultimo dei muri scelti diventa l'ospite.
  • Premere il tasto Aggiungi. Ora le quattro pareti sono state trasformate in una sola:

Le singole pareti sono comunque ancora accessibili, espandendo il muro nella vista ad albero.

  • Vediamo ora come posizionare una porta. In FreeCAD, le porte sono considerate un caso particolare di finestre, quindi questo viene fatto usando lo strumento Finestra.
  • Iniziare selezionando il muro. Questo non è necessario, ma è una buona abitudine da prendere. Se si seleziona un oggetto quando si avvia lo strumento Finestra, si forza l'inserimento della finestra in quell'oggetto, anche se si aggancia un altro oggetto.
  • Impostare il Piano di lavoro su auto in modo da non sono limitati al piano terra
  • Premere il pulsante Finestra.
  • Nel pannello di creazione della finestra, selezionare la preset Glass door , e impostare la sua Width a 0.9 m e la sua Height a 2.1 m
  • Assicurarsi che la casella di snap a Vicino sia attivata, in modo che sia possibile agganciarsi alle facce
  • Posizionare la finestra verso il centro della faccia anteriore del muro:

  • Dopo aver cliccato, la finestra viene posta sulla faccia giusta, ma non esattamente dove vogliamo:

  • Ora possiamo impostare la posizione precisa, espandendo il muro e gli oggetti della finestra nella vista ad albero e cambiando la proprietà Placement dello schizzo di base della porta. Impostare la sua posizione a x = 2 m, y = 0, z = 0. Ora la finestra è esattamente dove vogliamo:

  • Ripetere l'operazione per inserire una finestra: Selezionare il muro, premere lo strumento finestra, selezionare il modello predefinito Open 2-pane, e posizionare una finestra di 1 m x 1 m nella stessa faccia della porta. Impostare il posizionamento dello schizzo sottostante nella posizione posizionare x = 0.6 m, y = 0, z = 1.1 m, così la linea superiore della finestra è allineata alla parte superiore della porta.

Le finestre sono sempre costruite su schizzi. Per creare facilmente delle finestre personalizzate basta creare prima uno schizzo su una faccia, poi trasformarlo in una finestra selezionandolo e premendo il pulsante finestra. Poi, i parametri di creazione della finestra, cioè i profili del disegno che devono essere estrusi e di quanto, possono essere definiti facendo un doppio clic sulla finestra nella vista ad albero. Vediamo ora creare una soletta:

  • Impostare il Piano di lavoro sul piano XY
  • Creare un rettangolo con una lunghezza di 5m, una larghezza di 4m, nella posizione x:-0.5m, y:-0.5m, z:0.
  • Selezionare il rettangolo
  • Cliccare lo strumento struttura per creare una soletta dal rettangolo
  • Impostare la proprietà height della soletta a 0.2m e la sua direzione normal a (0,0,-1) perché vogliamo che estruderla verso il basso. Potremmo anche semplicemente spostarla in basso di 0.2m , ma è una buona norma tenere sempre gli oggetti estrusi nella stessa posizione del loro profilo di base.
  • Impostare la proprietà Role della soletta su slab. Ciò non è necessario in FreeCAD, ma è importante per l'esportazione IFC, questo garantisce che l'oggetto viene esportato con il corretto tipo IFC.

  • Vediamo ora come utilizzare uno dei modelli di strutture predefinite per fare una trave metallica. Cliccare sul pulsante struttura, selezionare il preset HEB 180, e impostare la sua altezza a 4m. Posizionarla ovunque:

  • Regolare il suo placement impostando il suo Angle a 90° sugli assi (1,0,0), e la sua position a x:90 mm, y:3.5 m, z:3.09 m.

Ciò posiziona la putrella esattamente su una delle pareti laterali:

  • Ora bisogna duplicare questa trave alcune volte. Potremmo fare i duplicati uno per volta con lo strumento clona, ma c'è un modo migliore, per fare tutte le copie in una sola volta utilizzando una schiera:
  • Selezionare la trave
  • Premere il pulsante Serie ortogonale
  • Impostare Numero di elementi per la direzione X dell'array su 6, impostare il numero per la direzione Y e Z su 1 e premere OK.
  • Espandere la proprietà interval X della serie e premere la piccola icona espressione sul lato destro del campo X. Questo apre un editor delle espressioni:

  • Scrivere (4m-180mm)/5 nel campo dell'espressione, e premere OK. Questo imposta il valore di x a 0.764 (4 m è la lunghezza totale della parete frontale, 180 mm è la larghezza della trave, è per questo che si chiama HEB180, e vogliamo un quinto di quello spazio come intervallo tra ogni trave):

  • Ora su di loro possiamo costruire facilmente una semplice soletta, disegnando un rettangolo direttamente sul piano superiore delle travi. Selezionare una faccia superiore di una delle travi
  • Premere il pulsante piano di lavoro. Il piano di lavoro è ora impostato su quella faccia.
  • Creare un rettangolo, agganciarsi ai due punti opposti del limite delle travi:

  • Selezionare il rettangolo
  • Clicccare sul pulsante struttura e creare una soletta di altezza 0.2m.

Questo è tutto, il nostro modello è completo. Ora dovremmo organizzarlo in modo che sia esportato correttamente in IFC. Il formato IFC richiede che tutti gli oggetti di un edificio siano all'interno di un oggetto edificio, ed eventualmente, in un piano. Richiede inoltre che tutti gli edifici siano posti in un sito, ma l'esportatore IFC di FreeCAD aggiunge automaticamente un sito predefinito, se necessario, quindi qui non abbiamo bisogno di aggiungerne uno.

  • Selezionare le due solette, il muro, e la serie di travi
  • Premere il pulsante Piano
  • Selezionare il piano appena creato
  • Premere il pulsante Edificio

Ora il modello è pronto per l'esportazione:

Il formato IFC è una delle cose più preziose nel mondo BIM free, perché permette lo scambio di dati tra tutte le applicazioni e attori del mondo delle costruzioni, in modo aperto (il formato è aperto, libero e mantenuto da un consorzio indipendente). Esportare i modelli BIM come IFC assicura che chiunque può vederli e analizzarli, non importa quale applicazione viene utilizzata.

In FreeCAD, lìimportazione e l'esportazione IFC è fatta interfacciando un'altra parte di software, chiamato IfcOpenShell. Per essere in grado di esportare in IFC da FreeCAD, nel sistema deve essere installato il pacchetto IfcOpenShell-python. Assicurarsi di selezionarne uno che utilizza la stessa versione Python di FreeCAD. La versione Python utilizzata da FreeCAD viene visualizzata all'apertura del pannello Vista -> Pannelli -> Console Python in FreeCAD. Fatto questo, è possibile esportare il modello:

  • Selezionare l'oggetto superiore che si desidera esportare, vale a dire, l'oggetto Building.
  • Selezionare il menu File -> Esporta -> Industry Foundation Classes e salvare il file.
  • Il file IFC risultante può essere aperto in una vasta gamma di applicazioni e di visualizzatori (L'immagine sottostante mostra il file aperto nel visualizzatore free IfcPlusPlus). Controllare il file esportato in una tale applicazione di visualizzazione prima di distribuirlo ad altre persone è importante per controllare che tutti i dati contenuti nel file siano corretti. Per riaprire il file IFC risultante può anche essere utilizzato FreeCAD stesso.

Ora aggiungiamo alcune dimensioni. A differenza del capitolo precedente, dove abbiamo disegnato tutte le dimensioni direttamente sul foglio da disegno, qui usiamo un altro metodo, e mettiamo le dimensioni di Draft direttamente nel modello 3D. Queste dimensioni saranno poi posizionate automaticamente nel foglio di disegno. Per prima cosa creiamo due gruppi per le dimensioni, uno per le dimensioni che appaiono nella vista in pianta, e un altro per quelle che appaiono nel prospetto.

  • Fare clic sul documento "house" nella vista ad albero, e di creare due nuovi gruppi: Plan dimensions and Elevation dimensions.
  • Impostare come Piano di lavoro il piano XY
  • Accertarsi che l'aggancio limita al piano di lavoro sia attivato, in modo che tutto quello che si disegna sia posizionato nel piano di lavoro.
  • Disegnare un paio di dimensioni, per esempio come nell'immagine sottostante. Premendo Shift e Ctrl mentre si agganciano i punti di quota si ottengono opzioni aggiuntive.

  • Selezionare tutte le dimensioni, e trascinarle nel gruppo Plan dimensions nella vista ad albero
  • Impostare come Piano di lavoro il piano XZ, cioè il piano verticale frontale.
  • Ripetere le operazioni, disegnare un paio di dimensioni, e metterle nel gruppo Elevation dimensions.

Ora prepariamo una serie di viste del modello, per posizionarle in una pagina di Disegno. Possiamo farlo con gli strumenti dell'ambiente Drawing, come abbiamo visto nel capitolo precedente, ma l'ambiente Arch offre anche uno strumento avanzato tutto-in-uno per la produrre le viste in pianta, le sezioni ed i prospetti, chiamato Piano di sezione. Ora aggiungeremo due di questi piani di sezione, per creare una vista in pianta e in alzato.

  • Selezionare l'oggetto building nella vista ad albero
  • Premere il pulsante Piano di sezione.
  • Impostare la sua proprietà Display Height a 5m, e Display Length a 6m, così circondiamo la casa (questo non è necessario, ma serve a dare un aspetto migliore, e naturalmente sarà spiegato per cosa serve), e la sua posizione Placement a x:2m, y:1.5m, z:1.5m.
  • Controllare l'elenco degli oggetti considerati dal piano di sezione con un doppio clic su di esso nella vista ad albero. I piani di sezione considerano solo specifici oggetti del modello, non tutti. Gli oggetti considerati dal piano di sezione possono essere cambiati qui.

  • Ripetere l'operazione per creare un altro piano di sezione, dargli la stessa lunghezza ed altezza di visualizzazione, e dargli il seguente Placement: position: x:2m, y:-2m, z:1.5m, angle: 90°, axis: x:1, y:0, z:0. Assicurarsi che questo nuovo piano di sezione consideri anche l'oggetto edificio.

  • Ora abbiamo tutto quello che serve, e possiamo creare la pagina di disegno. Iniziare passando all'ambiente Drawing, e creare una nuova pagina A3 predefinita (o selezionare un altro modello se lo si desidera).
  • Selezionare il primo piano di sezione, utilizzato per la vista in pianta
  • Premere il pulsante Vista Draft. Questo strumento offre un paio di funzionalità aggiuntive rispetto allo strumento standard Vista Drawing, e supporta i Piani di sezione dall'ambiente Arch.
  • Dare la nuova vista le seguenti proprietà:
    • X: 50
    • Y: 140
    • Scale: 0.03
    • Line width: 0.15
    • Show Cut True
    • Show Fill: True
  • Selezionare l'altro piano di sezione, e creare una nuova Vista Draft, con le seguenti proprietà:
    • X: 250
    • Y: 150
    • Scale: 0.03
    • Rendering: Solid

Ora creiamo due altre Viste Draft, una per ogni gruppo di dimensioni.

  • Selezionare il gruppo Plan dimensions
  • Premere il pulsante Vista Draft.
  • Dare alla nuova vista le seguenti proprietà:
    • X: 50
    • Y: 140
    • Scale: 0.03
    • Line width: 0.15
    • Font size: 10mm
  • Ripetere l'operazione per l'altro gruppo, con le seguenti impostazioni:
    • X: 250
    • Y: 150
    • Scale: 0.03
    • Line width: 0.15
    • Font size: 10mm
    • Direction: 0,-1,0
    • Rotation: 90°

Ora la pagina è pronta, e può essere esportata nel formato SVG o DXF, o stampata. Il formato SVG può essere aperto con le applicazioni di grafica come ad esempio inkscape, con il quale è possibile migliorare rapidamente i disegni tecnici e trasformarli in disegni di presentazione molto più belli. Offre molte più possibilità rispetto al formato DXF.

Downloads

Correlazioni



FreeCAD dispone di un altro ambiente di lavoro interessante da esplorare: l'ambiente Spreadsheet. Questo ambiente permette di creare direttamente in FreeCAD un foglio di calcolo come quelli fatti con Excel o con Calc di LibreOffice. Questi fogli di calcolo possono essere popolati con dei dati estratti dal modello, e possono anche eseguire una serie di calcoli tra i valori. I fogli di calcolo possono essere esportati come file CSV, che possono essere importati in qualsiasi altra applicazione che gestisca i foglio di calcolo.

In FreeCAD, però, fogli di calcolo hanno un'utilità aggiuntiva: le loro celle possono ricevere un nome, e possono quindi essere referenziate da qualsiasi campo supportato dal motore delle espressioni. Questo trasforma fogli di calcolo in potenti strutture di controllo, in cui i valori inseriti nelle specifiche celle possono guidare le dimensioni del modello. C'è solo una cosa da tenere a mente, dato che FreeCAD vieta le dipendenze circolari tra oggetti, lo stesso foglio non può essere utilizzato per impostare una proprietà di un oggetto e allo stesso tempo recuperare il valore della proprietà dallo stesso oggetto. Ciò renderebbe il foglio di calcolo e l'oggetto dipendenti l'uno dall'altro.

Nel seguente esempio, creeremo un paio di oggetti, recupereremo alcune delle loro proprietà in un foglio di calcolo, e quindi utilizzeremo il foglio di calcolo per guidare direttamente le proprietà di altri oggetti.

Leggere le proprietà

  • Iniziare passando all'ambiente Part, e creare alcuni oggetti: un box, un cilindro e una sfera.
  • Modificare le loro proprietà Placement (o usare lo strumento Muovi) per separarli, in modo che si possa vedere meglio gli effetti di quello che faremo:

  • Ora, si tratta di estrarre alcune informazioni su questi oggetti. Passare all'ambiente Spreadsheet
  • Premere il pulsante Nuovo foglio di calcolo
  • Fare doppio clic sul nuovo oggetto Spreadsheet nella vista ad albero. Si apre l'editor dei fogli di calcolo:

L'editor di FreeCAD, anche se non è così completo e potente come quello dei fogli di calcolo elencati sopra, posside comunque la maggior parte degli strumenti di base e le funzioni che vengono utilizzate comunemente, come ad esempio la possibilità di cambiare l'aspetto delle celle ( dimensione, colore, allineamento), unire e dividere le celle, l'uso di formule come = 2 + 2, o di riferirsi ad altre celle con = B1.

In FreeCAD, oltre a queste funzionalità comuni, ce n'è una nuova interessante: la possibilità di fare riferimento non solo ad altre celle, ma anche ad altri oggetti del documento, e di recuperare i valori dalle loro proprietà. Come esempio, proviamo a recuperare alcune proprietà dai 3 oggetti creati in precedenza. Le proprietà sono quello che possiamo vedere nella finestra dell'editor delle proprietà, nella scheda Dati, quando si seleziona un oggetto.

  • Iniziamo inserendo un paio di testi nelle celle A1, A2 e A3, in modo che più avanti si possa ricordare a cosa si riferiscono, per esempio Cube Length, Cylinder Radius e Sphere Radius. Per immettere il testo, basta scrivere nel campo "Contents" sopra il foglio di calcolo, o fare doppio clic su una cella.
  • Ora recuperiamo la lunghezza attuale del cubo. Nella cella B1, digitare =Cube.Length. Notare che il foglio di calcolo ha un meccanismo di completamento automatico, che in realtà è lo stesso dell'editor delle espressioni che abbiamo usato nel capitolo precedente.
  • Fare lo stesso per le celle B2 (=Cylinder.Radius) e B3 (=Sphere.Radius).

  • Anche se questi risultati sono espressi con le loro unità, i valori possono essere manipolati come qualsiasi numero, provare ad esempio ad inserire nella cella C1: =B1*2.
  • Ora si può cambiare uno di questi valori nel editor delle proprietà, e il cambiamento si rifletterà immediatamente nel foglio di calcolo. Per esempio, cambiamo la lunghezza del cubo a 20 mm:

Nella pagina L'ambiente foglio di calcolo sono descritte più in dettaglio tutte le possibili operazioni e le funzioni disponibili nei fogli di calcolo.

Scrivere le proprietà

Un altro uso molto interessante del foglio di calcolo in FreeCAD è quello di fare il contrario di quello che abbiamo fatto fino ad ora: invece di leggere i valori delle proprietà degli oggetti 3D, possiamo anche assegnare i valori a questi oggetti. Ricordate, però, una delle regole fondamentali di FreeCAD: le dipendenze circolari sono vietate. Pertanto, non possiamo usare lo stesso foglio per leggere e scrivere i valori di un oggetto 3D. Ciò renderebbe l'oggetto dipendente dal foglio di calcolo, che a sua volta sarebbe dipendente dall'oggetto. Creiamo invece un altro foglio di calcolo.

  • Ora possiamo chiudere la scheda foglio di calcolo (nella vista 3D). Questo non è obbligatorio, non c'è nessun problema nel mantenere diverse finestre di fogli di calcolo aperte.
  • Premere nuovamente il pulsante Nuovo foglio di calcolo
  • Cambiare il nome del nuovo foglio di calcolo con qualcosa di più significativo, come ad esempio Input (cliccare col tasto destro sul nuovo oggetto foglio di calcolo, e scegliere Rinomina).
  • Fare doppio clic sul foglio Input per aprire l'editor dei fogli.
  • Nella cella A1, inserire un testo descrittivo, per esempio: "Cube dimensions"
  • Nella cella B1, scrivere =5mm (utilizzando il segno = si è certi che il valore viene interpretato come un valore unitario, non come un testo).
  • Ora, per poter utilizzare questo valore al di fuori del foglio di calcolo, bisogna dare un nome, o un alias, alla cella B1. Fare clic con il tasto destro del mouse sulla cella, poi fare clic su Proprietà e selezionare la scheda Alias. Dargli un nome, ad esempio cubedims:

  • Premere OK, quindi chiudere la scheda foglio di calcolo
  • Selezionare l'oggetto cubo
  • Nel editor di proprietà, fare clic sulla piccola icona espressioni sul lato destro del campo Length. Si apre l'editor delle espressioni, dove si può scrivere Spreadsheet001.cubedims. Ripetere questa operazione per Height e Width:

Si potrebbe chiedere perché nell'espressione sopra abbiamo dovuto usare "Spreadsheet001" invece di "Input". Questo perché, in un documento FreeCAD, ogni oggetto ha un nome interno, che è unico nel documento, e una etichetta, che è quello che appare nella vista ad albero. Deseleziondo l'opzione appropriata nelle impostazioni delle preferenze, FreeCAD permette di dare la stessa etichetta a più di un oggetto. Questo è il motivo per cui tutte le operazioni che devono identificare con certezza un oggetto utilizzano il nome interno ivece dell'etichetta, che potrebbe designare più di un oggetto. Il modo più semplice per conoscere il nome interno di un oggetto è quello di mantenere aperto il pannello selezione (menù Visualizza → Pannelli → Selezione), esso indica sempre il nome interno di un oggetto selezionato:

Usando gli alias delle celle nei fogli di calcolo, è possibile utilizzare un foglio di calcolo per memorizzare i "valori master" in un documento FreeCAD. Questo può essere utilizzato, ad esempio, per avere un modello di un pezzo con certe dimensioni, e per memorizzare tali dimensioni in un foglio di calcolo. Diventa quindi molto facile produrre un altro modello con dimensioni diverse, basta aprire il file e modificare un paio di quote nel foglio di calcolo.

Infine, notare che anche i vincoli all'interno uno schizzo possono ricevere il valore da una cella del foglio:

Si può anche dare un alias a vincoli dimensionali (orizzontale, verticale o distanza) in uno schizzo (quindi è anche possibile utilizzare tale valore al di fuori dello schizzo):

Download

Approfondimenti



FEM sta per Finite Element Method (metodo degli elementi finiti). Si tratta di un vasto argomento di matematica, ma in FreeCAD possiamo riassumerlo come un modo per calcolare le propagazioni all'interno di un oggetto 3D, tagliandolo in piccoli pezzi, e analizzando l'impatto di ogni piccolo pezzo rispetto a quelli vicini. Questo ha diversi utilizzi nei campi dell'ingegneria e dell'elettromagnetismo, ma qui vedremo in modo più approfondito il suo utilizzo già ben sviluppato in FreeCAD, per simulare le deformazioni negli oggetti che sono sottoposti a forze e pesi.

In FreeCAD tale simulazione è fatta con l'ambiente FEM. Si tratta di diverse fasi: preparare la geometria, impostare il suo materiale, eseguire la meshing, dividere in parti più piccole, come abbiamo fatto nel capitolo Preparare gli oggetti per la stampa 3D, ed infine calcolare la simulazione.

Preparare FreeCAD

La simulazione vera e propria viene effettuata con un altro pezzo di software, che viene utilizzato da FreeCAD per ottenere i risultati. Dato che ci sono diverse interessanti applicazioni FEM open-source di simulazione disponibili, l'ambiente FEM è stato costruito in modo da poterne utilizzare più di una. Tuttavia, per ora è pienamente implementato solo CalculiX. È anche necessario un altro pezzo di software, chiamato NetGen, che è responsabile della generazione della suddivisione in maglie. Le istruzioni dettagliate per l'installazione di questi due componenti sono fornite nella documentazione di FreeCAD.

Preparare la geometria

Utilizzeremo la casa modellata nel capitolo Modellazione BIM. Tuttavia, devono essere fatte alcune modifiche per rendere il modello adatto ai calcoli FEM. Si tratta, in sostanza, di scartare gli oggetti che non vogliamo includere nel calcolo, come ad esempio la porta e la finestra, e di unire tutti gli oggetti rimanenti in uno solo.

  • Caricare il modello di casa creato in precedenza
  • Eliminare o nascondere l'oggetto pagina, i piani di sezione e le dimensioni, in modo che rimanga solo con il modello
  • Nascondere la finestra, la porta e la soletta del piano terra
  • Nascondere anche le travi di metallo del tetto. Dato che sono oggetti molto diversi dal resto della casa, non includendoli si semplifica il calcolo. Invece, considereremo il solaio di copertura come se fosse posto direttamente sulla parte superiore delle pareti.
  • Ora spostare la soletta del tetto verso il basso in modo che appoggi sulla parte superiore delle pareti: modificare l'oggetto Rettangolo usato come base del solaio di copertura, e cambiare il suo valore Placement->Position->X da 3.18 m a 3.00 m
  • Ora il modello è ripulito:
  • Attualmente l'ambiente FEM può calcolare solo le deformazioni su un singolo oggetto. Pertanto, bisogna unire i due oggetti (il muro e la soletta). Passare nell'ambiente Part, selezionare i due oggetti, e premere il pulsante Unione. Ora abbiamo ottenuto un oggetto fuso:

Creare l'analisi

  • Ora siamo pronti per iniziare una analisi FEM. Passare all'ambiente FEM
  • Selezionare l'oggetto fuso
  • Premere il pulsante Nuova analisi
  • Viene creata una nuova analisi e si apre un pannello per le impostazioni. Qui è possibile definire i parametri di meshing da utilizzare per produrre la mesh FEM. L'impostazione principale da modificare è il Max Size che definisce la dimensione massima (in millimetri) di ciascuna parte della mesh. Per ora, possiamo lasciare il valore predefinito di 1000:
  • Dopo aver premuto OK e pochi secondi di calcolo, la mesh FEM è pronta:
  • Ora possiamo definire il materiale da applicare alla mesh. Questo è importante perché secondo la resistenza del materiale,l'oggetto reagisce in modo diverso alle forze ad esso applicate. Selezionare l'oggetto Analisi e premere il pulsante Nuovo materiale.
  • Si apre un pannello delle attività che consente di scegliere un materiale. Nell'elenco a discesa dei Materiali, scegliere Concrete-generic, e premere OK.
  • Ora siamo pronti ad applicare le forze. Iniziamo specificando quali facce sono fissate nel terreno e, pertanto, non possono muoversi. Premere il pulsante Vincolo fissaggio.
  • Cliccare sulla faccia inferiore dell'edificio e premere OK. La faccia inferiore è indicata come inamovibile:
  • Ora aggiungeremo un carico sulla faccia superiore, che potrebbe rappresentare, per esempio, un peso massiccio distribuito sul tetto. Per questo useremo un vincolo pressione. Premere il pulsante Vincolo pressione.
  • Fare clic sulla faccia superiore del tetto, impostare la pressione di 10MPa (la pressione viene applicata per millimetro quadrato) e fare clic sul pulsante OK. Ora la forza è applicata:
  • Ora siamo pronti per iniziare il calcolo. Selezionare l'oggetto CalculiX nella vista ad albero, e premere il pulsante Calcola.
  • Nel pannello delle attività che si apre, cliccare prima il pulsante Write .inp file per creare il file di input per CalculiX, poi il pulsante Run CalculiX. Pochi istanti dopo il calcolo viene eseguito:
  • Ora possiamo guardare ai risultati. Chiudere il pannello delle attività, e vedere che all'analisi è stato aggiunto un nuovo oggetto Risultati .
  • Fare doppio clic sull'oggetto Risultati
  • Impostare il tipo di risultato che si desidera visualizzare sulla mesh, per esempio "absolute displacement", spuntare la casella di controllo show sotto Displacement, e spostare il cursore accanto ad essa. È possibile vedere che la deformazione aumenta man mano che si applica una forza maggiore:

Naturalmente, i risultati visualizzati attualmente dall'ambiente FEM non sono sufficienti per prendere delle decisioni reali sul dimensionamento delle strutture e sui materiali. Tuttavia, essi possono già dare preziose informazioni su come le forze fluiscono attraverso una struttura, e quali sono le aree deboli maggiormente sottoposte allo stress.

Download

Approfondimenti



Nell'ambito della grafica computerizzata, la parola rendering è usata per descrivere una bella immagine prodotta da un modello 3D. Naturalmente, si potrebbe dire che quello che si vede nella vista FreeCAD 3D è già bello. Ma chi ha visto un recente film di Hollywood sa che con un computer è possibile produrre immagini che sono quasi indistinguibili da una fotografia.

Ovviamente, la produzione di immagini fotorealistiche richiede molto lavoro, oltre a un'applicazione 3D che offra strumenti specifici a tale scopo, come controlli precisi per i materiali e l'illuminazione. Poiché FreeCAD è un'applicazione orientata più verso la modellazione tecnica, non dispone di strumenti di rendering avanzati.

Fortunatamente, il mondo open-source offre molte applicazioni per la produzione di immagini realistiche. Probabilmente il più famoso è Blender, che è molto popolare e ampiamente utilizzato nei film e nei giochi. I modelli 3D possono essere esportati da FreeCAD molto facilmente e fedelmente e poi importati in Blender, dove è possibile aggiungere materiali e illuminazione realistici, e produrre le immagini finali o anche le animazioni.

Alcuni altri strumenti di rendering open source sono realizzati per essere utilizzati all'interno di altre applicazioni e si occuperanno di eseguire calcoli complessi per produrre immagini realistiche. Attraverso il suo ambiente Raytracing, FreeCAD può utilizzare due di questi strumenti di rendering: POV-Ray e org/wiki/LuxRender Luxrender. POV-Ray è un progetto molto vecchio ed è considerato un classico motore raytracing, mentre Luxrender è molto più recente ed è classificato come [https: //en.wikipedia.org/wiki/Unbiased_rendering imparziale] renderer. Entrambi hanno i loro punti di forza e di debolezza, a seconda del tipo di immagine che si vuole renderizzare. Il modo migliore per saperlo è guardare gli esempi sul sito Web di ciascun motore.

Installazione

Prima di poter utilizzare l'ambiente Raytracing in FreeCAD, si deve installare una di queste due applicazioni di rendering sul proprio sistema. Questo di solito è molto semplice, entrambi forniscono gli installatori per molte piattaforme e di solito sono inclusi nei repository software della maggior parte delle distribuzioni Linux.

Dopo che POV-Ray o Luxrender sono installati, è necessario impostare il percorso per il loro eseguibile principale nelle preferenze FreeCAD. Questo di solito è necessario solo su Windows e Mac. Su Linux, FreeCAD li cerca e individua nelle posizioni standard. Per trovare la posizione degli eseguibili POVRAY o LuxRender basta semplicemente cercare nel sistema i file denominati povray (o povray.exe in Windows) o luxrender (o luxrender.exe in Windows).

In questa schermata Preferenze si può anche impostare la dimensione desiderata dell'immagine che si vuole produrre.

Rendering con PovRay

Per la produrre il rendering con PovRay e LuxRender useremo il tavolo che abbiamo modellato nel capitolo modellazione tradizionale.

  • Iniziare caricando il file table.FCStd modellato in precedenza o dal link in fondo a questo capitolo.
  • Premere sulla freccia verso il basso piccolo accanto al pulsante Nuovo progetto Povray, e scegliere il modello RadiosityNormal
  • Potrebbe apparire un messaggio di avviso che indica che l'attuale vista 3D non è in modalità prospettiva e quindi il rendering sarà diverso. Correggere questo scegliendo No, scegliere il menu Visualizza->Vista in prospettiva e scegliere nuovamente il modello RadiosityNormal.
  • Dopo aver creato un nuovo progetto si può provare anche altri modelli, semplicemente modificando la sua proprietà Template.
  • È stato creato un nuovo progetto:

  • Il nuovo progetto ha adottato il punto di vista della vista 3D come era al momento in cui abbiamo premuto il pulsante. Possiamo cambiare la vista in qualsiasi momento, e aggiornare la posizione della vista memorizzata nel progetto Povray, premendo il pulsante Reset camera.
  • L'ambiente Raytracing funziona nello stesso modo dell'ambiente Drawing: dopo aver creato una cartella di progetto, bisogna aggiungere ad essa delle Viste degli oggetti. Ora possiamo farlo selezionando tutti gli oggetti che compongono il tavolo, e premendo il pulsante Inserisci parte:

  • Le viste hanno adottato i valori di colore e la trasparenza dei loro pezzi originali, ma, se lo si desidera, è possibile cambiare la situazione nelle proprietà di ogni singola vista.
  • Ora siamo pronti per produrre il primo render Povray. Premere il pulsante Render.
  • Nota per gli utenti windows: quando si riceve (in Povray) un avvertimento che dice "Le restrizioni I/O proibiscono l'accesso in scrittura ..."
    • aprire Povray
    • scegliere "Options > Script I/O Restrictions" e assicurarsi che sia impostato su "No Restrictions"
    • riprovare il rendering
  • Viene chiesto di dare un nome al file e di indicare il percorso per l'immagine .png che verrà salvata da Povray.
  • Povray si apre e calcola l'immagine.
  • Quando questo è fatto, è sufficiente fare clic sull'immagine per chiudere la finestra Povray. L'immagine risultante viene caricata in FreeCAD:

Rendering con LuxRender

  • Il rendering con LuxRender funziona quasi allo stesso modo. Possiamo lasciare aperto il nostro file e creare il nuovo progetto con LuxRender nello stesso file, o ricaricarlo per ripartire da zero.
  • Premere sulla piccola freccia verso il basso accanto al pulsante Nuovo progetto Luxrender e scegliere il modello LuxOutdoor.
  • Selezionare tutti i componenti del tavolo. Se il progetto Povray è ancora nel documento, accertarsi di selezionare anche il progetto lux stesso, in modo che le viste create nella fase successiva non vadano per errore nel progetto sbagliato.
  • Premere il pulsante Inserisci parte.
  • Selezionare il progetto LuxRender, e premere il pulsante Render.
  • LuxRender funziona in modo diverso rispetto a Povray. Quando si avvia il rendering, l'applicazione LuxRender si apre e inizia subito il rendering:

  • Se si lascia questa finestra aperta, LuxRender continua il calcolo e il rendering all'infinito, affinando progressivamente l'immagine. Spetta a voi decidere quando l'immagine ha raggiunto una qualità sufficiente per le vostre esigenze, e fermare il rendering.
  • Sul pannello di sinistra ci sono anche molti controlli con cui interagire. Tutti questi controlli cambiano l'aspetto dell'immagine mentre viene eseguito il rendering, in tempo reale, senza fermare il rendering.
  • Quando si ritiene che la qualità è abbastanza buona, basta premere Render->stop, e poi File->Export to image->Tonemapped low dynamic range per salvare l'immagine di rendering di un file PNG.

È possibile estendere notevolmente le possibilità di rendering di FreeCAD con la creazione di nuovi modelli per Povray o LuxRender. Questo è spiegato nella documentazione di Raytracing.

Download

Approfondimenti


Script Python


Python è un linguaggio di programmazione open source, ampiamente popolare, molto spesso incorporato in una applicazione come script, come nel caso di FreeCAD. Esso ha una serie di caratteristiche che lo rendono particolarmente interessante per gli utenti di FreeCAD: È molto facile da imparare, specialmente per le persone che non hanno mai programmato prima, ed è incorporato in molte altre applicazioni, il che lo rende un prezioso strumento da conoscere, e poi essere in grado di usarlo in molte altre applicazioni, come ad esempio Blender, Inkscape o GRASS.

FreeCAD fa un ampio uso di Python. Con esso, è possibile accedere e controllare praticamente qualsiasi funzione di FreeCAD. È possibile ad esempio creare dei nuovi oggetti, modificare la loro geometria, analizzare il loro contenuto, o addirittura creare nuovi comandi, strumenti e pannelli per l'interfaccia. Alcuni ambienti di FreeCAD e la maggior parte degli ambienti addon sono completamente programmati in Python. FreeCAD ha una console Python avanzata, disponibile dal menù Visualizza->Pannelli->Console Python. Spesso è utile per eseguire operazioni per le quali non vi è ancora alcun pulsante nella barra degli strumenti, o per verificare le forme che danno problemi, o per eseguire delle operazioni ripetitive:

Ma la console Python ha anche un altro uso molto importante: Ogni volta che si preme un pulsante della barra degli strumenti, o si eseguono altre operazioni in FreeCAD, un po' di codice Python viene stampato nella console (se l'opzione Mostra comandi script nella console Python è abilitata in Modifica → Preferenze → Python → Macro) ed eseguito. Lasciando la console Python aperta, è possibile letteralmente vedere il codice python svolgersi mentre si lavora, e in poco tempo, quasi inconsapevolmente, si impara un po' di linguaggio Python.

FreeCAD ha anche un sistema di macro, che permette di registrare le azioni per poterle riprodurre in un momento successivo. Anche questo sistema utilizza la console Python, registrando semplicemente in essa tutto ciò che viene fatto.

In questo capitolo, scopriremo molto in generale il linguaggio Python. Se siete interessati a saperne di più, il wiki della documentazione di FreeCAD ha una vasta sezione relativa alla programmazione in Python.

Scrivere del codice Python

Ci sono due semplici modi per scrivere del codice Python in FreeCAD: dalla console Python (Visualizza → Pannelli → Console Python), o dall'editor delle Macro (Strumenti → Macro → Nuova). Nella console, si scrivono i comandi Python uno per uno, e essi vengono eseguiti quando si preme Invio, mentre la macro può contenere uno script più complesso fatto di diverse righe, e viene eseguita solo quando la macro viene lanciata dalla stessa finestra Macro.

In questo capitolo, si descrive come utilizzare entrambi i metodi, ma si consiglia vivamente di utilizzare la console Python, perché essa informa immediatamente l'utente sugli eventuali errori che si possono fare durante la digitazione.

Se questa è la prima volta che si sta usando Python, prendere in considerazione la lettura di questa breve introduzione a Python prima di andare avanti, renderà più chiari i concetti di base di Python.

Manipolare gli oggetti di FreeCAD

Cominciamo creando un nuovo documento vuoto:

doc = FreeCAD.newDocument()

Se si digita questo nella console Python di FreeCAD, si noterà che non appena si digita "FreeCAD." (la parola FreeCAD seguita da un punto), si apre una finestra pop-up che permette di completare automaticamente e velocemente il resto della riga. In più, ogni voce dell'elenco di completamento automatico ha un tooltip che spiega quello che fa. Questo rende molto facile esplorare le funzionalità disponibili. Prima di scegliere "newDocument", dare un'occhiata alle altre opzioni disponibili.

Non appena si preme Enter viene creato il nuovo documento. Questo è simile a premere il pulsante "nuovo documento" sulla barra degli strumenti. In Python, il punto viene utilizzato per indicare qualcosa che è contenuto all'interno di qualcos'altro (newDocument è una funzione che si trova all'interno del modulo FreeCAD). La finestra che si apre, pertanto mostra tutto ciò che è contenuto all'interno di "FreeCAD". Se si aggiungesse un punto dopo newDocument, al posto delle parentesi, verrebbe mostrato tutto quello che è contenuto all'interno della funzione newDocument. Le parentesi sono obbligatorie quando si chiama una funzione Python, come nel caso di prima. In seguito illustreremo meglio questo.

Ora torniamo al nostro documento. Vediamo cosa possiamo fare con esso. Digitare quanto segue ed esplorare le opzioni disponibili:

doc.

Di solito i nomi che iniziano con una lettera maiuscola sono attributi, che contengono un valore, mentre i nomi che iniziano con la lettera minuscola sono funzioni (chiamate anche metodi), che "fanno qualcosa". I nomi che iniziano con un carattere di sottolineatura di solito servono per l'uso interno del modulo, e non è necessario preoccuparsene. Usiamo uno dei metodi per aggiungere un nuovo oggetto al nostro documento:

box = doc.addObject("Part::Box","myBox")

Nella vista ad albero viene aggiunto un cubo, ma nella vista 3D non succede ancora nulla, perché quando si lavora da Python, il documento non viene mai ricompilato automaticamente. Dobbiamo farlo manualmente, ogni volta che serve:

doc.recompute()

Ora nella vista 3D è apparso il cubo. Molti dei pulsanti della barra degli strumenti che aggiungono oggetti in FreeCAD in effetti fanno due cose: aggiungono l'oggetto, e ricalcolano. Provate ad aggiungere una sfera con l'apposito pulsante dell'ambiente Parte, e vedrete le due righe di codice Python eseguite una dopo l'altra.

È possibile ottenere un elenco di tutti i possibili tipi di oggetti come Part::Box:

doc.supportedTypes()

Ora esploriamo i contenuti del box:

box.

Si vedono subito un paio di cose molto interessanti come ad esempio:

box.Height 

Questo stampa l'altezza corrente del box. Ora proviamo a cambiare la situazione:

box.Height = 5 

Se si seleziona il box con il mouse, si vede che nel pannello delle proprietà, sotto la scheda Dati, la proprietà Height appare con il nuovo valore. Tutte le proprietà di un oggetto FreeCAD che appaiono nelle schede Dati e Vista sono anche accessibili direttamente con Python, tramite i loro nomi, come abbiamo fatto con la proprietà Height. Le proprietà Dati sono accessibili direttamente dall'oggetto stesso, ad esempio:

box.Length 

Le proprietà Vista sono memorizzate all'interno di un ViewObject. Ogni oggetto FreeCAD possiede un ViewObject, che memorizza le proprietà di visualizzazione dell'oggetto. Quando si esegue FreeCAD senza la sua interfaccia grafica (per esempio quando lo si lancia da un terminale con la linea di comando -c, o usandolo da un altro script Python), il ViewObject non è disponibile, poiché non vi è alcuna visualizzazione.

Provare esempio per accedere al colore della linea del box:

box.ViewObject.LineColor 

Vettori e Posizionamento

I vettori sono un concetto fondamentale in qualsiasi applicazione 3D. Si tratta di un elenco di 3 numeri (x, y e z), che descrivono un punto o una posizione nello spazio 3D. Con i vettori si possono fare un sacco di cose, come addizioni, sottrazioni, proiezioni e molto altro ancora. In FreeCAD i vettori di lavorano in questo modo:

myvec = FreeCAD.Vector(2,0,0)
print(myvec)
print(myvec.x)
print(myvec.y)
othervec = FreeCAD.Vector(0,3,0)
sumvec = myvec.add(othervec)


Un'altra caratteristica comune degli oggetti FreeCAD è la loro Posizionamento. Come abbiamo visto nei capitoli precedenti, ogni oggetto ha una proprietà Placement, che contiene la posizione (Base) e l'orientamento (Rotazione) dell'oggetto. Con Python è facile manipolare queste proprietà, ad esempio per spostare l'oggetto:

print(box.Placement)
print(box.Placement.Base)
box.Placement.Base = sumvec
otherpla = FreeCAD.Placement()
otherpla.Base = FreeCAD.Vector(5,5,0)
box.Placement = otherpla

Approfondimenti



Nei capitoli precedenti, abbiamo imparato a conoscere i diversi ambienti di FreeCAD, e come ciascuno di essi implementa i suoi propri strumenti e tipi di geometria. Gli stessi concetti si applicano quando si lavora con il codice Python.

Abbiamo anche visto che la grande maggioranza degli ambienti di FreeCAD dipendono da uno fondamentale: l'ambiente Part. Infatti, molti altri ambienti di lavoro, come ad esempio Draft e Arch, fanno esattamente quello che faremo in questo capitolo: usano del codice Python per creare e manipolare della geometria Part.

Quindi la prima cosa da fare per lavorare con la geometria Part, è di fare l'equivalente in Python passando all'ambiente Parte: importare il modulo Parte:

import Part

Dedicare un minuto per esplorare il contenuto del modulo parte, digitando Part. e navigare attraverso i diversi metodi disponibili. Il modulo Parte offre diversi funzioni di convenienza, come makeBox, makeCircle, ecc ... che costruiscono immediatamente un oggetto. Provare questo, come esempio:

Part.makeBox(3,5,7)

Quando si preme Invio dopo aver digitato la linea precedente, nella vista 3D non appare nulla, ma nella console di Python viene stampato qualcosa di simile:

<Solid object at 0x5f43600>

Questo è dove avviene un concetto importante. Quello che abbiamo creato qui è una forma parte, una Part Shape. Non si tratta ancora di un document object di FreeCAD. In FreeCAD, gli oggetti e loro geometria sono indipendenti. Pensiamo a un document object di FreeCAD come un contenitore, destinato a ospitare una forma. Gli oggetti parametrici hanno anche delle proprietà, come lunghezza e larghezza, e la loro forma viene ricalcolata al-volo, ogni volta che cambia una delle proprietà. Quì abbiamo calcolato una forma manualmente.

Ora possiamo creare facilmente un "generico" document object nel documento corrente (assicuratevi di avere almeno un nuovo documento aperto), e assegnargli la forma box che abbiamo appena creato:

boxShape = Part.makeBox(3,5,7)
myObj = FreeCAD.ActiveDocument.addObject("Part::Feature","MyNewBox")
myObj.Shape = boxShape
FreeCAD.ActiveDocument.recompute()

Notare come abbiamo gestito myObj.Shape, vedere che abbiamo fatto esattamente come abbiamo fatto nel capitolo precedente, quando abbiamo cambiato altre proprietà di un oggetto, come ad esempio box.Height = 5. Infatti, Shape è anche una proprietà, proprio come Height. Solo che prende una Part Shape, non un numero. Nel prossimo capitolo daremo uno sguardo più approfondito su come sono costruiti tali oggetti parametrici.

Per il momento, esploriamo la Part Shape più in dettaglio. Alla fine del capitolo in merito alla modellazione tradizionale con l'ambiente Parte abbiamo mostrato una tabella che spiega come sono costruiti le forme Parte, e le loro diverse componenti (vertici, spigoli, facce, ecc). Quì esistono gli stessi esatti componenti e possono essere recuperati da Python. Tutte le Part Shape hanno sempre i seguenti attributi: Vertici, Bordi, Wire, Facce, Shell e Solid. Sono tutti elenchi, che possono contenere qualsiasi numero di elementi o essere vuoti:

print(boxShape.Vertexes)
print(boxShape.Edges)
print(boxShape.Wires)
print(boxShape.Faces)
print(boxShape.Shells)
print(boxShape.Solids)

Per esempio, troviamo l'area di ogni faccia della nostra forma box: (Assicuratevi di rientrare la seconda riga, come appare sotto. Premete Invio due volte dopo l'ultima riga per eseguire il comando Python).

for f in boxShape.Faces:
   print(f.Area)

Oppure, il punto iniziale e il punto finale di ogni lato:

for e in boxShape.Edges:
   print("New edge")
   print("Start point:")
   print(e.Vertexes[0].Point)
   print("End point:")
   print(e.Vertexes[1].Point)

Come si vede, se il nostro boxShape ha un attributo "Vertexes", ogni Bordo del boxShape ha anche un attributo "Vertexes". Come ci si può aspettare, il boxShape ha 8 vertici, mentre il Bordo ne ha solo 2, che sono entrambi parte della lista degli 8.

Possiamo sempre controllare il tipo di una forma:

print(boxShape.ShapeType)
print(boxShape.Faces[0].ShapeType)
print(boxShape.Vertexes[2].ShapeType)

Quindi, per riassumere l'intero schema di una Part Shapes: Tutto comincia con i Vertici. Con uno o due vertici, si forma un bordo (i cerchi completi hanno un solo vertice). Con uno o più bordi, si forma un contorno, un Wire. Con uno o più contorni chiusi, si forma una faccia (i bordi aggiuntivi diventano "buchi" in una faccia). Con una o più facce, si forma un Guscio, un Shell. Quando un Shell è completamente chiusa (stagno), è possibile formare da esso un solido. E, infine, è possibile unire qualsiasi numero di forme di qualsiasi tipo, e produrre un Compoud, un Composto.

Ora proviamo a creare da zero forme complesse, con la costruzione di tutte le loro componenti una per una. Per esempio, cerchiamo di creare un volume come questo:

Inizieremo con la creazione di una forma planare come questa:

In primo luogo, creiamo i quattro punti di base:

V1 = FreeCAD.Vector(0,10,0)
V2 = FreeCAD.Vector(30,10,0)
V3 = FreeCAD.Vector(30,-10,0)
V4 = FreeCAD.Vector(0,-10,0)

Poi possiamo creare i due segmenti lineari:

L1 = Part.LineSegment(V1,V2)
L2 = Part.LineSegment(V4,V3)

Notare che non è necessario creare dei vertici. Si può creare subito una Part.LineSegments dai vettori di FreeCAD. Questo è perché qui non abbiamo ancora creato un Edge. Una Part.LineSegment (così come una Part.Circle, Part.Arc, Part.Ellipse o Part.BSpline) non crea un bordo, ma piuttosto una geometria di base su cui viene creato un bordo. Gli Edges sono sempre costituiti su una tale geometria di base, che memorizza il suo attributo Curve. Quindi, se si dispone di un bordo, facendo:

print(Edge.Curve)

mostra di che tipo di bordo si tratta, cioè, se si basa su una linea, un arco, ecc ... Ma torniamo all'esercizio, e creiamo i segmenti di arco. Per questo, serve un terzo punto, in modo da poter utilizzare il comodo Part.Arc, che prende 3 punti:

VC1 = FreeCAD.Vector(-10,0,0)
C1 = Part.Arc(V1,VC1,V4)
VC2 = FreeCAD.Vector(40,0,0)
C2 = Part.Arc(V2,VC2,V3)

Ora abbiamo 2 linee (L1 e L2) e 2 archi (C1 e C2). Bisogna trasformarli in bordi:

E1 = Part.Edge(L1)
E2 = Part.Edge(L2)
E3 = Part.Edge(C1)
E4 = Part.Edge(C2)

In alternativa, le geometrie di base hanno anche una funzione toShape() che fa esattamente la stessa cosa:

E1 = L1.toShape()
E2 = L2.toShape()
 ...

Ottenuta una serie di bordi, si può formare un contorno, dandogli un elenco di bordi. Bisogna stare attenti all'ordine. Inoltre, notare le parentesi.

W = Part.Wire([E1,E4,E2,E3])

E siamo in grado di verificare se il nostro contorno è stato compreso e chiuso correttamente:

print( W.isClosed() )

Che stampa "True" o "False". Per creare una faccia, servono dei contorni chiusi, quindi è sempre una buona idea controllare questo prima di creare la faccia. Ora possiamo creare una faccia, dandogli un unico Wire (o una lista di Wire se vogliamo dei fori):

F = Part.Face(W)

Poi la estrudiamo:

P = F.extrude(FreeCAD.Vector(0,0,10))

Si noti che P è già un solido:

print(P.ShapeType)

Questo perché quando si estrude una sola faccia, si ottiene sempre una solido. Non è così se, ad esempio, si estrude invece un contorno

S = W.extrude(FreeCAD.Vector(0,0,10))
print(S.ShapeType)

Che ovviamente ci dà un guscio vuoto, con le facce superiore e inferiore mancanti.

Ora che abbiamo la forma finale, siamo ansiosi di vederla sullo schermo! Quindi creiamo un oggetto generico, a cui attribuire il nostro nuovo Solid:

myObj2 = FreeCAD.ActiveDocument.addObject("Part::Feature","My_Strange_Solid")
myObj2.Shape = P
FreeCAD.ActiveDocument.recompute()

In alternativa, il modulo Parte fornisce anche una scorciatoia che esegue più velocemente l'operazione descritta sopra (ma non è possibile scegliere il nome dell'oggetto):

Part.show(P)

Tutto quanto detto sopra, e molto altro ancora, è spiegato in dettaglio nella pagina Script di Parti, insieme agli esempi.

Approfondimenti:



Nel precedente capitolo, abbiamo visto come creare una geometria Parte, e come visualizzarla sullo schermo, collegandola ad un document object "muto" (non parametrico). Questo è noioso quando vogliamo cambiare la forma di tale oggetto. Dovremmo creare una nuova forma, poi attribuirla di nuovo al nostro oggetto.

Ma, in tutti i capitoli precedenti di questo manuale abbiamo visto anche quanto sono potenti gli oggetti parametrici. Basta cambiare una loro proprietà, e la forma viene ricalcolata al volo.

Internamente, gli oggetti parametrici non fanno nulla di diverso da quello che abbiamo appena fatto: essi ricalcolano i contenuti delle loro proprietà Shape, più e più volte, ogni volta che viene cambiata una proprietà.

FreeCAD fornisce un sistema molto vantaggioso per costruire questi oggetti parametrici completamente in Python. Esso consiste in una semplice classe Python, che definisce tutte le proprietà di cui l'oggetto ha bisogno, e che cosa succede quando una di queste proprietà cambia. La struttura di questo oggetto parametrico è semplice come questa:

class myParametricObject:

    def __init__(self, obj):
        obj.Proxy = self
        obj.addProperty("App::PropertyFloat", "MyLength")
        ...

    def execute(self,obj):
        print ("Recalculating the shape...")
        print ("The value of MyLength is:")
        print (obj.MyLength)
        ...

Tutte le classi Python di solito hanno un metodo __init__. Ciò che è all'interno di tale metodo viene eseguito quando tale classe viene istanziata (il che significa, in gergo di programmazione, che da quella classe è stato creato un Object Python. Pensate a una classe come a un "modello" per creare copie dal vivo di esso). Nella nostra funzione __init__ qui facciamo due cose importanti: 1- memorizzare la nostra classe stessa nell'attributo "Proxy" del nostro oggetto del documento di FreeCAD, vale a dire, l'oggetto documento FreeCAD conterrà questo codice al suo interno, and 2- creare tutte le proprietà necessarie all'oggetto. Sono disponibili molti tipi di proprietà, è possibile ottenere l'elenco completo digitando questo codice:

FreeCAD.ActiveDocument.addObject("Part::FeaturePython", "dummy").supportedProperties()

Quindi, la seconda parte importante è il metodo execute. Tutto il codice contenuto in questo metodo viene eseguito quando l'oggetto viene contrassegnato per il ricalcolo, il che avviene quando si modifica una proprietà. Questo è tutto quello che c'è da fare. All'interno di execute, è necessario fare tutto ciò che deve essere fatto, vale a dire, calcolare una nuova forma e attribuirla all'oggetto stesso con qualcosa di simile a obj.Shape = myNewShape. Ecco perché il metodo execute prende un argomento "obj", che sarà il FreeCAD document object stesso, e in questo modo possiamo manipolarlo all'interno del nostro codice Python.

Un'ultima cosa importante da ricordare: se si creano questi oggetti parametrici in un documento di FreeCAD, quando si salva il file, il codice Python di cui sopra non viene memorizzato nel file. Questo viene fatto per motivi di sicurezza. Se un file di FreeCAD contenesse del codice, sarebbe possibile che qualcuno distribuisca dei file di FreeCAD contenenti del codice dannoso che potrebbe danneggiare i computer di altri. Quindi, se si distribuisce un file che contiene degli oggetti realizzati con il codice di cui sopra, tale codice deve essere presente anche sul computer che apre il file. Il modo più semplice per raggiungere questo obiettivo è di solito quello di salvare il codice di cui sopra in una macro, e poi distribuire la macro insieme con il file FreeCAD o condividere la macro nel FreeCAD macros repository dove chiunque può scaricarlo.

Ora faremo un piccolo esercizio, costruiremo un oggetto parametrico composto da una semplice faccia rettangolare parametrica. Esempi più complessi sono disponibili negli esempi di oggetti parametrici e nello stesso codice sorgente di FreeCAD .

Diamo al nostro oggetto due proprietà: Length e Width, che useremo per costruire un rettangolo. Poi, dato che l'oggetto ha già una proprietà Placement pre-costruita (tutti gli oggetti geometrici ne hanno una di default, quindi non è necessario aggiungerla), collochiamo il rettangolo nella posizione e rotazione impostata in Placement, per fare in modo che l'utente possa poi essere in grado di spostare il rettangolo ovunque desideri modificando solo la proprietà Placement.

class ParametricRectangle:

    def __init__(self,obj):
        obj.Proxy = self
        obj.addProperty("App::PropertyFloat", "Length")
        obj.addProperty("App::PropertyFloat", "Width")

    def execute(self, obj):
        # We need to import the FreeCAD module here too, because we might be running out of the Console
        # (in a macro, for example) where the FreeCAD module has not been imported automatically:
        import FreeCAD
        import Part

        # First we need to make sure the values of Length and Width are not 0
        # otherwise Part.LineSegment will complain that both points are equal:
        if (obj.Length == 0) or (obj.Width == 0):
            # If yes, exit this method without doing anything:
            return

        # We create 4 points for the 4 corners:
        v1 = FreeCAD.Vector(0, 0, 0)
        v2 = FreeCAD.Vector(obj.Length, 0, 0)
        v3 = FreeCAD.Vector(obj.Length,obj.Width, 0)
        v4 = FreeCAD.Vector(0, obj.Width, 0)

        # We create 4 edges:
        e1 = Part.LineSegment(v1, v2).toShape()
        e2 = Part.LineSegment(v2, v3).toShape()
        e3 = Part.LineSegment(v3, v4).toShape()
        e4 = Part.LineSegment(v4, v1).toShape()

        # We create a wire:
        w = Part.Wire([e1, e2, e3, e4])

        # We create a face:
        f = Part.Face(w)

        # All shapes have a Placement too. We give our shape the value of the placement
        # set by the user. This will move/rotate the face automatically.
        f.Placement = obj.Placement

        # All done, we can attribute our shape to the object!
        obj.Shape = f

Invece di incollare il codice precedente nella console Python, è meglio salvarlo da qualche parte, in modo da poterlo riutilizzare e modificare in un secondo tempo. Per esempio in una nuova macro (menu Strumenti -> Macro -> Crea). Dargli un nome, ad esempio, "ParamRectangle". Le macro FreeCAD vengono salvate con estensione .FCMacro, che però Python non riconosce quando si utilizza l'importazione. Quindi, prima di utilizzare il codice di cui sopra, bisogna rinominare il file ParamRectangle.FCMacro in ParamRectangle.py. Questo può essere fatto semplicemente, navigando con il file explorer nella cartella delle macro indicata nel menu Strumenti -> Macro.

Dopo, nella console Python possiamo fare questo:

import ParamRectangle

Esplorando i contenuti di ParamRectangle, possiamo verificare che contenga la nostra classe ParamRectangle.

Per creare un nuovo oggetto parametrico utilizzando la nostra classe ParametricRectangle, usiamo il seguente codice. Notare che usiamo Part::FeaturePython invece di Part::Feature che abbiamo usato nei capitoli precedenti (The Python version allows to define our own parametric behaviour):

myObj = FreeCAD.ActiveDocument.addObject("Part::FeaturePython", "Rectangle")
ParamRectangle.ParametricRectangle(myObj)
myObj.ViewObject.Proxy = 0 # This is mandatory unless we code the ViewProvider too.
FreeCAD.ActiveDocument.recompute()

Sullo schermo non appare ancora nulla perché le proprietà lunghezza e larghezza sono 0, e questo attiva la condizione "do-nothing" (non fare nulla) dentro execute. Basta cambiare i valori di lunghezza e larghezza, e magicamente appare il nostro oggetto ricalcolato al-volo.

Naturalmente è noioso dover digitare queste 4 righe di codice Python ogni volta che si vuole creare un nuovo rettangolo parametrico. Un modo molto semplice per risolvere questo consiste nel mettere le 4 righe di cui sopra all'interno del file ParamRectangle.py, alla fine, dopo la fine della classe ParametricRectange (Possiamo farlo dall'editor delle Macro).

Ora, quando si digita import ParamRectangle, viene automaticamente creato un nuovo rettangolo parametrico. Ancora meglio, siamo in grado di aggiungere un pulsante della barra degli strumenti che faccia proprio questo:

  • Aprire il menu Strumenti -> Personalizza
  • Nella scheda "Macro", selezionare la macro ParamRectangle.py, compilare la descrizione come si desidera, e premere "Aggiungi":

  • Nella scheda Barra degli strumenti, creare una nuova barra degli strumenti personalizzata in un ambiente a scelta (o in quello globale), selezionare la macro e aggiungerla alla barra degli strumenti:

  • Questo è tutto, ora nella barra degli strumenti abbiamo un nuovo pulsante che, se cliccato, crea un rettangolo parametrico.

Ricordare che se si desidera distribuire a terzi i file creati con questo nuovo strumento, i riceventi devono anche avere la macro ParamRectangle.py installata sul proprio computer.

Approfondimenti



Negli ultimi due capitoli, abbiamo visto come creare della geometria Parte e creare oggetti parametrici. Manca un ultimo pezzo per avere il pieno controllo su FreeCAD: creare strumenti che interagiscono con l'utente.

In molte situazioni, non è molto amichevole costruire un oggetto con valori zero, come abbiamo fatto con il rettangolo nel capitolo precedente, e poi chiedere all'utente di compilare i valori di altezza e larghezza nel pannello delle Proprietà. Questo va bene per un numero molto limitato di oggetti, ma diventa veramente noioso se si devono fare parecchi rettangoli. Sarebbe meglio poter assegnare l'altezza e la larghezza già durante la creazione del rettangolo.

Python offre uno strumento base che consente all'utente di inserire il testo dallo schermo:

text = raw_input("Height of the rectangle?")
print("The entered height is ",text)

Però, questo richiede una console Python in esecuzione, e quando si esegue il codice da una macro, non siamo sempre sicuri che la console Python sia attiva sulla macchina dell'utente.

La Graphical User Interface, o GUI, cioè, tutta la parte di FreeCAD che viene visualizzata sullo schermo (menu, barre degli strumenti, vista 3D, ecc), è tutta lì per questo scopo: interagire con l'utente. L'interfaccia di FreeCAD è costruita con Qt, un kit di strumenti GUI open-source molto comune che offre una vasta gamma di strumenti quali finestre di dialogo, pulsanti, etichette, caselle di testo o menu a discesa. Tutti questi strumenti sono genericamente chiamati "widget".

Gli strumenti Qt sono molto facili da usare da Python, grazie ad un modulo Python chiamato Pyside (ci sono anche molti altri moduli Python per comunicare con Qt da Python). Questo modulo permette di creare e interagire con i widget, leggere ciò che l'utente ha fatto con essi (leggere quello che è stato inserito nelle caselle di testo) o fare qualcosa quando, ad esempio, viene premuto un pulsante.

Qt fornisce anche un altro strumento interessante chiamato Qt Designer, che attualmente è incorporato all'interno di un'applicazione più grande chiamata Qt Creator. Esso consente di progettare finestre di dialogo e pannelli dell'interfaccia grafica, invece di doverli codificare manualmente. In questo capitolo, useremo Qt Creator per la progettazione di un pannello widget che useremo nel pannello Azioni di FreeCAD. Quindi è necessario scaricare e installare Qt Creator dalla sua official page se siete su Windows o Mac (su Linux di solito è disponibile tramite il gestore del software).

Nel prossimo esercizio, inizieremo usando Qt Creator per creare un pannello che richieda i valori di lunghezza, larghezza e altezza, poi creeremo su di esso una classe Python che legga nel pannello i valori inseriti dall'utente, e crei un box con le dimensioni indicate. Questa classe Python sarà poi utilizzata da FreeCAD per visualizzare e controllare il pannello delle azioni:

Cominciamo creando il widget. Avviare Qt Creator, quindi nel menu File → New File or Project → Files and Classes → Qt → Qt Designer Form scegliere Dialog without buttons. Cliccare Next, dare un nome per salvare il file, fare clic su Next, lasciare tutti i campi del progetto al loro valore di default ("<none>"), e poi clic su Create. Il sistema Azioni di FreeCAD aggiungerà automaticamente i pulsanti OK e Annulla, è per questo che abbiamo scelto un dialogo senza pulsanti.

  • Trovare Label nell'elenco degli oggetti del pannello di sinistra, e trascinarla sulla tela del widget. Fare doppio clic sulla Label appena inserita, e cambiare il suo testo in Length.
  • Fare clic destro sulla tela del widget, e selezionare Lay out → Lay out in a Grid. Questo trasforma il widget in una griglia con attualmente una sola cella, occupata dalla prima etichetta. Ora possiamo aggiungere le voci successive a sinistra, a destra, in alto o in basso rispetto alla prima etichetta, e la griglia si espande automaticamente.
  • Aggiungere altre due etichette sotto la prima, e cambiare il loro testo in Width e Height:

  • Ora inserire 3 widget Double Spin Box vicino alle etichette Length, Width e Height. Per ciascuno di essi, nel pannello inferiore di destra, che mostra tutte le impostazioni disponibili per il widget selezionato, individuare Suffix e impostare come loro suffisso mm. FreeCAD ha un widget più avanzato, in grado di gestire diverse unità, ma che non è disponibile di default in Qt Creator (ma che può essere compilato), quindi per ora usiamo un Doppio Spin Box standard, e aggiungiamo il suffisso "mm" per essere sicuri che l'utente sappia con quale unità sta lavorando:

  • Ora il nostro widget è creato, manca solo un'ultima cosa. Dato che FreeCAD avrà bisogno di accedere a tale widget e leggere la lunghezza, la larghezza e l'altezza, bisogna dare dei nomi appropriati a questi widget, in modo che all'interno di FreeCAD possano essere ritrovati facilmente. Fare clic su ciascuna delle caselle Double Spin, e nella finestra in alto a destra, fare doppio clic sul nome dell'oggetto, e cambiarlo a qualcosa di facile da ricordare, ad esempio,: BoxLength, BoxWidth e BoxHeight:

  • Salvare il file, e chiudere Qt Creator, il resto sarà fatto in Python.
  • Aprire FreeCAD e creare una nuova macro dal menù Macro → Macro → Crea
  • Incollare il codice seguente. Assicurarsi di modificare il percorso del file in modo che corrisponda a quello con cui è stato salvato il file .ui creato in Qt Creator:
import FreeCAD,FreeCADGui,Part
 
# CHANGE THE LINE BELOW
path_to_ui = "C:\Users\yorik\Documents\dialog.ui"
 
class BoxTaskPanel:
   def __init__(self):
       # this will create a Qt widget from our ui file
       self.form = FreeCADGui.PySideUic.loadUi(path_to_ui)
 
   def accept(self):
       length = self.form.BoxLength.value()
       width = self.form.BoxWidth.value()
       height = self.form.BoxHeight.value()
       if (length == 0) or (width == 0) or (height == 0):
           print("Error! None of the values can be 0!")
           # we bail out without doing anything
           return
       box = Part.makeBox(length,width,height)
       Part.show(box)
       FreeCADGui.Control.closeDialog()
        
panel = BoxTaskPanel()
FreeCADGui.Control.showDialog(panel)

Nel codice precedente, abbiamo utilizzato una funzione di convenienza (PySideUic.loadUi) del modulo FreeCADGui. Questa funzione carica un .ui file, crea da esso un Qt Widget, e mappa i nomi, e in questo modo consente di accedere facilmente al SubWidget tramite i loro nomi (ex: self.form.BoxLength).

Anche la funzione "accept" è una convenienza offerta da Qt. Quando in un dialogo vi è un pulsante "OK" (che è il caso di default quando si utilizza il pannello Azioni di FreeCAD), qualsiasi funzione di nome "accept" viene automaticamente eseguita quando si preme il pulsante "OK". Analogamente, è possibile anche aggiungere una funzione "reject" che viene eseguita quando si preme il pulsante "Annulla". Nel nostro caso, abbiamo omesso tale funzione, quindi premendo "Annulla" si esegue il comportamento di default (non fare nulla e chiudere la finestra di dialogo).

Se implementiamo una delle funzioni accept o reject, il loro comportamento di default (non fare nulla e chiudere) non si verifica più. Quindi dobbiamo chiudere noi il pannello Azioni. Ciò viene fatto con:

FreeCADGui.Control.closeDialog()

Una volta che abbiamo il nostro BoxTaskPanel che ha 1- un widget chiamato "self.form" e 2- se necessario, accetta e rifiuta le funzioni, con esso possiamo aprire il pannello delle attività, tramite queste due ultime righe:

panel = BoxTaskPanel()
 FreeCADGui.Control.showDialog(panel)

Notare che il widget creato da PySideUic.loadUi non è specifico per FreeCAD, ma è un widget standard di Qt che può essere utilizzato con gli altri strumenti di Qt. Ad esempio, con esso possiamo mostrare una finestra di dialogo separata. Proviamo questo nella console Python di FreeCAD (ovviamente utilizzando il percorso corretto per il file .ui):

from PySide import QtGui
 w = FreeCADGui.PySideUic.loadUi("C:\Users\yorik\Documents\dialog.ui")
 w.show()

Naturalmente al nostro dialogo non abbiamo aggiunto un pulsante "OK" o "Cancel", dato che è stato fatto per essere usato dal pannello Azioni di FreeCAD che fornisce già tali pulsanti. Quindi non c'è nessun modo per chiudere la finestra di dialogo (oltre che premere il suo pulsante Chiudi finestra). Ma la funzione show() crea una finestra di dialogo non modale, il che significa che non blocca il resto dell'interfaccia. Così si possono leggere i valori dei campi mentre il dialogo è ancora aperto,:

w.BoxHeight.value()

Ciò è molto utile per i test.

Infine, non dimenticate che c'è molta altra documentazione sull'utilizzo dei wiget di Qt, nella sezione Script Python, che contiene un tutorial per creare dialoghi, e uno speciale tutorial per PySide in tre parti che copre ampiamente l'argomento.

Link importanti


La comunità


Nessuna manuale che riguardi il software libero e open-source sarebbe completo senza un capitolo sulla comunità. Come la stragrande maggioranza dei progetti di software libero e open-source, FreeCAD è costruito da una comunità, e mantenuto dalla stessa comunità. Al contrario di una ditta opaca, sconosciuta, impersonale e inaccessibile che sovente si trova alla base del software commerciale, le comunità di software libero e open-source sono spazi aperti, dove gli utenti sono i benvenuti, e dove è possibile ottenere risposte molto veloci, e anche esprimere la propria opinione sullo sviluppo del software stesso. Inoltre, si è più che benvenuti se si vuole partecipare, ci sono attività per tutti.

La nostra comunità è crescente, ed è un gruppo eclettico di tutti i tipi di persone unite dalla passione per FreeCAD. Tutti lavorano su FreeCAD volontariamente, durante il loro tempo libero (anche se a volte le imprese o le persone si riuniscono per pagare un paio di ore di programmazione a uno sviluppatore per implementare una funzione specifica). Alcuni sono programmatori professionisti, alcuni sono degli utenti di FreeCAD da lunga data (alcuni di loro sono veri e propri guru di FreeCAD, che sanno quasi tutto, e molti di loro finiscono per conoscere anche parecchia programmazione di FreeCAD), e molti sono i nuovi utilizzatori di FreeCAD. Per essere parte della comunità non è necessario fare nulla di specifico, basta usare FreeCAD!

Il luogo principale in cui la comunità si incontra e discute è il forum di FreeCAD. Per partecipare alle discussioni basta registrare un proprio account sul forum (Per prevenire lo SPAM il primo post deve essere approvato da un moderatore prima di poterne postare altri). Il forum è un luogo ideale per fare domande quando si inizia con FreeCAD. A condizione di aver fatto una buona domanda (assicuratevi di aver letto la pagina delle regole del forum in quanto contiene informazioni utili per trasformare la vostra domanda in una buona domanda), di solito si ottengono diverse risposte entro un'ora. Se pensate che qualcuno potrebbe avere già posto la vostra stessa domanda, fate una ricerca, la risposta potrebbe già essere presente.

Il forum è anche un luogo ideale per mostrare i risultati ottenuti attraverso FreeCAD, per aiutare i nuovi arrivati quando siete più esperti, e per seguire e dare le vostre opinioni nelle discussioni più tecniche sullo sviluppo. Tutto lo sviluppo di FreeCAD è discusso sul forum, e chiunque è libero di leggere o partecipare.

Ci sono anche delle comunità FreeCAD costituite al di fuori del foro di FreeCAD, ad esempio su Facebook.

Se state diventando entusiasti di FreeCAD come lo siamo noi, forse desiderate aiutare il progetto. Potete farlo in molti modi diversi, e ci sono attività per tutti, programmatori e non programmatori, ad esempio:

  • Aiutare a diffondere FreeCAD: Molte persone potrebbero trarre grandi benefici usando un modellatore 3D libero, open-source come FreeCAD, ma semplicemente non sanno che esso esiste. Pubblicare il lavoro che fate con FreeCAD, parlarne sui social network, ecc ... aiuta queste persone a scoprire FreeCAD.
  • Aiutare i nuovi utenti: La stragrande maggioranza delle discussioni sul forum sono domande poste dai nuovi utenti. Forse potete dare loro delle buone risposte.
  • Riportare i bug: La stabilità di FreeCAD si basa in gran parte sulla correzione dei bug. Dato che gli sviluppatori di FreeCAD non possono testare tutti i possibili casi d'uso, è importante che gli utenti segnalino i problemi quando li rilevano. Se ritenete di aver trovato un bug, leggete le linee guida , e poi scrivete una relazione nel bug tracker.
  • Aiutare a scrivere la documentazione: Anche il wiki della documentazione di FreeCAD è scritto dai membri della comunità. Alcune sue sezioni sono ancora incomplete, o le loro informazioni sono errate o obsolete. Potreste essere in grado dare un aiuto a sistemare le cose. Per essere in grado di lavorare sul wiki, è necessario familiarizzare con il wiki editing, e chiedere il permesso per modificare il wiki di FreeCAD sul forum.
  • Aiutare a tradurre FreeCAD: La traduzione di FreeCAD è fatta on-line dai membri della comunità, su crowdin. Se lì non viene visualizzata la vostra lingua, chiedete a uno degli amministratori di aggiungerla.
  • Aiutare a tradurre il wiki della documentazione: Ogni pagina del wiki è traducibile, e richiede pochissima conoscenza della sintassi wiki. Aiutare con la traduzione è anche un ottimo modo per imparare FreeCAD.
  • Scrivere script e macro: FreeCAD ha una lista crescente di Macro. Se avete scritto alcune funzionalità interessanti, considerate di condividerle.
  • Programmare: Per questo, è necessario sapere come programmare in Python o C++, e avere una buona conoscenza di FreeCAD.

Il codice sorgente di FreeCAD si trova nell'account Github del progetto FreeCAD. Chiunque può scaricare, utilizzare e modificare il codice. È possibile pubblicare le modifiche (su GitHub o su qualsiasi altro servizio di hosting Git). Se avete fatto delle modifiche interessanti, che desiderate vedere incluse nel codice sorgente di FreeCAD, dovete chiedere alla comunità di includerle. Questo può essere fatto utilizzando il sistema di richiesta di inclusione di Github, ma il modo migliore è quello di discutere prima sul forum di ciò che si intende fare, e poi, quando il codice è pronto, inviare una richiesta ufficiale nella sezione Pull requests del forum. Ciò evita di lavorare su qualcosa su cui sta già lavorando anche qualcun altro, e garantisce che gli altri sono d'accordo su ciò si sta facendo, quindi non si rischia di vedere il proprio lavoro rifiutato per qualche motivo imprevisto.

Con questo manuale speriamo di essere riusciti a dare una buona impressione di FreeCAD, e che sarete presto il nostro membro più recente della comunità. Benvenuto!

Approfondimenti