problematika geometrického modelování manifold, Eulerova rovnost základní typy modelů hranový model stěnový model objemový model datové reprezentace modelů základní metody geometrického modelování
těleso množina bodů v trojrozměrném prostoru, splňujících určitá kritéria sjednocení dvou disjunktních množin množiny vnitřních bodů a množiny hraničních bodů vylučujeme tedy objekty úsečky a křivky v prostoru, části rovin a obecné plochy tyto objekty nemají vnitřní body ve smyslu tělesa, ale používáme je k popisu množiny hraničních bodů těleso je spojitý útvar s možnými,,otvory
modelování definování prostorových objektů za pomoci datových struktur a algoritmů pro vytváření a následnou manipulaci s 3D objekty proces tvarování a vytváření 3D modelů prostorový objekt může být reprezentován několika způsoby hraniční reprezentace těles (boundary representation) nejběžnější způsob reprezentace těles jde o popis hranice, tedy popis množiny hraničních bodů popis množiny vnitřních bodů se většinou neuchovává nebo ho lze odvodit z popisu hranice
Manifold v geometrickém modelování se většina algoritmů omezuje na tělesa typu manifold uvedená definice tělesa (objekt tvořený vnitřními a hraničními body) je vhodná pro modelování těles v CAD systémech z praktického hlediska je definice příliš široká dovoluje popsat i objekty, které nelze zrealizovat kvůli geometrické abstrakci,,bod nemá rozměr, přímka je nekonečně tenká nelze reálně vyrobit zavedení pojmu manifold pro takové modely těles, které odpovídají nějakému skutečnému tělesu
příklad nevyrobitelného tělesa nonmanifold zvýrazněná hrana tělesa z geometrického hlediska nekonečně tenká úsečka incidující se čtyřmi plochami (stěnami) ve skutečnosti v daném místě musí být hrany dvě -těleso buď propojeno nebo rozpojeno
z praktického hlediska za manifold budeme považovat takové těleso, jehož každá hrana inciduje právě se dvěma plochami a jehož hrany neprotínají jiné plochy obdobně - vrchol nesmí spojovat dvě části tělesa
Eulerova rovnost velké množství prakticky používaných těles mnohostěny stěny jsou mnohoúhelníky pro konvexní mnohostěny platí F + V = E+ 2 E -počet hran (edge) F -počet stěn (face) V -počet vrcholů (vertex) lze zobecnit na mnohostěny, které můžeme volně převést na kouli tj.,,tělesa bez děr tzv. jednoduché mnohostěny
F V E = 6 = 8 = 12 F + V = E+ 2 F V E = 5 = 5 = 8
hraniční reprezentace těles k popisu hranice tělesa se používají základní prostorové prvky body úsečky části rovinných ploch vrcholy, hrany, stěny lze využít také části křivek a části obecných ploch omezíme se jen na jednodušší prvky zakřivenou plochu lze nahradit sítí rovinných plošek
hraniční reprezentace těles oblá tělesa aproximujeme množinou plošek vlivem aproximace vznikly nové hrany mezi plochami nutné určit charakter hrany pomocné hrany spojnice mezi aproximující ploškami vykreslují se, pokud tvoří obrys ostré hrany skutečné hrany (původní) vykreslují se vždy v některých aplikacích se nepoužívá klasifikace hran na pomocné a ostré, ale typ hrany se určuje až při zobrazování
Typy modelů Hranový model nejstarší a nejjednodušší metoda popisu popsán pomocí vrcholů a hran tj. známe souřadnice vrcholů + které vrcholy jsou spojené hranou = drátový model tělesa (wire-frame model)
Typy modelů Hranový model datová reprezentace vytvoříme jeden seznam vrcholů a jeden seznam hran v seznamu vrcholů uloženy souřadnice seznam hran jedna položka má dva ukazatele do seznamu vrcholů, tj. hrana je určena indexy odpovídajících vrcholů (nebo jen seznam hran se souřadnicemi vrcholů) nevýhody obsaženo minimum topologických informací nutné značné množství dat k úplnému popisu tělesa např. obecně pro jednoznačné určení kvádru v prostoru stačí výška, šířka, hloubka a poloha, hranový model kvádru musí obsahovat souřadnice osmi vrcholů, musí být určeno dvanáct hran a ještě není model jednoznačný
Typy modelů Hranový model drátový model nelze jednoznačně interpretovat
Typy modelů Hranový model drátový model nelze jednoznačně interpretovat existují tělesa, která jsou různá, ale mají stejný hranový model
Typy modelů Stěnový model nejpoužívanější přirozené rozšíření předchozí datové struktury o plochy obecně mohou být plochy rovinné i nerovinné (analytické, interpolační, aproximační plochy) omezíme se pouze na rovinné (stěny), pracovat budeme s mnohostěny můžeme je uspořádat do sítě trojúhelníků nebo obecných polygonů oproti hranovému modelu - si navíc pamatujeme, které hrany určují stěnu datová reprezentace k seznamu vrcholů a hran přidáme seznam stěn seznam stěn každá stěna určena ukazateli na hrany v seznamu hran, které tuto stěnu ohraničují
Typy modelů Objemový model zahrnuje informace o části prostoru, kterou těleso zaujímá pracuje s objemem, ale neposkytujeme přímo povrch tělesa možný způsob popisu objemového modelu dekompoziční reprezentace model je určen seznamem objemových elementů (např. krychliček), které dané těleso vyplňují reprezentace např. octree
Bodová reprezentace zvláštní případ hraniční reprezentace je množina povrchových bodů získány většinou digitálním snímáním reálných objektů př. 3D skenování nebo mohou být výsledkem nějakého algoritmu každý bod dány souřadnice (normálový vektor) (barva) velmi vysoké paměťové nároky digitalizace soch, dokumentace památek
Základní metody geometrického modelování matematické modelování objekt je popsán matematickými vztahy např. kružnice v rovině se středem v počátku a poloměrem r je určena parametrickými rovnicemi tato metoda se používá především při modelování křivek a ploch šablonování model vytvořen pohybem křivky, plochy nebo tělesa po zvolené trajektorii nejčastěji se používá modelování translačních modelů (model vznikne translací šablony) a modelování rotačních modelů (model vznikne rotací šablony)
Základní metody geometrického modelování modelování pomocí deformací konstruktivní geometrie těles (CSG Constructive Solid Geometry) v CAD systémech reprezentace tělesa stromovou strukturou (CSG stromem) uchovává se historie dílčích konstrukčních kroků z jednoduchých geometrických objektů, tzv. CSG primitiv, je pomocí množinových operací (sjednocení, rozdíl a průnik) a prostorových transformací vytvořen výsledný objekt CSG primitiva kvádr, koule, válec, kužel, jehlan, toroid (lze použít i obecnější plochy poloprostor, NURBS plochy)
Základní metody geometrického modelování konstruktivní geometrie těles (CSG Constructive Solid Geometry) množinové operace mohou být prováděny jak s CSG primitivy tak i s celými CSG stromy CSG strom vnitřní uzly stromu obsahují operace v listech jsou zapsány údaje o CSG primitivech transformace mohou být chápány jako CSG operace nebo transformace jsou zadávány ke každému primitivu, tedy vnitřní uzly jsou pouze množinové operace
Základní metody geometrického modelování konstruktivní geometrie těles (CSG Constructive Solid Geometry) CSG strom primitiva již transformována
Základní metody geometrického modelování konstruktivní geometrie těles (CSG Constructive Solid Geometry) kořen CSG stromu
Určování viditelnosti tělesa pouze pro konvexní mnohostěny reprezentace pomocí stěnového modelu viditelnost stěn stěna je buď viditelná nebo ne viditelnost hrany hrana je vidět, pokud je vidět alespoň jedna ze stěn, která ji obsahuje určíme viditelnost stěn, poté rozhodneme o viditelnosti hran a těleso zobrazíme nejdříve je nutné správně orientovat normály jednotlivých stěn tělesa
Určování viditelnosti tělesa orientace normál chceme, aby normála stěny směřovala ven z tělesa uv, n = u v najdeme dvě hrany, které leží ve stěně a nejsou rovnoběžné vektory je-li bod A vrchol tělesa ležící v dané stěně, najdeme vrchol B, který ve stěně neleží nb ( A) = 0 > 0 < 0 bod B je ve stěně opakujeme vektory svírají vektory svírají < 90 n = n > 90 n = n
Určování viditelnosti tělesa středové promítání Je bod A vidět? S A n ( S A) n = > < 0 0 0 směr ve stěně stěna jakoby není vidět vektory svírají vektory svírají < 90 > 90 je vidět není vidět
Určování viditelnosti tělesa rovnoběžné promítání Je bod A vidět? u A n u n = > 0 0 směr ve stěně stěna jakoby není vidět vektory svírají < 90 je vidět < 0 vektory svírají > 90 není vidět