3D-s baricentrikus koordináták

Slides:



Advertisements
Hasonló előadás
Beruházási és finanszírozási döntések kölcsönhatásai 1.
Advertisements

Számvitel S ZÁMVITEL. Számvitel Hol tartunk… Beszámoló –Mérleg –Eredménykimutatás Értékelés – – – –2004- –Immateriális javak,
avagy a háromszög technika
Geometriai transzformációk
Merre tovább magyar mezőgazdaság?
Adatbázis normalizálás
3D grafika összefoglalás
Alhálózat számítás Osztályok Kezdő Kezdete Vége Alapértelmezett CIDR bitek alhálózati maszk megfelelője A /8 B
A színkezelés alapjai a GIMP programban
Komplex természettudomány 9.évfolyam
Kiegészítő melléklet és üzleti jelentés
DIGITÁLIS KÉPFELDOLGOZÁS ALAPFOGALMAK
Montázs készítése.
LABORATÓRIUMI GYAKORLATOK Bohátka Sándor és Langer Gábor
A Feuerbach-kör és annak alkalmazása feladatokban
KÉSZÍTETTE: ÁRPÁS ATTILA
videós team Team vezetője: Tariné Péter Judit Tagok:
Egy szerkesztés nehézségei
Programozás III. Gyakorlás.
Lineáris függvények.
HÉL (Hasonló értelmű licit)
RÁDIÓRENDSZEREK Képi jelek Győr.
Magyarország földtana - rövid áttekintés -
Kockázat és megbízhatóság
Három dimenziós barlangtérkép elkészítésének matematikai problémái
Rendszerező összefoglalás
Végeselemes modellezés matematikai alapjai
Kockázat és megbízhatóság
Kvantitatív módszerek
Környezeti teljesítményértékelés
Hipotézisvizsgálat.
A földrajzi kísérletek szervezése és végrehajtása
Statisztika 10 évf. 3 osztály 82 tanuló 9 évf. 4+1 osztály 118 tanuló Minden osztályt külön pedagógus javított 8 fő - részben of, ha vállalta.
Munka és Energia Műszaki fizika alapjai Dr. Giczi Ferenc
2. Koordináta-rendszerek és transzformációk
Tartalékolás 1.
Adatbázis-kezelés (PL/SQL)
Sokszögek modul Pitagórasz Hippokratész Sztoikheia Thalész Euklidesz
FÜGGVÉNYEK Legyen adott A és B két nem üres (szám)halmaz. Az A halmaz minden eleméhez rendeljük hozzá a B halmaz pontosan egy elemét. Ezt az egyértelmű.
Szerkezetek Dinamikája
Kvantitatív módszerek
Körmendi Dániel MAS Meeting Scheduler.
Rendszerfejlesztés gyakorlat
Nyílt nap Iskola neve Dátum.
Monitor(LCD).
Tilk Bence Konzulens: Dr. Horváth Gábor
RUGÓK.
AVL fák.
Készletek - Rendelési tételnagyság számítása -1
TRIGONOMETRIA Érettségi feladatok
Nem mindig az a bonyolult, ami annak látszik azaz geometria feladatok megoldása egy ritkán használt eszköz segítségével Rátz László Vándorgyűlés 2018.
A Microsoft SharePoint testreszabása Online webhely
2. A KVANTUMMECHANIKA AXIÓMÁI
Perspektív térábrázolás
Matematika I. BGRMA1GNNC BGRMA1GNNB 8. előadás.
Vasbeton falvasalás megadása és ellenőrzése EC2 szerint
Matematika 10.évf. 4.alkalom
A szállítási probléma.
Dr. Varga Beatrix egyetemi docens
Matematika 11.évf. 1-2.alkalom
Binomiális fák elmélete
Fizikai kémia 2 – Reakciókinetika
Munkagazdaságtani feladatok
Lorenz-görbe dr. Jeney László egyetemi adjunktus
Bevezetés Tematika Számonkérés Irodalom
Vektorok © Vidra Gábor,
A geometriai transzformációk
A T-spline felületreprezentáció
Atomok kvantumelmélete
Hipotéziselmélet Adatelemzés.
Előadás másolata:

3D-s baricentrikus koordináták Szijártó András 2016

Tartalom 1) Általános baricentrikus koordináták 3D-ben 2) Mean Value koordináták 3D-ben 3) Mean Value koordináták N-oldalú lapokkal 4) Alkalmazások I. (interpoláció) 5) Alkalmazások II. (deformáció)

Motiváció Háromszöghálók paraméterezése és síkba terítése Skalár- és vektorfüggvények interpolációja Alakzatok és képek deformációja Animálás 3D RGB interpoláció [5] 3D alakzat deformálás [5]

1. Általános baricentrikus koordináták 3D-ben A feladat: 2D esethez hasonlóan poliéder csúcsaihoz szeretnénk baricentrikus koordinátákat rendelni. Célunk, hogy minden belső 𝑣 pont előálljon a poliéder csúcsainak lineáris kombinációjaként: 𝑣= 𝑖=1 𝑛 𝜆 𝑖 (𝑣)𝑣 𝑖 𝑖=1 𝑛 𝜆 𝑖 (𝑣) ≡ 1 Az élek mentén lineáris, lapokon 2D baricentrikus. A pontban 1 a koordináta, és a nem szomszédos lapokon elfogy.

2. Mean Value koordináták 3D-ben Adott egy háromszög lapokkal határolt poliéder, és benne egy 𝑣 pont, ahol ki akarjuk értékelni a mean value koordinátákat. A 𝑖=1 𝑛 𝜆 𝑖 (𝑣− 𝑣 𝑖 ) =0 kifejezés (Affine precision) analóg azzal, hogy az egységgömb felszínén az egység normálisok integrálja nulla ( 𝑆 𝒏(𝒑) =0, 𝑎ℎ𝑜𝑙 𝒏 𝒑 =𝒑−𝒗). Vegyünk 𝑣 körül egy egységgömböt, erre levetítjük a poliéder lapjait. Integrálás -> úgy mint 2D-ben (körön) [4]

2. Mean Value koordináták 3D-ben Gömbi háromszögeket kapunk, aminek a csúcsaihoz súlyokat rendelünk. 2D baricentrikus a háromszögre Korrekció a vetítés miatt Ebből számolhatjuk a mean value koordinátákat. A csúcs körüli háromszögekből adódó súlyok összege. [4] Minden laphoz van így baricentrikus, ezeket a csúcsok alapján összegezzük - >mv

2. Mean Value koordináták 3D-ben A háló háromszögei egy 𝑣 középponttú egységsugarú gömbre vetülnek le. 𝑇=[ 𝑣 𝑖 , 𝑣 𝑗 , 𝑣 𝑘 ] leképződik 𝑇 =[ 𝑣 𝑖 , 𝑣 𝑗 , 𝑣 𝑘 ] –re. 𝑟 𝑖 = 𝑣 𝑖 −𝑣 az oldalvektorok hosszai. 𝑒 𝑖 =( 𝑣 𝑖 −𝑣)/ 𝑟 𝑖 az egységvektorok. Új pont az egységgömbön: 𝑣 𝑖 =𝑣+ 𝑒 𝑖 . Cél, hogy a 𝑇 -ban meghatározzuk a baricentrikus koordinátákat. [4]

2. Mean Value koordináták 3D-ben Gömbi integrál kiszámítása trükkös: Az integrált a gömbcikkeken számítjuk ki 𝑇 𝒑−𝒗 = µ 𝑖,𝑇 𝒆 𝑖 + µ 𝑗,𝑇 𝒆 𝑗 + µ 𝑘,𝑇 𝒆 𝑘 A csúcsokhoz tartozó súly: 𝜇 𝑖,𝑇 = 𝛽 𝑗𝑘 + 𝛽 𝑖𝑗 𝑛 𝑖𝑗 ∙ 𝑛 𝑗𝑘 + 𝛽 𝑘𝑖 𝑛 𝑘𝑖 ∙ 𝑛 𝑗𝑘 2 𝑒 𝑖 ∙𝑛 𝑗𝑘 ahol 𝑛 𝑟𝑠 =( 𝑒 𝑟 ⨯ 𝑒 𝑠 )/ 𝑒 𝑟 ⨯ 𝑒 𝑠 , Az integrált a körcikkeken számoljuk ki. Cikkek: I1, I2, I3. B terület a kérdés ami a gömbi háromszög, B = I1 + I2 + I3 mivel T: I1+I2+I3 - B = 0 a tétel alapján. B-t akarjuk szétosztani a csúcsokra. B = integral = ei, ej, ek súlyozott összege. A súly lesz a Mű_i_T

2. Mean Value koordináták 3D-ben Minden háromszög mindhárom csúcsához: Most csoportosítsuk a 𝜇 𝑖,𝑇 -ket a háló csúcsai szerint. Ezt még súlyozni kell a vetítés arányával ( 1 𝑟 𝑖 ) 𝑤 𝑖 = 1 𝑟 𝑖 𝑣 𝑖 ∈𝑇 𝜇 𝑖,𝑇 >0 . Ebből normalizálással: 𝜆 𝑖 = 𝑤 𝑖 𝑗=1 𝑛 𝑤 𝑗 1/ri: mennyit „nyujtottuk” a vektort, h. egységet kapjunk.

3. Mean Value koordináták N-oldalú lapokkal Ugyanaz az elv mint korábban A 𝜇 𝑖,𝑇 kiszámolása különbözik 𝑇 𝒑−𝒗 = 𝑖=1 𝑁 µ 𝑖,𝑇 𝒆 𝑖 Az integrált ugyanúgy számoljuk mint eddig A súlyok szétosztása nem egyértelmű Vetítsük síkba a sokszöget Ötlet: számoljuk 2D baricentrikus szerint. Integrál itt N tagú

3. Mean Value koordináták N-oldalú lapokkal A területvektor egyenlő a határoló körcikkek befelé irányított területvektorainak összegével. 𝑡= 𝑖=1 𝑘 𝑂𝑃 𝑖 × 𝑂𝑃 𝑖+1 | 𝑂𝑃 𝑖 |·| 𝑂𝑃 𝑖+1 |· 𝑠𝑖𝑛𝛼 𝑖 · 𝛼 𝑖 2 Vetítsük a pontokat egy a t-re merőleges síkra. Kiszámoljuk a pontokhoz a 2D baricentrikus koordinátákat. Innen megkapjuk a µ 𝑖,𝑇 -t

3. Mean Value koordináták N-oldalú lapokkal Speciális esetek: A 𝑣 pont a poliéder egy csúcsába esik. Ekkor λ i v = δ i,j A 𝑣 pont a poliéder egy élére esik. λ i v = 1−μ δ i,j + μδ i,j+1 A 𝑣 pont a poliéder egy lapjára esik (ismét visszavezetjük a 2D esetre). Ez a programozás részéhez fontos, mert elfajuló esetek léphetnek fel. Nullával osztás stb. inf, nan

3. Poliéder vetítése gömbre I. Tetraéder közepén, és egyik lapjához közel lévő tesztpont. A tesztpont mozgatásával a 0.25, 0.25, 0.25, 0.25 koordináták a 0.13, 0.29, 0.289, 0.291–ba mennek át. Gyémánt alakzat középen lévő tesztponttal. A koordináták rendre 0.12, 0.12, 0.12, 0.12, 0.12, 0.29, 0.11.

3. Poliéder vetítése gömbre II. Gyémánt alakzat kiindulási állapota, fix módosított tesztponttal és három különböző nézőponttal. A baricentrikus koordináták a következők: 0.0690294, 0.0690326, 0.0690226, 0.0690231, 0.0690318, 0.630757, 0.0241039.

4. Skalár interpoláció Csúcsokhoz skalár rendelés: 𝑣 𝑖 → 𝑓 𝑖 Kiértékelés: 𝑓(𝑣)= 𝑖=1 𝑛 𝜆 𝑖 𝑣 𝑓 𝑖 Az 𝑓(𝑣) térbeli eloszlása síkon jól szemléltethető Csíkozott megjelenés: Érték tartományokra osztás Tartomány szerinti színezés Rendeljünk skalár értékeket a csúcsokhoz: 𝑣 𝑖 → 𝑓 𝑖 Ekkor: 𝑓(𝑣)= 𝑖=1 𝑛 𝜆 𝑖 𝑣 𝑓 𝑖 A baricentrikus koordinátákat és az interpolált skalár vagy vektormennyiségek térbeli eloszlását egy síkon könnyen szemléltethetjük, ha azon diszkrét pontjaiban kiértékeljük. Osszuk fel az értelmezési tartományt sávokra, és ez alapján rendeljünk fehér illetve fekete színt felváltva az értékekhez. Ennek segítségével színezzük a mozgó síkot, amin így paraméter vonalakat fogunk látni, amik a középérték koordináták és/vagy a skalárfüggvény eloszlását reprezentálják.

4. Skalár interpoláció A1) A2) B) A3) A4) C) A) A felső csúcshoz f=1, a többihez f=0 értéket rendeltünk. B) oldalsó csúcs 1, többi 0 értékű. C) két szemközti csúcshoz 1-et, a többihez 0-t rendeltünk.

4. Skalár interpoláció A1) A2) A3) A4) A5) B) A) Felső csúcshoz 1 érték rendelve, a többihez 0. B) Két felső csúcshoz 1 érték rendelve, a többihez 0.

4. Szín interpoláció Hozzárendelés: 𝑣 𝑖 → 𝐹 𝑖 ahol 𝐹= 𝑅𝐺𝐵 Leképzés: 𝐹(𝑣)= 𝑖=1 𝑛 𝜆 𝑖 𝑣 𝐹 𝑖 𝐹(𝑣 ) alapján színezzük a síkot. Rendeljünk vektor mennyiségeket a csúcsokhoz: 𝑣 𝑖 → 𝐹 𝑖 ahol 𝐹= 𝑅𝐺𝐵 Ekkor 𝐹-nek egy folytonos leképzését hozhatjuk létre: 𝐹(𝑣)= 𝑖=1 𝑛 𝜆 𝑖 𝑣 𝐹 𝑖 Ezeket az interpolált vektormennyiségeket számoljuk ki és ez alapján színezzük a mozgó sík pontjait. Ezzel egy folytonos leképezést hoztunk létre a poliéder csúcsaihoz rendelt szín értékek között.

4. RGB interpoláció Konkáv poliéder síkmetszetei teljes sík és poligon feltüntetésével. RGB interpoláció.

4. RGB interpoláció Stanford bunny (700) háromszöglappal határolt modelljének egy színezése, majd az alapján történő szín interpoláció.

4. RGB interpoláció Oldalnézet Felülnézet

4. Szintfelületek I. A poliéder alsó csúcsához tartozó függvény értéket 1-re míg a többit 0-ra állítottuk. A négy ábra a következő paraméterhez tartozó felületeket mutatja: 0.5, 0.1, 0.01, 0.0001

4. Szintfelületek II. Kockában a paraméter értékek sorban: 0.5, 0.1, 0.01, 0.0001 Az 5. ábrán két csúcshoz rendeltünk 1-es értéket, míg a többihez 0-át.

4. Szintfelületek III. [0..1] tartomány 5 részre osztása: 0.2-eps, 0.4-eps, 0.8-eps, 1.0-eps

4. Függvény interpoláció A paraméter értékek sorban 0.6, 0.5, 0.5

5. Deformáció 2D esettel analóg 𝑣= 𝑖=1 𝑛 𝜆 𝑖 (𝑣)𝑣 𝑖 𝑣= 𝑖=1 𝑛 𝜆 𝑖 (𝑣)𝑣 𝑖 Master(𝛺) – Slave (𝛼) Hozzárendelés 𝑎-hoz 𝛺 alapján: 𝑎= 𝑖=1 𝑛 𝜆 𝑖 𝑜 𝑖 . Master deformálás: 𝛺 → 𝛺 A slave előáll a deformált master alapján: 𝑎 = 𝑖=1 𝑛 𝜆 𝑖 𝑜 𝑖 A deformációs feladatokhoz a baricentrikus koordináták következő tulajdonságát használjuk ki: 𝑣= 𝑖=1 𝑛 𝜆 𝑖 (𝑣)𝑣 𝑖 Van egy tetszőleges lapokkal határolt 𝛼 (target, slave), illetve egy ezt befoglaló másik 𝛺 poliéder (control cage, master). 𝛼 csúcsai 𝑎( 𝑎 𝑥 , 𝑎 𝑦 , 𝑎 𝑧 ) illetve 𝛺 csúcsai 𝑜( 𝑜 𝑥 , 𝑜 𝑦 , 𝑜 𝑧 ) Minden 𝑎-hoz rendeljük hozzá a baricentrikus koordinátákat 𝛺 alapján, így minden 𝑎= 𝑖=1 𝑛 𝜆 𝑖 𝑜 𝑖 . Most változtassuk meg 𝛺 pontjait tetszőlegesen 𝑜 𝑖 → 𝑜 𝑖 , így létrejön 𝛺 . A fenti összefüggés továbbra is fenn áll, vagyis 𝛼 kiszámolható: 𝑎 = 𝑖=1 𝑛 𝜆 𝑖 𝑜 𝑖

5. Deformáció Demo Animáció Lépések Master-Slave objektumok betöltése. Állapot mentés. Baricentrikus koordináták kiértékelése. Master objektum csúcsainak módosítása. Végállapot kiszámolása. Folytonos csúsztatás az eltolási vektorok mentén. Demo

5. Deformáció Demo Animáció Lépések Master-Slave objektumok betöltése. Állapot mentés. Baricentrikus koordináták kiértékelése. Master objektum csúcsainak módosítása. Végállapot kiszámolása. Folytonos csúsztatás az eltolási vektorok mentén. Demo

5. Deformáció Demo Animáció Lépések Master-Slave objektumok betöltése. Állapot mentés. Baricentrikus koordináták kiértékelése. Master objektum csúcsainak módosítása. Végállapot kiszámolása. Folytonos csúsztatás az eltolási vektorok mentén. Demo

Hivatkozások [1] K. Hormann & M. S. Floater: Mean Value Coordinates for Arbitrary Planar Polygons, ACM Transactions on Graphics, 25(4):1424-1441, October 2006. http://www.inf.usi.ch/hormann/papers/Hormann.2006.MVC.pdf [2] K. Hormann: – Barycentric Coordinates and Transfinite Interpolation, Tenth SIAM Conference on Geometric Design and Computing, San Antonio, Texas, November 4-8, 2007, http://www.inf.usi.ch/faculty/hormann/barycentric/Hormann.pdf [3] T. Schneider, K. Hormann & M.S. Floater – Bijective Composite Mean Value Mapping, DOI 10.1111/cfg.12180 Eurographics Symposium on Geometry Processing 2013, Guest Editors: Yaron Lipman and Hao Zhang, Volume 32(2013), Number 5. http://www.inf.usi.ch/hormann/papers/Schneider.2013.BCM.pdf [4] M. S. Floater, G. Kós and M. Reimers: Mean value coordinates in 3D – Computer Aided Geometric Design, Volume 22, Issue 7, October 2005, Pages 621-631, http://www.sciencedirect.com/science/article/pii/S0167839605000725 [5] T. Ju, S. Schaefer and J. Warren: Mean value coordinates for closed triangular meshes – ACM SIGGRAPH 2005 Papers, Pages 561-566, New York – USA 2005 http://dl.acm.org/citation.cfm?id=1073229