OGGETTI COMPOSTI: OPERAZIONI BOOLEANE.

 

Premessa: le operazioni booleane non funzionano. Propio così!! Si tratta di operazioni instabili che generanno superfici irregolari, difficilmente gestibili se si vogliono effettuare delle modifiche successive. Le irregolarità si manifestano in maniera più marcata se la superficie che subisce l'operazione è complessa. Per superfici semplici, ancora possono funzionare onorevolmente.
In linea generale, è
sempre bene cercare di evitare l'utilizzo di operazioni booleane, ricorrendo a strade alternative per ottenere quello che cerchiamo. La soluzione migliore è ricorrere all'utilizzo del plugin PowerBoolean.
Detto questo, leggete pure questo paragrafo ma non dategli un peso eccessivo.

 

Raggruppare più oggetti insieme per formare un gruppo non portano alla formazione di un unico oggetto vero e proprio, perchè i componenti del gruppo non vengono uniti l'uno all'altro (infatti un gruppo può, successivamente, essere di nuovo scomposto nei suoi componenti).
Gli oggetti composti invece sono il risultato dell'unione di più oggetti base, e non un raggruppamento.

Per accedere agli oggetti composti, crea almeno un oggetto nella scena e evidenzialo, poi vai alla cartella Create e dal menù a discesa seleziona Compound Objects:

Clicca e apparirà il rollout dei tipi di oggetti composti:

(Se non è selezionato alcun oggetto, i tipi di oggetto sono tutti disattivi).

 

 

 

 

 

 

Nella cartella Create seleziona Standard Primitives e disegna un parallelepipedo e una sfera.
bool03.JPG (11885 bytes)
Sposta la sfera un po' dentro il parallelepipedo.
bool03b.JPG (9279 bytes)

Seleziona il parallelepipedo, poi vai su Compound Objects e seleziona Boolean.
bool04.JPG (5550 bytes)
bool05.JPG (10427 bytes)

Apparirà in basso una serie di rollout, una cui parte è questa.
bool06.JPG (7011 bytes)

L'oggetto composto booleano è formato applicando una delle operazioni booleane Unione, Intersezione, Sottrazione fra due oggetti distinti. Uno degli oggetti è l'operando A (nel nostro caso il parallelepipedo), l'altro è l'operando B, che occorre specificare.
Clicca su Pick Operand B e seleziona la sfera. L'operando B diventerà al sfera e sarà applicata l'operazione Subtraction A-B, generando così questo oggetto composto:
bool07.JPG (9139 bytes)
Adesso nei rollout appare anche il secondo operando:
bool08.JPG (8865 bytes)


Ricordati che puoi fare il Pick Object in diverse modalità:
Move: la sfera scompare e si forma il buco nella scatola.
Copy: la sfera non scompare e si forma il buco nella scatola.
Instance: la sfera non scompare e si forma il buco nella scatola. Modificando la sfera si modifica il buco, e viceversa.
Reference: la sfera non scompare e si forma il buco nella scatola. Modificando la sfera si modifica il buco, ma non vale il contrario.

Cambiando il tipo di operazione booleana (la scegli nella sezione Operation) fra i due operandi, cambia anche l'oggetto risultante:
Union:                                          
bool09.JPG (9202 bytes) Intersection:
bool10.JPG (11507 bytes)
Subtraction A-B:
bool07.JPG (9139 bytes)Subtraction B-A:
bool11.JPG (11350 bytes)

CUT: taglia l'operando A utilizzando l'operando B, ma non agginge nulla dell'operando B al risultato. Come piano di taglio è utilizzata la forma dell'operando B.
Questo operazione tratta la geometria degli oggetti booleani come volumi piuttosto che come superfici chiuse, e non aggiunge geometria dall'operando B all'operando A.
Leintersezioni con l'operando B deviniscono delle aree di taglio per alterare la geometria dell'operando A.
Partiamo da questa situazione iniziale:
bool19.JPG (2970 bytes)

I tipi di Cut sono 4:

Refine: aggiunge nuovi vertici e bordi all'operando A dove l'operando B interseca le facce dell'operando A.
bool20.JPG (6053 bytes)Le facce tagliate dall'intersezione sono suddivise in nuove facce.

 

 

 

Split: come Refine, ma aggiunge un secondo set di vertici e bordi lungo i confini dove l'operando B taglia l'operando A. In queso modo si producono 2 elementi appartenenti alla stessa mesh. L'operando A è diviso in 2 parti lungo i confini dell'operando B.

Remove Inside: cancella tutte le facce dell'operando A all'interno dell'operando B. Funziona come l'operazione Subtraction, solo che non sono aggiunge facce dall'operando B.
bool21.JPG (6153 bytes)

Remove Outside: cancella tutte le facce dell'operando A al di fuori dell'operando B. Funziona come l'operazione Intersection, solo che non sono aggiunte facce dall'operando B.
bool22.JPG (1727 bytes)

 

Adesso seleziona dai rollout uno dei due operandi:
bool12.JPG (12498 bytes)
Cliccando su Extract Operand otterrai di nuovo l'oggetto iniziale che ha contribuito alla creazione dell'oggetto composto.
bool13.JPG (10208 bytes)

In ogni caso, l'oggetto booleano che è stato creato non scompare. Semplicemente uno degli operandi è stato portato fuori dall'oggetto booleano come nuovo oggetto.
bool14.JPG (9343 bytes)

Puoi visualizzare tutti gli oggetti componenti un oggetto composto andando qui:
bool15.JPG (3814 bytes)
Selezionando Operand, appariranno tutti gli oggetti-operandi così some erano stati posizionati prima di applicare l'operazione booleana.
bool16.JPG (10395 bytes)In particolare, gli operandi selezionati nei parametri dell'oggetto booleano (nel nostro caso è selezionato l'operando B_Sphere01), verranno evidenziati nelle altre viste:
bool17.JPG (9548 bytes)

 

 

Crea 2 scatole e disponile in modo che non si intesechino.
comprimi10.jpg (4293 bytes)

Seleziona una scatola e crea un oggetto Booleano. La scatola selezionata appare nel pannello dei parametri come operatore A.
Attiva il pulsante Pick Operand B e poi seleziona l’altra scatola, che diventa l’operatore B. Utilizza l’opoerazione di default Move.
La scatola-operatore B scompare.
Scendi alla sezione Display e imposta questa modalità:

comprimi11.jpg (4004 bytes)comprimi12.jpg (5620 bytes)

 

 

 

 

 

L’operatore B viene visualizzato in modalità wireframe, mentre il risultato (cioè l’oggetto booleano risultante) in modalità ombreggiata.
L’oggetto risultate è per ora l’operatore A perché è impostata l’operazione di sottrazione ma i due operatori A e B non si intersecano.
Vai alla scheda Modify: qui è possibile accedere al livello dei due operatori (vai al livello Sub-Object/Operands).
Seleziona l’operatore B e spostalo fino a fargli intersecare l’operatore A. Avviene una sottrazione booleana interattiva.
comprimi13.jpg (6055 bytes)

Analogamente si possono visualizzare interattivamente le altre operazioni booleani.
Nella finestra Selezione Oggetto è presente solo un oggetto quando evidenziamo l’oggetto booleano. In particolare solo il nome dell’operatore A.
comprimi14.jpg (4131 bytes)

Questo accade perché uando ai creato l’oggetto composto booleano le due scatole sono state inclusde nell’oggetto, che ha preso il nome del primo oggetto selezionato.
Come si fa a riavere l’oggetto originale? Seguiamo questa traccia: i nomi dei due operatori sono elencati nella tendina Parameters del pannello Boolean.
comprimi15.jpg (8144 bytes)

Clicca su uno dei due operatori nella tendina e clicca su Extract Operand.
comprimi16.jpg (7530 bytes)

Se l’estrazione avviene con la modalità Instance, modificando l’operatore estratto anche l’oggetto booleano viene modificato.
comprimi17.jpg (8439 bytes)