> **Sommario:** //Cosa significa tolleranze in Rhino e come impostarle correttamente//
======Tolleranze, tolleranze, tolleranze…?======
=====Che significano tutti questi numeri? Come li utilizzo in Rhino?=====
Il soggetto della tolleranza di lavoro salta fuori spesso nelle domande dei nuovi utenti. Molti programmi di modellazione non consentono di impostare la tolleranza, ma ne fissano una standard, non modificabile, che vi piaccia o meno. Rhino vi dà il vantaggio di scegliere la tolleranza più adeguata alle vostre necessità, ma la corretta impostazione richiede un minimo di competenza e di esperienza.
assoluta di 0.01 unità di misura (siano esse mm, m o km). Che significa dunque “tolleranza assoluta”?
=====2. Tolleranza assoluta in Rhino=====
Per Rhino, la tolleranza assoluta è la massima distanza che 2 oggetti o elementi possono avere, per poter essere ancora considerati contigui e perciò congiungibili. Per la precisione, molte operazioni producono tolleranza doppia (2 volte quella impostata), per cui fate attenzione.
//Marc dice: sarebbe opportuno conoscere i comandi che producono risultati approssimati//
//JB risponde: tutti i comandi che fanno uso di intersezioni tra curve e/o superfici sono buoni esempi. Comandi specifici in questo senso sono: Tronca, Suddividi, Intersezione, Sezioni multiple, Sezione, Proiezione, Sweeps, tutte le operazioni Booleane ed altri ancora.//
> **Esempio:** //usare la tolleranza di default di 0.01 unità. Tracciare un segmento con inizio all’origine e lunghezza 10 lungo l’asse X. Tracciare un secondo segmento con inizio all’origine e lunghezza 10 lungo l’asse Y. Con lo strumento Unisci, si ottiene una polilinea senza soluzione di continuità, dal momento che i punti iniziali sono coincidenti. Annullate l’operazione ed usando Muovi, spostate il secondo segmento di 0.02 unità verso sinistra (-X). Provate di nuovo Unisci: dovrebbe funzionare ancora, nonostante i punti iniziali non siano più coincidenti, perché tuttora entro 2x della tolleranza impostata. Annullate di nuovo Unisci, muovete ancora il segmento di 0.01 unità nella stessa direzione e riprovate Unisci. Otterrete un avviso che i 2 elementi sono troppo lontani per essere uniti. Avete superato di un pelo la tolleranza assoluta impostata! Implicitamente ciò significa che i segmenti possono essere spostati fino a 0.02 unità (2x) ed essere considerati uniti, anche se questo potrebbe comportare problemi nelle fasi successive della modellazione, qualora vi servano particolari con maggior precisione.//
Oltre che per unire oggetti esistenti, molte operazioni in Rhino tengono conto della tolleranza assoluta anche per crearne di nuovi. Alcuni oggetti sono definibili matematicamente con la perfezione calcolabile dalla vostra macchina (oltre 16 decimali, con differenze talmente piccole da essere trascurabili). Tuttavia alcuni comandi si basano su approssimazioni per adattare curve o superfici ad altre: una precisione hardware in queste operazioni significherebbe maggior tempo di calcolo, anche fino al blocco del sistema per esaurimento delle risorse. La tolleranza assoluta dice al sistema quando voi ritenete che il risultato sia “sufficientemente preciso” da essere accettabile.
Il vantaggio di una tolleranza maggiore è una sostanziale riduzione dei tempi di calcolo, ovviamente a spese della precisione del risultato. Questa è dunque la ragione per cui serve un minimo di esperienza per impostare la tolleranza: è necessario trovare un buon compromesso tra velocità di esecuzione e precisione. Progetti con oggetti di dimensioni molto diverse posso richiedere tolleranze diversificate, dove la sola tolleranza assoluta può essere limitante. Come impostazione di primo acchito si può usare una tolleranza assoluta pari ad 1/10 del particolare più piccolo da modellare, ma per un lavoro accurato serve spingersi ad 1/100 o oltre. Ad esempio per la modellazione della carrozzeria di un’automobile una tolleranza di 0.1 mm può essere sufficiente, mentre alcuni particolari del motore possono richiedere tolleranze 100 volte inferiori.
//Marc osserva: A volte, con modelli ottenuti con sequenze di operazioni che dipendono dalla tolleranza, può valere la pena scalare ogni cosa di 10-100 volte. In questo modo la tolleranza rimane ad un livello tale da rendere veloci le operazioni, ma comunque molto più stretta del più piccolo particolare del modello. Questo trucco è stato suggerito spesso da Pascal sul NG.//
//JB risponde: Questo era valido più per la V2 di quanto non lo sia con la V3 e la V4. Gli stessi effetti si possono avere modificando temporaneamente la tolleranza, allo scopo di rendere possibile o solo più veloce una particolare operazione. Usate la tecnica che per voi ha più senso.//
Alcune delle operazioni che utilizzano per il calcolo la tolleranza assoluta sono Sweep, Loft, Raccorda superfici, Raccorda bordi, ecc.
//Gordon Adams dice: Il comando Intersezione crea una curva all’intersezione tra 2 superfici, che viene garantita in ogni sua parte entro la tolleranza assoluta da entrambe.//
> **Esempio:** JB: //Provate il comando Intersezione e salvate la curva creata da un lato. Restringete ora la tolleranza di un valore 10 e riprovate il comando Intersezione. Attivate i punti di controllo di entrambe le curve e noterete che la seconda ne ha di più, risulta più complessa e vicina alle superfici. Quale sia la migliore, dipende dalle vostre necessità. Se il vostro processo di fabbricazione non trae alcun vantaggio dalla maggior precisione della seconda curva, la prima risulta essere la migliore perché più “leggera” da manipolare, con tempi di calcolo inferiori, migliore qualità delle superfici e dimensioni di file più contenute.//
Altri comandi consentono di definire una tolleranza specifica per la singola operazione all’interno di una finestra di dialogo: questo valore ha la precedenza sull’impostazione generale nell’ambito dell’operazione stessa (superfici da Rete di curve o Combina superfici sono esempi). In alcuni comandi esiste anche l’opzione Rigenera entro, che permette di specificare un valore di tolleranza specifico.
Infine esistono comandi, come Unisci bordo, nei quali vi è consentito eccedere a livello di dettaglio la tolleranza impostata, forzando l’unione apparente dei bordi: state consapevolmente dicendo al sistema di considerarli uniti nonostante non siano entro la tolleranza. Questo può comportare problemi a valle.
> **Nota:** //Come indicazione di massima, usate impostazioni di tolleranza da uguali a dieci volte più strette del meglio che potete mantenere per l’intero processo di modellazione, oppure dieci volte più strette del particolare più piccolo da modellare, scegliendo tra le due l’alternativa più conservativa.//
=====3. Tolleranze angolari e relative in Rhino=====
In Rhino esistono altri due tipi di tolleranza: angolare e relativa. La tolleranza relativa viene usata in un numero esiguo di comandi e può in genere essere lasciata com’è. Armido non è molto d’accordo, perché 1% sembra molto alto, anche se essa non interviene quasi mai. Mark dice: anche qui sarebbe utile sapere quali comandi ne fanno uso.
La tolleranza angolare è importante perché indica al sistema a quale punto volete che due curve o superfici siano considerate “Tangenti”. Il valore di default di 3°è eccessivo. Superfici fuori tangenza di 3° mostrano uno spigolo ben visibile. Trovo che un valore di 0.1° o inferiore sia molto più appropriato.
//JB afferma: Nella pratica corrente, ho scoperto di avere meno problemi nello scambio con altri applicativi CAD come Unigraphics, Proengineer, SDRC Ideas, Solidworks, Solidedge, Inventor, ecc., quando utilizzo tolleranza angolare di 0.5-1°. Non ho mai trovato un caso in cui abbia fatto differenza la tolleranza relativa.//
=====4. Come le impostazioni di tolleranza possono condizionare il tuo lavoro=====
Una premessa importante: le tolleranze vanno fissate all’inizio del progetto, anche se vi è consentito cambiarle secondo la necessità. Oggetti modellati a tolleranze più larghe non diventano più precisi, restringendole. Una buona abitudine consiste nel controllare sistematicamente che gli oggetti che andate creando sia unibili senza problemi al resto, in modo da essere certi che state lavorando entro tolleranza. Se ci sono problemi, siete così in grado di individuarli subito, anziché quando ormai risulta difficile, anche al punto da costringervi a rifare tutto da capo.
Operazioni che coinvolgono l’intersezione sono molto sensibili alle impostazioni di tolleranza. Spesso se la tolleranza assoluta è impostata troppo larga, si possono produrre curve di intersezione incomplete, con il conseguente fallimento delle operazioni coinvolte. Questo si verifica assai spesso, anche se la tolleranza non ne è l’unica causa.
D’altro canto, un’impostazione di tolleranza troppo stretta si traduce in tempi di calcolo eccessivi.
=====5. Esportazione verso applicativi a valle=====
Quando il progetto deve essere esportato verso altri applicativi come CAM o altri modellatori, è molto importante tener conto della precisione richiesta per una corretta importazione. L’unica guida in questo campo è l’esperienza.
Se avete dei dubbi, chiedete sul NG: ci sarà senz’altro qualcuno che ha fatto in passato la stessa cosa e vi potrà dare delle dritte.
In generale, gli applicativi CAD per uso professionale in meccanica richiedono un grado di precisione maggiore rispetto a quelli di pura presentazione. E’ quindi necessario completare l’intero progetto ad una tolleranza più stretta di quella richiesta, per avere la garanzia di un’esportazione senza problemi.
Marc osserva: nei programmi MCAD che ho controllato, le impostazioni di tolleranza sono fisse ed inaccessibili all’utente. Tutti gli oggetti devono rientrare all’interno del loro volume di modellazione, a volte una sfera di 1km, di conseguenza la tolleranza è molto alta (?).
-- [[rhino@millwork.ch|Mitch Heynick (e-mail Mitch Heynick)]] 27.05.05