Valasek Gábor tavaszi félév

Hasonló dokumentumok
(Solid modeling, Geometric modeling) Testmodell: egy létező vagy elképzelt objektum digitális reprezentációja.

3D számítógépes geometria és alakzatrekonstrukció

Termék modell. Definíció:

Klár Gergely 2010/2011. tavaszi félév

2014/2015. tavaszi félév

TÉRINFORMATIKAI ALGORITMUSOK

TÉRINFORMATIKAI ALGORITMUSOK

TÉRINFORMATIKAI ÉS TÁVÉRZÉKELÉSI ALKALMAZÁSOK FEJLESZTÉSE

Valasek Gábor tavaszi félév

Geometria brute force tárolása

Halmazelmélet. 1. előadás. Farkas István. DE ATC Gazdaságelemzési és Statisztikai Tanszék. Halmazelmélet p. 1/1

Geometriai modellezés. Szécsi László

Elengedhetetlen a játékokban, mozi produkciós eszközökben Nélküle kvantum hatás lép fel. Az objektumok áthaladnak a többi objektumon

6. Függvények. 1. Az alábbi függvények közül melyik szigorúan monoton növekvő a 0;1 intervallumban?

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé.

9. előadás. Térbeli koordinátageometria

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1

Hajder Levente 2018/2019. II. félév

Adaptív dinamikus szegmentálás idősorok indexeléséhez

x = cos αx sin αy y = sin αx + cos αy 2. Mi a X/Y/Z tengely körüli forgatás transzformációs mátrixa 3D-ben?

1. Részcsoportok (1) C + R + Q + Z +. (2) C R Q. (3) Q nem részcsoportja C + -nak, mert más a művelet!

3D - geometriai modellezés, alakzatrekonstrukció, nyomtatás

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Geometria III.

3D - geometriai modellezés, alakzatrekonstrukció, nyomtatás

Hajder Levente 2018/2019. II. félév

Hajder Levente 2014/2015. tavaszi félév

R ++ -tree: an efficient spatial access method for highly redundant point data - Martin Šumák, Peter Gurský

2. tétel Egész számok - Műveletek egész számokkal. feleletvázlat

Láthatósági kérdések

Mechatronika segédlet 3. gyakorlat

Geometria 1 normál szint

Klár Gergely 2010/2011. tavaszi félév

Hajder Levente 2017/2018. II. félév

Parametrikus tervezés

I. Gondolkodási módszerek: (6 óra) 1. Gondolkodási módszerek, a halmazelmélet elemei, a logika elemei. 1. Számfogalom, műveletek (4 óra)

Egyenes mert nincs se kezdő se végpontja

30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK

Görbe- és felületmodellezés. Szplájnok Felületmodellezés

Relációk Függvények. A diákon megjelenő szövegek és képek csak a szerző (Kocsis Imre, DE MFK) engedélyével használhatók fel!

Számítógépes Grafika mintafeladatok

Geometria 1 normál szint

Valasek Gábor

Síklapú testek. Gúlák, hasábok Metszésük egyenessel, síkkal

EGYSZERŰ, NEM IRÁNYÍTOTT (IRÁNYÍTATLAN) GRÁF

3. előadás. Elemi geometria Terület, térfogat

1. Generátorrendszer. Házi feladat (fizikából tudjuk) Ha v és w nem párhuzamos síkvektorok, akkor generátorrendszert alkotnak a sík vektorainak

Függvények Megoldások

Vida János. Geometriai modellezés III. Görbék és felületek

Területi primitívek: Zárt görbék által határolt területek (pl. kör, ellipszis, poligon) b) Minden belső pont kirajzolásával (kitöltött)

Matematika szóbeli érettségi témakörök 2016/2017-es tanév őszi vizsgaidőszak

Összeállította: dr. Leitold Adrien egyetemi docens

RE 1. Relációk Függvények. A diákon megjelenő szövegek és képek csak a szerző (Kocsis Imre, DE MFK) engedélyével használhatók fel!

Struktúra nélküli adatszerkezetek

A szemantikus elemzés elmélete. Szemantikus elemzés (attribútum fordítási grammatikák) A szemantikus elemzés elmélete. A szemantikus elemzés elmélete

Algoritmuselmélet. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 13.

12. előadás. Egyenletrendszerek, mátrixok. Dr. Szörényi Miklós, Dr. Kallós Gábor

Valasek Gábor

Algoritmuselmélet. 2-3 fák. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 8.

KOVÁCS BÉLA, MATEMATIKA I.

Matematika 11 Koordináta geometria. matematika és fizika szakos középiskolai tanár. > o < szeptember 27.

Kétszemélyes játékok Gregorics Tibor Mesterséges intelligencia

B-fa. Felépítés, alapvető műveletek. Programozás II. előadás. Szénási Sándor.

Diszkrét matematika 2. estis képzés

Felügyelt önálló tanulás - Analízis III.

26. MINIMÁLIS KÖLTSÉGŰ UTAK MINDEN CSÚCSPÁRRA

Halmaz: alapfogalom, bizonyos elemek (matematikai objektumok) Egy halmaz akkor adott, ha minden objektumról eldönthető, hogy

V. Kétszemélyes játékok

6. gyakorlat. Gelle Kitti. Csendes Tibor Somogyi Viktor. London András. jegyzetei alapján

20. tétel A kör és a parabola a koordinátasíkon, egyenessel való kölcsönös helyzetük. Másodfokú egyenlőtlenségek.

11. előadás. Konvex poliéderek

Navigáci. stervezés. Algoritmusok és alkalmazásaik. Osváth Róbert Sorbán Sámuel

Robotika. Kinematika. Magyar Attila

Matematikai alapismeretek. Huszti Andrea

1. előadás: Halmazelmélet, számfogalom, teljes

Diszkrét matematika 2.

A LECSÚSZÓ KÖR ÁBRÁZOLÓ GEOMETRIÁJA. Írta: Hajdu Endre

Keresés képi jellemzők alapján. Dr. Balázs Péter SZTE, Képfeldolgozás és Számítógépes Grafika Tanszék

10. előadás. Konvex halmazok

3D Számítógépes Geometria II.

Az áprilisi vizsga anyaga a fekete betűkkel írott szöveg! A zölddel írott rész az érettségi vizsgáig még megtanulandó anyag!

Osztályozó- és javítóvizsga témakörei MATEMATIKA tantárgyból 2016 / tanév

3. tétel Térelemek távolsága és szöge. Nevezetes ponthalmazok a síkon és a térben.

Elemi adatszerkezetek

GEOMETRIA 1, alapszint

7. Koordináta méréstechnika

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Függvények

Diszkrét matematika 2.C szakirány

Fiók ferde betolása. A hűtőszekrényünk ajtajának és kihúzott fiókjának érintkezése ihlette az alábbi feladatot. Ehhez tekintsük az 1. ábrát!

Számítógépes Grafika SZIE YMÉK

Infobionika ROBOTIKA. X. Előadás. Robot manipulátorok II. Direkt és inverz kinematika. Készült a HEFOP P /1.0 projekt keretében

Osztályozóvizsga és javítóvizsga témakörei Matematika 9. évfolyam

MATEMATIKA HETI 5 ÓRA

Koordináta geometria III.

10. Koordinátageometria

Követelmény a 6. évfolyamon félévkor matematikából

Osztályozó- és javítóvizsga témakörei MATEMATIKA tantárgyból

Diszkrét matematika 2.C szakirány

Fraktálok. Kontrakciók Affin leképezések. Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék. TARTALOMJEGYZÉK Kontrakciók Affin transzformációk

MATEMATIKA TANMENET 9.B OSZTÁLY FIZIKA TAGOZAT HETI 6 ÓRA, ÖSSZESEN 216 ÓRA

1. GONDOLKODÁSI MÓDSZEREK, HALMAZOK, KOMBINATORIKA, GRÁFOK

Átírás:

Valasek Gábor valasek@inf.elte.hu Eötvös Loránd Tudományegyetem Informatikai Kar 2016-2017 tavaszi félév

Tartalom Test- és felületmodellezés

Test- és felületmodellezés Tartalom Test- és felületmodellezés

Test- és felületmodellezés Motiváció Geometriai Modellezés előadáson volt szó testek reprezentációjának két módszeréről: Constructive Solid Geometry (CSG) a térfogatot elemi térfogatok (primitívek) halmazelméleti műveletekkel képzett kombinációjaként kezeli. Boundary representation (B-rep) esetén csak a térfogat irányított felületét reprezentáljuk, azaz csúcsok, élek és lapok szomszédossági gráfjának kiértékeléseként. Különböző szempontok szerint más-más a jó (például megfelelő primitív halmaz esetén CSG-nél nem kell aggódni az eredmény topologikus helyessége miatt - ugyanezt eldönteni egy B-rep reprezentációról már nehéz kérdés)

Test- és felületmodellezés Motiváció Eddig csak alacsony szinten foglalkoztunk a reprezentációval, most részben erre is építeni fogunk Emlékeztetőül az adott művelet kezelése triviális-e ( ) vagy adott esetben bonyolult algoritmusokat is igényelhet ( ): művelet implicit parametrikus pontok előálĺıtása a felületen pont a testen van-e? topológia triviális kezelése halmazműveletek

Test- és felületmodellezés Motiváció Most áttekintünk néhány szempontot, amik, függetlenül a választott konkrét reprezentációtól, segítenek rendszerezni a tennivalókat. Ezek inkább felhasználói szempontból vizsgálják a problémát és azt mondják meg, hogy miképp tudunk modellezni egy alakzatot egy reprezentációban

Test- és felületmodellezés Megjegyzés Az ábrák Christopher Hoffmann könyvének második fejezetéből: LINK származnak.

Test- és felületmodellezés Primitívek Paraméteres alap-testek: egy adott elemi térfogathalmazból választott, paraméteres felületsereg (például egy gömb két paramétere a gömb középpontja és sugara). Súrolt térfogatok: valamilyen elemi térfogat (vagy kontúr) adott pálya mentén való mozgatásával kapott térfogat (például egy adott körlemez egy h hosszúságú egyenes mentén történő mozgatásával egy hengert kapunk. Egy gömb pályán való mozgatásával pedig egy csőfelületet kapunk.) Féltér primitívek: {[x, y, z] T f (x, y, z) 0}, ahol f (x, y, z) egy irreducibilis polinom.

Test- és felületmodellezés Lokális módosítások Természetes igény felhasználói részről, hogy egy módosítás hatása a végső geometriára előre kiszámítható mértékű legyen A B-rep-ben könnyen megvalósíthatóak, de vigyázni kell, hogy helyes marad-e az eredmény

Test- és felületmodellezés Globális módosítások A transzformációkon (eltolás, forgatás stb.) kívül ide értendőek a halmazműveletek Illetve egy felhasználói szempontból nélkülözhetetlen: az undo/redo

Test- és felületmodellezés Globális módosítások - undo/redo

Test- és felületmodellezés Globális módosítások - undo/redo Naív megközeĺıtés: A felhasználó minden műveletét és annak paramétereit tároljuk el egy faszerkezetben. Ez jó, ha annotálható. Egy tetszőleges állapot visszaálĺıtható, ha a fa gyökerétől az adott pontig alkalmazunk minden egyes műveletet. Az egyes műveletek eredményének validitását ilyenkor nem kell ellenőrizni, de ettől még meglehetősen költséges.

Test- és felületmodellezés Globális módosítások - undo/redo Hatékonyabb, ha minden műveletnek létezik az inverze a Command pattern-nel szépen implementálható (és implementálják is, csak egy igazi rendszerben ez még bonyolultabb lehet - lásd pl. 59. slide-tól ITT) bár bizonyos esetekben triviálisan megvalósítható, más esetekben viszont nagyon költséges tud lenni (például visszacsinálni egy B-rep-en elvégzett halmazműveletet) Ezért sokszor az a jó, ha elmentjük a teljes állapotteret és undo esetén ide megyünk vissza (Memento pattern-es megközeĺıtés). Azaz gyakorlatban a kettő keverékét kell megvalósítani.

Tartalom Test- és felületmodellezés

Reprezentáció és kiértékelés Tartalom Test- és felületmodellezés Reprezentáció és kiértékelés Görbe-test osztályozás Felület-test osztályozás Befoglalók

Reprezentáció és kiértékelés CSG Egy CSG modell primitívek egy adott halmazából épül fel regularizált halmazműveletek és mozgástranszformációk felhasználásával. Ezeket egy fával ábrázolhatjuk

Reprezentáció és kiértékelés CSG

Reprezentáció és kiértékelés CSG fa A fa levelei primitívek Belső csúcsai lehetnek transzformációk (ha nincsenek a levélszintre lekötve) halmazműveletek A fa által reprezentált alakzatot a gyökér ábrázolja, kiértékeléséhez a levelekből (primitívekből) kiindulva el kell végezni minden műveletet

Reprezentáció és kiértékelés CSG fa Ártalmatlannak tűnik, de már az előző példa is problémás tud lenni Ha például azt vizsgáljuk, hogy egy pont benne van-e a két téglatest uniójában lehet, hogy közös lapon lévő pont a numerikus hibák miatt egyszer sem megy át sikeresen a tartalmazási teszten Ezért ráhagyásokat is kell néha használnunk

Reprezentáció és kiértékelés CSG fa - megjegyzés Egy művelet elvégzése általában a fa mélységében lineáris Ezért fontos, hogy azonosítsuk azokat a részfákat, amik triviális altereket alkotnak (üres vagy teljes tér) Egy rész-fát redundánsnak mondunk, hogy ha helyettesítve az üres halmazzal vagy annak komplementerével, nem változik a reprezentált térfogat

Reprezentáció és kiértékelés Regularizált halmazműveletek A hagyományos halmazműveletek elvégzése után felesleges, alacsonyabb dimenziójú topológiai elemek is maradhatnak tüntessük el a térfogat nélküli darabokat Erre használjuk a regularizált halmazműveleteket: Ax B = int(axb), x {,, } Azaz a regularizált halmazműveletek az eredeti halmazművelet eredményeképp előállt halmaz belső pontjainak a lezártjai.

Reprezentáció és kiértékelés Regularizált halmazműveletek Ekkor egy regularizált halmazművelet elvgézése a következő lépésekből áll: 1. A klasszikus algebrai halmazművelet elvégzése 2. Az eredmény P halmaz összes olyan p pontjának megtartása, amelyekhez létezik olyan ɛ > 0, hogy k ɛ (p) P (belső pontok számítása) 3. Az eredményhez adjuk hozzá a P összes olyan q pontját, amely pontok nem belső pontok, de létezik hozzájuk olyan r belső pont és k ɛ (r) környezet, hogy q és r összeköthető egy olyan olyan görbével, aminek az egésze k ɛ (r)-ben halad, kivéve a q-beli végpontját (lezárás számítása)

Reprezentáció és kiértékelés Regularizált halmazműveletek A gyakorlatban ennél hatékonyabban kell kiértékelni ezeket a műveleteket Ehhez a regularizált halmazművelet argumentumainak pontjait kell osztályozni aszerint, hogy: in: a test belső pontja (van olyan környezete a pontnak, aminek egésze a testben van) on: a test határolófelületén van (a pont környezetének van olyan része, ami a testben van és van olyan része, amin azon kívül találhat) out: a testen kívül található (van olyan környezete a pontnak, aminek egésze a testen kívül van)

Tartalom Test- és felületmodellezés Reprezentáció és kiértékelés Görbe-test osztályozás Felület-test osztályozás Befoglalók

El szeretnénk dönteni egy pontról, hogy a testen belül (in), rajta (on) vagy azon kívül van (out) Ehhez egy kétfázisú algoritmust használunk: 1. a kérdéses pontot letoljuk a fa gyökeréből indulva és a leveleken elvégezzük a kiértékelést, ezáltal megkapjuk a megfelelő primitívre a pontosztályozás eredményét 2. ezután a kiértékelés eredményeket a levelekből elindítjuk felfelé a gyökér felé, a halmazműveleteket alkalmazva az osztályozásokra

- lefelé irány A lefelé irány a következőppen valósítandó meg: legyen x = [x, y, z] T az osztályozni kívánt pont és induljunk el a gyökérből. Ekkor 1. ha az aktuális csúcs a CSG fában egy halmazművelet, akkor a művelet mindkét gyermekének továbbítjuk x-et 2. ha az aktuális csúcs egy M mozgástranszformáció (eltolás vagy elforgatás), akkor a gyermekének az M 1 x pontot továbbítjuk 3. ha az aktuális csúcs egy levél, akkor elvégezzük rajta az osztályozást

- lefelé irány A primitív-pont osztályozás implicit reprezentációval triviális, csak egy behelyettesítés és előjelvizsgálat A lefelé irány elvégzése után a kiindulási x pontra minden levélben születik egy l {in, on, out} cimke A felfelé iránynál ezeket kombináljuk, egészen addig, amíg el nem érünk a gyökérig

- felfelé irány Minden egyes levélből elindulunk fölfelé a fában Ha az aktuális csúcs egy halmazművelet, akkor a két argumentumot kiértékeljük és az eredményt visszük tovább feljebb a fába

- felfelé irány, unió A regularizált unió művelettáblája a következő: in on out in in in in on in in/on on out in on out

- on-on unió

- on-on unió

- on-on unió

- on-on unió

- felfelé irány, metszet A regularizált metszet művelettáblája a következő: in on out in in on out on on on/out out out out out out

- on-on metszet

- on-on metszet

- on-on metszet

- on-on metszet

On-on probléma Nem dönthető el egyértelműen sem a regularizált metszet, sem pedig az unió ha csak az osztályozás eredményét ismerjük A problémát azok a pontok okozzák, amik a reprezentált test felületén vannak A kétértelműség feloldásához szükségük van a lekérdezési pont egy nagyobb környezetben vett szomszédosságára Illetve annak típusára

Pont szomszédossága A p = [x, y, z] T pont szomszédossága az S testre vonatkoztatva N(p) := k ɛ (p) S, egy infinitezimálisan kicsiny ɛ > 0 értékre. A szomszédossága teli gömb, azaz N(p) = kɛ (p), ha a pont az S-en belül van, üres gömb, azaz N(p) =, ha a pont a testen kívül van a teli gömb egy valódi részhalmaza, ha p az S határán van

Pont szomszédossága - felületi pontoknál A nem triviális eset könnyebb értelmezéséhez most tekintsük a poliédereket Azaz a testünk határolófelülete csúcsokból, élekből és lapokból áll Általános, görbület felületi elemeknél a pontos szomszédosság helyett érdemes valamilyen közeĺıtő (befoglaló) szomszédossággal számolni

Pont szomszédossága - lap belső pontja (lap-szomszédosság) Ha egy pont egy határolólap belsejében van, akkor a test a szomszédossága egy sík által meghatározott két féltérhez tartozik A reprezentációhoz a pont maga és a kifelé mutató normális tartozik

Pont szomszédossága - él belső pontja (él-szomszédosság) Ha egy pont egy él belső pontja, akkor a környezete ékhez hasonĺıt, az általa elválasztott lapok alatti félterek darabokat metszenek ki (balra lent) Most megengedjük, hogy egy él ne csak két lapot választhasson ketté, ekkor több ékünk lesz (jobbra lent)

Pont szomszédossága - csúcsban (csúcs-szomszédosság) A csúcspont esetén pedig a befutó élek egy-egy kúpkörnyezetet metszenek ki a pont szomszédosságából A kúpok csúcsa az a pont, aminek a környezetét vizsgáljuk

Pont szomszédossága - felületi pontok környezetei

- javított felfelé irány, unió /1 Tekintsük a felfelé irány alábbi módosított algoritmusát, ahol N L a bal-, az N R pedig a jobboldali unió argumentum környezetét jelöli: az unió eredményeképp kapott N környezetre 1. ha N L a teli gömb, akkor N is teli gömb 2. ha N L az üres gömb, akkor N = N R 3. ha N L, N R egyaránt lap-szomszédosságok, akkor N egy él-szomszédosság, kivéve ha a két lap egybeesik. Ha egybeesnek, akkor N általában egy lap-szomszédosság lesz, kivéve ha a lapok ellentétesen orientáltak, mert ekkor N a teljes gömb lesz.

- javított felfelé irány, unió /2 4. ha N L, N R él-szomszédosságok, akkor N általában egy csúcs-szomszédosság lesz, kivéve ha az illető élek egybeesnek. Egybeeséskor N általában maga is él-környezet lesz, kivéve ha N L és N R együtt egy lapot alkotnak, amikor is N egy lap-környezetté válik.

- javított felfelé irány, unió /3 4. ha N L, N R él-szomszédosságok, akkor N általában egy csúcs-szomszédosság lesz, kivéve ha az illető élek egybeesnek. Egybeeséskor N általában maga is él-környezet lesz, kivéve ha N L és N R együtt egy lapot alkotnak, amikor is N egy lap-környezetté válik.

- javított felfelé irány, unió /4 4. ha N L, N R él-szomszédosságok, akkor N általában egy csúcs-szomszédosság lesz, kivéve ha az illető élek egybeesnek. Egybeeséskor N általában maga is él-környezet lesz, kivéve ha N L és N R együtt egy lapot alkotnak, amikor is N egy lap-környezetté válik.

- javított felfelé irány, unió /5 5. ha N L, N R egyike csúcs-, a másik pedig él-szomszédosság, akkor N általában csúcs-szomszédosság lesz, kivéve ha N L, N R egy él-szomszédossággá egészítik ki egymást

- javított felfelé irány, unió /6 6. ha N L, N R egyaránt csúcs-szomszédosságok, akkor N általában csúcs-szomszédosság, kivéve ha a kúpok egy éket vagy lapot nem formálnak, amikor is N rendre él- és lap-szomszédossággá válik.

- javított felfelé irány, unió /6 6. ha N L, N R egyaránt csúcs-szomszédosságok, akkor N általában csúcs-szomszédosság, kivéve ha a kúpok egy éket vagy lapot nem formálnak, amikor is N rendre él- és lap-szomszédossággá válik.

- javított felfelé irány, unió /6 6. ha N L, N R egyaránt csúcs-szomszédosságok, akkor N általában csúcs-szomszédosság, kivéve ha a kúpok egy éket vagy lapot nem formálnak, amikor is N rendre él- és lap-szomszédossággá válik.

- javított felfelé irány A többi eset hasonlóan belátható: N L, N R {ures, teli, lap, el, csucs} A többi művelet szintén analóg (de HF végiggondolni őket)

Görbe-test osztályozás Tartalom Test- és felületmodellezés Reprezentáció és kiértékelés Görbe-test osztályozás Felület-test osztályozás Befoglalók

Görbe-test osztályozás Görbe-test osztályozás A pont-test osztályozásnál látotthoz hasonló elven, kétfázisú algoritmussal: 1. A görbeleírást a gyökértől indulva továbbítsuk az összes levél felé. A levelekben osztályozzuk a görbe részeit, ezáltal kint/bent/rajta szakaszokra osztva a görbét. 2. Ezután a szegmenseket a levelektől vigyük fel a gyökérig, hogy megkapjuk a görbe végső osztályozását.

Görbe-test osztályozás Görbe-test osztályozás Ebben az esetben a görbe parametrikusan reprezentációja mellett oldható meg könnyebben a feladat De ettől még gyökkeresést kell megoldani, hogy az implicit-parametrikus metszést megvalósítsuk Vigyázzunk arra, hogy a görbe nem csak egyenes lehet! De az egyenest már egyszer láttuk is...

Görbe-test osztályozás CSG modellek metszése sugárral Levél: triv., metszéspontok: p + t 1 v és p + t 2 v A sugár (p + t 1 v, p + t 2 v) szakaszon a primitív belsejében halad. Összes levélből: t 1... t n, elég ezeket vizsgálnunk. Szakasz-listákat fogunk nyílvántartani.

Görbe-test osztályozás CSG modellek metszése sugárral Belső csúcsok: a gyerekektől származó szakasz-listákra is végrehajtjuk a műveletet Összeérő szakaszokat egyesítjük, különben hozzávesszük a listához. Kiszámítjuk a szakaszok metszeteit. \ Kivonjunk a szakaszokat egymásból. Gyökérben: a legkisebb pozitív t értékű pont lesz a szemhez legközelebbi metszés. Ha a metszések száma páros: kívül vagyunk az objektumon, ha páratlan, akkor a belsejében.

Felület-test osztályozás Tartalom Test- és felületmodellezés Reprezentáció és kiértékelés Görbe-test osztályozás Felület-test osztályozás Befoglalók

Felület-test osztályozás Felület-test osztályozás 1. Metszük el a felületet az összes primitívvel (a gyökértől a levélig tartó transzformációkat figyelembe véve) 2. Osztályozzuk az eredményül kapott metszésgörbéket 3. A helyes orientációra ügyelve kombináljuk a felület-darabokat

Felület-test osztályozás Felület-test osztályozás A fenti algoritmus használható B-rep-re történő konverzióra is A levelekben lévő primitíveket egymással kell metszeni és a metszett végén lapokra osztályozott görbékből lesz a B-rep reprezentáció határgörbéje

Befoglalók Tartalom Test- és felületmodellezés Reprezentáció és kiértékelés Görbe-test osztályozás Felület-test osztályozás Befoglalók

Befoglalók Befoglalók A CSG fa geometriáival végzett műveletek költségesek tudnak lenni Ezért érdemes felgyorsítani az elvégzésüket előszűréssel Ennek egyik legkényelmesebb módja olyan egyszerűbb térfogatokat hozzárendelni a geometriákhoz, amelyek tartalmazzák a primitív összes pontját

Befoglalók Műveletek befoglalókkal Jelölje O(T ) a T CSG részfa befoglaló térfogatát (pl. AABB). A levelekben található primitívek befoglaló objektumai adottak.

Befoglalók Műveletek befoglalókkal A fából felfelé haladva található halmazműveletek mentén O(T ) a következőképpen számítható: ( ) T = T 1 T 2 O(T ) := O O(T 1 ) O(T 2 ) ( ) T = T 1 T 2 O(T ) := O O(T 1 ) O(T 2 ) T = T 1 T 2 O(T ) := O(T 1 )