Poznámky ze 2. přednášky z UPG
This commit is contained in:
parent
3b9685362e
commit
740a4f3182
1 changed files with 108 additions and 0 deletions
108
KIV UPG/02. Pokročilá 2D vektorová grafika.md
Normal file
108
KIV UPG/02. Pokročilá 2D vektorová grafika.md
Normal file
|
@ -0,0 +1,108 @@
|
|||
# Pokročilá 2D vektorová grafika
|
||||
|
||||
## Afinní transformace
|
||||
|
||||
- umožňuje nastavit, jak chceme transformovat kreslený objekt
|
||||
- výsledná transformace se skládá z
|
||||
- posunutí (translace)
|
||||
- rotace okolo počátku souřadného systému
|
||||
- změna měřítka (scaling) na ose x či y
|
||||
- záleží na pořadí jednotlivých transformací
|
||||
|
||||
**Instancování**
|
||||
- model je definován na jednom místě
|
||||
- můžeme jej použít víckrát na různých místech pomocí transformace
|
||||
|
||||
## Modelování objektů
|
||||
|
||||
- objekt nevzniká postupným vykreslováním primitiv, ale je definovaný předem
|
||||
- popis objektu je uložen v paměti
|
||||
- objekt modelován složením primitiv
|
||||
|
||||
**Cesta**
|
||||
- trajektorie pera opisující obrys objektu
|
||||
- může být **otevřená** nebo **uzavřená**
|
||||
- zahájení cesty, přidání primitiv do cesty, ukončení cesty
|
||||
- cesta může být definována po částech (primitivem může být jiná cesta)
|
||||
+ složená z elementárních primitiv
|
||||
+ podporovaná primitiva
|
||||
+ bod, úsečka, obdélník, oblouk, parametrické křivky, ...
|
||||
|
||||
**Region**
|
||||
- obrysem regionu je uzavřená cesta
|
||||
- region - uvažujeme vnitřek, nezajímá nás obryz
|
||||
- uzavřená cesta - neuvažujeme vnitřek
|
||||
+ obvyklé booleovské operace
|
||||
+ sloučení (union), průnik (intersection), rozdíl (subtraction), doplňek (XOR)
|
||||
- podporovaná primitiva
|
||||
- obdélník, elipsa a kruh, polorovina, ...
|
||||
+ používány pro ořezávání (clipping) a constructive area geometry (CAG)
|
||||
|
||||
**Ořezávání** (clipping)
|
||||
- odstraní veškerou grafiku mimo ořezovou oblast (= region)
|
||||
- zjednodušuje vykreslování složitějších tvarů
|
||||
- může být výpočetně náročnější
|
||||
|
||||
## Formáty vektorové grafiky
|
||||
|
||||
- vektorovou grafiku lze obvykle uložit na disk nebo nahrát ze souboru
|
||||
|
||||
**Binární formáty**
|
||||
- Windows Metafile (WMF), Enhanced Metafile (EMF), EMF+
|
||||
- Portable Document Format (PDF)
|
||||
- OpenDocument Graphics (ODG)
|
||||
- Adobe Illustrator Artwork (AI)
|
||||
- Encapsulated PostScript (EPS)
|
||||
- CorelDraw (CDR)
|
||||
|
||||
**Textové formáty**
|
||||
- Encapsulated PostScript (EPS)
|
||||
- Extensible Application Markup Language (XAML)
|
||||
- Scalable Vector Graphics (SVG)
|
||||
|
||||
Formáty je možné konvertovat, ale může to vést ke ztrátě informace.
|
||||
|
||||
**Ukládání vektorové grafiky**
|
||||
- vytvoření grafického kontextu pro vektorový formát
|
||||
- kreslení na grafický kontext
|
||||
- uvolnění grafického kontextu a uzavření souboru
|
||||
+ pro textové soubory se často používá vlastní zápis do souboru dle specifikace
|
||||
|
||||
**Načtení vektorové grafiky**
|
||||
- různé v různých knihovnách
|
||||
- u EMF vykonání grafických příkazů ze souboru
|
||||
- u SVG přes speciální komponentu pro zobrazení na obrazovce (převede SVG na rastr)
|
||||
|
||||
**SVG formát**
|
||||
- určeno na web (HTML5), postaveno na XML
|
||||
- relativně hodně rozšířené
|
||||
- možnost animované grafiky
|
||||
|
||||
**XAML formát**
|
||||
- určeno pro .NET desktopové aplikace
|
||||
- vytvořeno Microsoftem, postaveno nad XML
|
||||
- relativně hodně rozšířené
|
||||
- možnost animované grafiky
|
||||
- součástí mohou být i jiné prvky než grafika
|
||||
- UI, napojení na databáze, data binding, ...
|
||||
|
||||
## Zobrazení na tiskárně
|
||||
|
||||
- papír nelze interaktivně posouvat
|
||||
- musí se zobrazit celá kresba
|
||||
+ je potřeba brát v potaz fyzickou velikost papíru (formát)
|
||||
- Evropa
|
||||
- **ISO 216 A, B, C**
|
||||
- Nejběžnější **A4**
|
||||
- 210 x 297 mm
|
||||
- USA
|
||||
- Nejběžnější **ANSI A** (Letter)
|
||||
- 8.5 x 11 palců
|
||||
- 216 x 297 mm
|
||||
- většinou není možné kreslit na kraje papíru
|
||||
- minimálně 3 mm bílý okraj
|
||||
- papír se může sešívat
|
||||
+ knihovny většinou podporují
|
||||
+ dialog pro výběr tiskárny, formátu papíru, orientace, kvality, ...
|
||||
+ vrací vytvořený grafický kontext
|
||||
+ metody pro zahájení a dokončení tisku dokumentu nebo jedné strany
|
Loading…
Reference in a new issue