boolean operace
Boolean operace bych přirovnal k matematickým operacím sjednocení,
odečtení a průniku, jenže to celé ve 3D prostoru. V praxi to znamená,
že tedy můžeme dvě a více již existujících těles sjednotit do
jediného nového tělesa, nebo od jednoho tělesa odečíst jiné jedno
(nebo více) těleso a tím nám opět vznikne těleso nové a nebo,
v poslední variantě, necháme počítač sestrojit průnik všech námi
vybraných těles.
Tyto operace mají pár podmínek vzniku:
1. Tak hlavně, musí existovat ve virtuálním prostoru nejméně
dva objekty, jinak nebudeme mít co s čím sjednocovat (odečítat,
pronikat). Je jedno, jakým způsobem tam tyto dva objekty vytvoříme,
ale musí tam být.
2. Dále by se měla tato tělesa vzájemě alespoň dotýkat, když
už ne naprosto pronikat. A to sice z jednoho prostého důvodu -
pokud aplikujete Boolean operaci na tělesa, která spolu takříkajíc
"nemají nic společného", tak asi nebudete s výsledkem
spokojeni.
V případě sjednocení
se tělesa sice pravděodobně spojí v jediné virtuální, avšak, jako
logický celek asi nebudou mnoho podobná reálnému světu - jako
příklad bych uvedl dvě krychle ležící na stole 5cm od sebe: Když
v reálu uchopíte jednu krychli, a zvednete ji (nebo posunete,
otočíte, ...), tak ta druhá krychle zůstane bezpečně na svém místě
(pokud nejste nešikovní a nevrazíte do ní při manipulaci s krychlí
č.1) Ve virtuálním světě je tomu podobně, dokud obě krychle nesjednotíte.
Pak se z nich stane jediné těleso, které sice bude mít dvě viditeklné
části, ale chovat se bude jako jeden kus. Tedy při otáčení či
posouvání (ale také třeba při kopírování a změně měřítka) se bude
podle zadaného příkazu měnit nejen první, ale i druhá krychle.
Jsou samozřejmě situace, kdy se nám tato vlastnost hodí, ale musíme
si vše nejdříve dobře rozmyslet!
Podobně je tomu u odečtení.
Když totiž zadáme příkaz, že od "Velké Krychle č. 1"
chceme odečíst "Malou Krychličku č. 2" stojící hned
vedle, tak sice malá krychle zmizí z prostoru (byla přeci použita
jako objekt k odečtení), ale s "Velkou Krychlí č. 1"
se nic nestane, protože tyto dvě krychle spolu neměly společný
byť jen jediný bod.
A nakonec při průniku
těles, když označíte 4 objekty, které se Vám takříkajíc "válejí"
každý v jiném rohu prostoru a nemají spolu také nic společného,
tak všechny objekty zmizí, ale výsledek bude nulový (hezky Česky:
"Velké kulové"), protože množina průniku těchto těles
byla prázdná...
Avšak, pokud dodržíte předchozí dvě podmínky, tak Vám odměnou
budou správné výsledky, jako v přiložených ukázkách.