GÖRBÉK ÉS FELÜLETEK ILLESZTÉSE KÉNYSZEREKKEL II.

Hasonló dokumentumok
Hajder Levente 2018/2019. II. félév

TDK dolgozat. BME TTK, Matematika MSc, I. évfolyam BME IIT

= Y y 0. = Z z 0. u 1. = Z z 1 z 2 z 1. = Y y 1 y 2 y 1

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

4. Felületek Forgásfelületek. Felületek 1. Legyen adott egy paramétersíkbeli T tartomány. A paramétersíkot az u és v koordinátatengelyekkel

Az egyenes és a sík analitikus geometriája

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

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

KOVÁCS BÉLA, MATEMATIKA II.

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?

7. Koordináta méréstechnika

sin x = cos x =? sin x = dx =? dx = cos x =? g) Adja meg a helyettesítéses integrálás szabályát határozott integrálokra vonatkozóan!

Vektorgeometria (2) First Prev Next Last Go Back Full Screen Close Quit

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

Vektorok összeadása, kivonása, szorzás számmal, koordináták

Felületek differenciálgeometriai vizsgálata

KOVÁCS BÉLA, MATEMATIKA I.

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

Matematika II. 1 sin xdx =, 1 cos xdx =, 1 + x 2 dx =

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

Matematika II képletek. 1 sin xdx =, cos 2 x dx = sh 2 x dx = 1 + x 2 dx = 1 x. cos xdx =,

MATLAB. 5. gyakorlat. Polinomok, deriválás, integrálás

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

Alap-ötlet: Karl Friedrich Gauss ( ) valószínűségszámítási háttér: Andrej Markov ( )

Termék modell. Definíció:

Geofizikai kutatómódszerek I.

Nagy András. Feladatok a koordináta-geometria, egyenesek témaköréhez 11. osztály 2010.

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

Konjugált gradiens módszer

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

HÁZI FELADATOK. 1. félév. 1. konferencia A lineáris algebra alapjai

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

Lengyelné Dr. Szilágyi Szilvia április 7.

Grafikonok automatikus elemzése

2014/2015. tavaszi félév

Minimum követelmények matematika tantárgyból 11. évfolyamon

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

Szélsőérték-számítás

Optimalizálás alapfeladata Legmeredekebb lejtő Lagrange függvény Log-barrier módszer Büntetőfüggvény módszer 2017/

Példa: Tartó lehajlásfüggvényének meghatározása végeselemes módszer segítségével

Matematika I. Vektorok, egyenesek, síkok

Lineáris algebra zárthelyi dolgozat javítókulcs, Informatika I márc.11. A csoport

Diszkréten mintavételezett függvények

1. Bevezetés. 2. Felületek megadása térben. A fenti kúp egy z tengellyel rendelkező. ismerhető fel, hogy. 1. definíció. Legyen D R n.

MÉSZÁROS JÓZSEFNÉ, NUMERIKUS MÓDSZEREK

I. Vektorok. Adott A (2; 5) és B ( - 3; 4) pontok. (ld. ábra) A két pont által meghatározott vektor:

Egyenes és sík. Wettl Ferenc szeptember 29. Wettl Ferenc () Egyenes és sík szeptember / 15

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

0-49 pont: elégtelen, pont: elégséges, pont: közepes, pont: jó, pont: jeles

Oeconomicus Napocensis Verseny Március 24 és május IV. szekció Tantárgy: MATEMATIKA I

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

6. Függvények. Legyen függvény és nem üreshalmaz. A függvényt az f K-ra való kiterjesztésének

A dinamikus geometriai rendszerek használatának egy lehetséges területe

Az M A vektor tehát a három vektori szorzat előjelhelyes összege:

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

Nemlineáris programozás 2.

Robotika. Kinematika. Magyar Attila

Érettségi feladatok Koordinátageometria_rendszerezve / 5

Egyenes és sík. Wettl Ferenc Wettl Ferenc () Egyenes és sík / 16

Koordináta-geometria II.

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

Irányításelmélet és technika II.

Legkisebb négyzetek módszere, Spline interpoláció

Számítógépes Grafika mintafeladatok

KOVÁCS BÉLA, MATEMATIKA I.

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

Regresszió. Csorba János. Nagyméretű adathalmazok kezelése március 31.

Tanmenet a évf. fakultációs csoport MATEMATIKA tantárgyának tanításához

Eddig csak a polinom x-ben felvett értékét kerestük

CAD technikák A számítógépes tervezés geometriai alapjai: görbék típusai, matematikai leírás, manipulációk görbékkel.

Koordináta-geometria feladatok (középszint)

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

KOVÁCS BÉLA, MATEMATIKA II.

Lagrange és Hamilton mechanika

Analitikus térgeometria

Függvények Megoldások

Érettségi feladatok: Koordináta-geometria 1/5

Két körhenger általánosabban ( Alkalmazzuk a vektoralgebrát! ) 1. ábra

A bifiláris felfüggesztésű rúd mozgásáról

valós számot tartalmaz, mert az ilyen részhalmazon nem azonosság.

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

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

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉP SZINT Koordináta-geometria

KOVÁCS BÉLA, MATEMATIKA I.

Feladatsor A differenciálgeometria alapja c. kurzus gyakorlatához

Tartószerkezet-rekonstrukciós Szakmérnöki Képzés

1. ábra. 24B-19 feladat

Serret-Frenet képletek

Számítógépes geometria (mester kurzus) III

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

Matematika tanmenet 11. évfolyam (középszintű csoport)

Koordinátageometria. M veletek vektorokkal grakusan. Szent István Egyetem Gépészmérnöki Kar Matematika Tanszék 1

ACM Snake. Orvosi képdiagnosztika 11. előadás első fele

Többváltozós, valós értékű függvények

Egy sík és a koordinátasíkok metszésvonalainak meghatározása

A térképen ábrázolt vonal: - sík felület egyenese? - sík felület görbéje? - görbült felület egyenese ( geodetikus )? - görbült felület görbéje?

A térképen ábrázolt vonal: - sík felület egyenese? - sík felület görbéje? - görbült felület egyenese ( geodetikus )? - görbült felület görbéje?

Matematika III előadás

Feladatok a koordináta-geometria, egyenesek témaköréhez 11. osztály, középszint

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Koordináta-geometria

Átírás:

GÖRBÉK ÉS FELÜLETEK ILLESZTÉSE KÉNYSZEREKKEL II. Érdekességek a geometriai modellezésben Kovács István

MIRŐL LESZ SZÓ? Kényszerek automatikus felismerése 1. Lokális kényszerek (merőlegesség, párhuzamosság, stb.) 2. Globális kényszerek 2.1. Orientáció 2.2. Szimmetria 2.3. Rácsra illeszkedés

MIRŐL LESZ SZÓ? 3. Kényszeres illesztés szabadformájú elemekkel 3.1. Görbék 3.2. Felületek

1. LOKÁLIS KÉNYSZEREK FELISMERÉSE Célunk a legvalószínűbb kényszerek felismerése, és érvényesítése Minden illesztés után változnak az értékek, új kényszerek jöhetnek szóba Dinamikus megoldás kell Toleranciaszintek kellenek Megoldás: módosított kényszeregyenletek minden objektumpárhoz s " (x) := x ha x < " 0 egyébként. s " (c(x)) = 0

1. MIÉRT JÓK A MÓDOSÍTOTT EGYENLETEK? Toleranciaszinten belül megegyezik az eredetivel, tehát ugyanúgy hat Toleranciaszinten kívül konstans 0, azaz nincs hatása Ha ezeket használjuk, az iteráció során automatikusan beállnak a kényszerek s " (x) := x ha x < " 0 egyébként. s " (c(x)) = 0

1. LOKÁLIS KÉNYSZEREK FELISMERÉSE Példa: fogaskerék Három kör, egyenleteik: F i (x, y) =A i (x 2 + y 2 )+B i x + C i y + D i =0 Érintési kényszerek: c i,j (x) =2A j D i +2A i D j B i B j C i C j ± 1=0 Toleranciaszint: 5.0 c 1,2 (x) =2.142! s " (c 1,2 (x)) = 2.142 c 1,3 (x) = 134.925! s " (c 1,3 (x)) = 0 c 2,3 (x) =1.010! s " (c 2,3 (x)) = 1.010

Kényszerek nékül Felismert érintési és merőlegességi kényszerek érintési kényszerek Erősebb toleranciaszintekkel

1. LOKÁLIS KÉNYSZEREK FELISMERÉSE Mi a helyzet az összetettebb lokális kényszerekkel? Segédobjektumok? Nehéz feladat, segédobjektumokat kell automatikusan felvenni

2. GLOBÁLIS KÉNYSZEREK FELISMERÉSE Felismerésük sokkal nehezebb a lokális kényszereknél A megfelelő kényszereket meg kell találni Globális kényszerek 2.1. Orientáció: a modell megfelelő koordináta-rendszerbe helyezése 2.2. Szimmetriatengelyek/síkok 2.3. Rácsra illeszkedés

2.1. ORIENTÁCIÓ FELISMERÉSE Egy CAD modell szinte mindig egy jól definiált koordinátarendszerben lett megtervezve A mérés során nyilvánvalóan nem ebbe a koordinátarendszerbe van helyezve a modell A mérési adatok egyéb pontatlanságot is behozhatnak Feltételezzük, hogy szegmentált modellel van dolgunk, a régiókhoz tartozik koordináta-rendszer Lokális kis koordináta-rendszerek

2.1. ORIENTÁCIÓ MEGHATÁROZÁSA Minden szegmentált tartományhoz tartozik egy irány Sík: normális Henger, kúp, forgásfelület: tengely Kihúzott felületek: kihúzási irány Jó orientáció: X, Y, Z irányban is erős Megoldás: klaszterezés az irányok között Legerősebb irányok minősítése Legerősebb klaszter: globális orientáció További klaszterek: lokális orientáció

2.1. ORIENTÁCIÓ MEGHATÁROZÁSA Az algoritmus lépései 1. irányvektorok kigyűjtése, hozzájuk tartozó súly d i A i 2. Klaszter növesztő algoritmus: minden C klaszterhez hozzárendelünk egy p vektort p 0 = X d i 2C A i d i, p = p0 p 0 3. Vesszük sorban az irányvektorokat, és toleranciaszinten belül bevesszük az egyik klaszterbe, vagy új klasztert hozunk létre 4. Elsődleges súlyozás (mennyi a p irányhoz tartozó összfelület?) G(p) ={i : d i p < "}, W 1 (p) = X A i. i2g(p)

2.1. ORIENTÁCIÓ MEGHATÁROZÁSA 5. Másodlagos súlyozás (mennyi a felületre merőleges klaszterek összsúlya?) H(p) ={k : hp k,pi < "}, W 2 (p) = X 6. Sorba rendezés W 1 +W 2 szerint 7. Harmadlagos súlyozás, merőleges klaszterek közül melyik a legerősebb? L(p k )={l : hp l,p k i < ",l 2 H(n z )}, W 3 (p k )= X 8. A legjobb klaszter: k2h(p) W 1 (p k )+W 3 (p k )=max A k l2l(p k ) A l

2.1. ORIENTÁCIÓ MEGHATÁROZÁSA Kijelölt felületek: az adott orientációhoz tartozó összes felület 30% 86%

2.1. ORIENTÁCIÓ MEGHATÁROZÁSA Globális és lokális orientáció

2.2. SZIMMETRIATENGELYEK/SÍKOK A CAD modellek általában valamilyen értelemben szimmetrikusak Ez lehet teljes, vagy részleges (nem tökéletes szimmetria, lokális hibák) Lokális részek is lehetnek szimmetrikusak Mért adatok miatt csak approximatív értelemben beszélhetünk szimmetriáról

2.2. SZIMMETRIATENGELYEK/SÍKOK Feladat: megkeresni a legjobb szimmetriatengelyt/síkot Mi alapján a legjobb? Szimmetria mérték (lásd köv. oldal) 1. l i segédegyenesek/síkok (tippek) Szakaszfelező merőlegesek Szögfelező merőlegesek 3D: tengelyek közötti felező sík 3D: szögfelező síkok 2. Klaszterezés az egyenesek/síkok között klaszternövesztéssel, mint korábban

2.2. SZIMMETRIATENGELYEK/SÍKOK 3. Klaszterek kiértékelése: minden klaszterhez hozzárendelünk egy átlagos P egyenest (v. síkot), és meghatározzuk a szimmetria mértékét 2Area(s 1 \ P (s 2 )) Area(s 1 )+Area(s 2 ) Ez 3D-ben nehezebb: kiértékelés bitmap alapján, és lehet önszimmetria is

2.2. SZIMMETRIATENGELYEK/SÍKOK Példa: a modell a feketével jelölt síkhoz tartozó szimmetrikus része piros

2.2. SZIMMETRIATENGELYEK/SÍKOK

2.2. UJJGYAKORLAT - SZIMMETRIA KERESÉS Határozzuk meg a segédegyeneseket Válasszuk ki a legjobb klasztereket Mi a szimmetria mértéke az egyes klaszterekhez?

2.2. UJJGYAKORLAT - SZIMMETRIA KERESÉS

2.2. UJJGYAKORLAT - SZIMMETRIA KERESÉS 100% 75%

2.3. RÁCSRA ILLESZKEDÉS FELISMERÉSE A tervezői gyakorlatban gyakran rácsra illeszkednek az elemek A méterek egész számok valamilyen mértékegység szerint 2D és 3D eset lényegében ugyanaz Az algoritmus lépései 1. Orientáció meghatározása (OK) 2. Cellaméret 3. Rács igazítása

2.3. CELLAMÉRET MEGHATÁROZÁSA 1.Illesszük a megfelelő egyeneseket az orientációhoz 2.Vegyük az összes páronkénti távolságot (párhuzamos egyenesek közötti távolság) 3.Ezek között keresünk legjobb approximatív közös osztót (d) = X min l (d)! min n nl d o, 1 n nl d o

2.3. CELLAMÉRET MEGHATÁROZÁSA A nagy variancia miatt numerikus minimum keresés nem jó A (d) függvény szakaszonként monoton A minimumot a monoton részek végénél veszi fel Ezek n l /k alakúak O(n 2 ) lépésben megtalálható a minimum Utolsó lépés: rács pozicionálása (u 0 )= X i w i h min ui u 0 h, 1 ui u 0 h.

2.3. RÁCSRA ILLESZKEDÉS FELISMERÉSE Egy lépésben is elvégezhető a keresés Drágább számítás: O(n 3 ) (x 0,h)= X i w i h min xi x 0 h, 1 xi x 0 h

2.3. RÁCSRA ILLESZKEDÉS FELISMERÉSE

2.3. RÁCSRA ILLESZKEDÉS FELISMERÉSE

3. KÉNYSZERES ILLESZTÉS SZABADFORMÁJÚ GÖRBÉKKEL A kényszereket most előre adottnak tekintjük Feladat: mint eddig, görbék mért adatokhoz való illesztése kényszerekkel Nehézségek Klasszikus illesztés csak lineáris kényszerekkel megy Nehéz a kényszerek felírása Segédobjektumokat kell használnunk

3.1. GÖRBEILLESZTÉS ISMÉTLÉS Mért adatpontok paraméterértékei fixek egy iteráció során Lineáris egyenletrendszer a kontrollpontokra nx r(t) = Q i N i (t) i=0 lx f dist (x) = d(r(t k ) p k ) 2 = k=0 lx = k=0 i=0 Z f smooth (x) = kr 00 (t)k 2 dt! 2 nx Q i N i (t k ) p k

3.1. GÖRBEILLESZTÉS KÉNYSZEREKKEL Szükség van elsődleges illesztésre, a kényszeres illesztés csak tökéletesít Több görbe együttes illesztése Paramétervektor: görbék kontrollpontjai x = r 1 Q 1 n r 2 Q 2 n Megoldás iterációval: d korrekciós vektor keresése, új kontrollpontok: x+d Mire van szükségünk? Hibafüggvény első és második deriváltja f 0 (x),f 00 (x) Kényszeregyenletek deriváltjai c 0 (x)

3.1. GÖRBEILLESZTÉS KÉNYSZEREKKEL A klasszikus módszerrel a nemlineáris kényszeregyenletek nem kezelhetőek Mik a lineáris kényszerek? Végpontok fixálása? Deriváltak fixálása a végpontokban Egy belső pont fixálása Mit nem tudunk így kezelni? Két görbe merőleges egy ismeretlen belső pontban A kényszeres illesztéssel a nemlineáris egyenletek is használhatók!

3.1. SEGÉDELEMEK (AUXILIARY) ISMÉTLÉS Összetettebb kényszerek felírása csak a hozzátartozó két objektummal nehéz vagy lehetetlen Segédobjektumok = több ismeretlen, egyszerűbb egyenletek Bármi lehet segédobjektum! Pont Vektor Szám (távolság vagy görbe/felület paraméterérték) Egyenes Görbe stb.

3.1. GÖRBEILLESZTÉS KÉNYSZEREKKEL Példa: két görbe simán kapcsolódik a végpontjaikban Kényszerek, c(x)=0: x = r 1 Q 1 n r 2 Q 2 n Végpontok megegyeznek Q 1 1 Q 2 1 =0 Végpontbeli deriváltak megegyeznek (Q 1 1 Q 1 2) (Q 2 1 Q 2 2)=0

3.1. GÖRBEILLESZTÉS UJJGYAKORLAT Feladat: két (B-spline) görbe r 1 (t) és r 2 (t) merőleges egy ismeretlen(!) belső pontban Tipp: használjunk segédobjektumokat! Írjuk fel a konkrét kényszeregyenleteket is!

3.1. GÖRBEILLESZTÉS UJJGYAKORLAT Megoldás: Segédobjektumok: P pont, V 1, V 2 vektorok, t 1, t 2 paraméterértékek

3.1. GÖRBEILLESZTÉS UJJGYAKORLAT Megoldás: Segédobjektumok: P pont, V 1, V 2 vektorok, t 1, t 2 paraméterértékek Kényszerek: r 1 (t 1 ) = P r 2 (t 2 ) = P r 1 (t 1 ) = V 1 r 2 (t 2 ) = V 2 V 1 és V 2 merőlegesek A segédobjektumok optimalizálódnak!

3.1. GÖRBEILLESZTÉS UJJGYAKORLAT Profi megoldás: Segédobjektumok: P pont, V 1, V 2 (egység)vektorok, t 1, t 2 paraméterértékek Kényszerek: r 1 (t 1 )=P r 2 (t 2 )=P r 1 (t 1 )=cv 1 r 2 (t 2 )=cv 2 V 1 és V 2 egység hosszú V 1 és V 2 merőlegesek

3.1. TOVÁBBI KÉNYSZEREK Két egyenes érinti egymást: mint az előbb, de V 1 = V 2 Végponti kényszerek még egyszerűbbek Görbület-folytonos (G2) csatlakozás: az első három kontrollpont helyzetével leírható összefüggés (klasszikusan is megy) Görbék és egyéb objektumok csatlakozása hasonlóan segédobjektumokkal (pl. görbe és egy kör egy ismeretlen pontban csatlakozik)

3.1. GÖRBEILLESZTÉS PÉLDA

3.2. FELÜLETILLESZTÉS ISMÉTLÉS Felületillesztésnél a paraméterezés sokkal nehezebb (lásd Márton előadásai) Paraméterezés után el kell dönteni a fokszámot, és a kontrollpontok számát (ez is nehéz) Simítás kell! S(u, v) = f dist (x) = nx i=0 lx k=0 f smooth (x) = mx j=0 Q i,j N i (u)m j (v) d S(u k,v k ) p k 2 = lx ZZ k=0 0 @ nx i=0 mx j=0 ks 00 u,uk 2 +2kS 00 u,vk 2 + ks 00 v,vk 2 du dv Q i,j N i (u k )M j (v k ) p k 1 A 2

3.2. KLASSZIKUS FELÜLETILLESZTÉS PROBLÉMÁI Klasszikus illesztés Felületek sima csatlakozása felírható lineáris összefüggésként Ez nem jó ha trimmelt felületeket használunk Belső kényszerek felírása nehéz Kényszeres illesztés Kell egy jó kiindulóállapot (elsődleges illesztés) Paraméterek vektora: a felületek kontrollpontjai x = S i Q i n,m Iteratív megoldás

3.2. FELÜLETEK SIMA KAPCSOLÓDÁSA Feladat: két felület S 1 (u,v) és S 2 (u,v) simán kapcsolódik egy belső ismeretlen görbe mentén Ötlet: csak diszkrét pontokban oldjuk meg Ötlet: használjunk egy vezér-görbét mint segédobjektum Megoldás: Segédobjektumok: g(t) vezérgörbe, P k pontok, V k vektorok, t k (fixált) számok, (u k,v k ) paraméterpontok x = S i Q i n,m g {Q l }, {t k}, {u i k,vi k }, {(P k,v k )}

3.2. FELÜLETEK SIMA KAPCSOLÓDÁSA x = S i Q i n,m g {Q l }, {t k}, {u i k,vi k }, {(P k,v k )} Kényszerek: Pontok a görbén: g(t k ) = P k Pontok a felületen: S 1 (u k 1,v k 1 )= P k és S 2 (u k 2,v k 2 )= P k Normálvektorok megegyeznek: S 1 n (u k 1,v k 1 )= V k és S 2 n (u k 2,v k 2 )= V k Megj.: itt is érdemes lehet inkább merőlegességi kényszert alkalmazni a kereszt-deriváltakkal, az utóbbi egyenletek helyett: V k =1 hs 1u (u 1 k,vk),v 1 k i =0, hs 1v (u 1 k,v 1 k),v k i =0, hs 2u (u 2 k,v 2 k),v k i =0, hs 2v (u 2 k,v 2 k),v k i =0.

3.2. FELÜLETEK PÉLDA, ELŐTT/UTÁN

3.2. FELÜLETEK PÉLDA

3.2. FELÜLETEK PÉLDA, ELŐTT/UTÁN

3.2. FELÜLETEK PÉLDA

3.2. FELÜLETEK PÉLDA

3.2. FELÜLETEK PÉLDA