Programátorská dokumentace

Podobné dokumenty
Světlo. Podstata světla. Elektromagnetické záření Korpuskulární charakter. Rychlost světla. Vlnová délka. Vlnění, foton. c = ,8 km/h

Návod k použití softwaru Solar Viewer 3D

Aplikované úlohy Solid Edge. SPŠSE a VOŠ Liberec. Ing. Jan Boháček [ÚLOHA 27 NÁSTROJE KRESLENÍ]

Grafické systémy. Obrázek 1. Znázornění elektromagnetického spektra.

Manuál k programu IDP 1.0

Barevné systémy a jejich aplikace

13 Barvy a úpravy rastrového

Práce na počítači. Bc. Veronika Tomsová

Color Management System

Grafická data jsou u 2D vektorové grafiky uložena ve voxelech NEPRAVDA Grafická data jsou u rastrové grafiky uložena v pixelech PRAVDA Grafická data

Přednáška kurzu MPOV. Barevné modely

Rozšíření bakalářské práce

Projekt Obrázek strana 135

2) Přednáška trvala 80 minut a skončila v 17:35. Jirka na ni přišel v 16:20. Kolik úvodních minut přednášky Jirka

Multimediální systémy. 02 Reprezentace barev v počítači

VOLBA BAREVNÝCH SEPARACÍ

Copyright 2013 Martin Kaňka;

Průvodce kvalitou barev

Montážní program XMF

Příklad 1. Verze: 1.1 Licence: shareware

Algoritmizace prostorových úloh

PROGRAM RP56 Odvodnění pláně Příručka uživatele Základní verze 2014

Teorie barev. 1. Barvený model. 2. Gamut. 3. Barevný prostor. Barevný prostor různých zařízení

Barvy v počítačové grafice

ZÁKLADNÍ TERMINOLOGIE V COLOR MANAGEMENTU

Správa barev. Složky správy barev. Správa barev. Vytvořila: Jana Zavadilová Vytvořila dne: 3. prosince

Co je počítačová grafika

Výukový materiál v rámci projektu OPVK 1.5 Peníze středním školám

On-line škola mladých autorů , pořadatel: ČVUT FEL. Jak na obrázky? Martin Žáček

Počítačová grafika - úvod

Digitální učební materiály ve škole, registrační číslo projektu CZ.1.07/1.5.00/

Počítačová grafika SZŠ A VOŠZ MERHAUTOVA 15, BRNO

RoadPAC 2016 BETA. 1. Nový formát protokolů.

Návod k ovládání aplikace

Nový způsob práce s průběžnou klasifikací lze nastavit pouze tehdy, je-li průběžná klasifikace v evidenčním pololetí a školním roce prázdná.

Popis programu 3D_VIZ

Text úlohy. Která barva nepatří do základních barev prostoru RGB? Vyberte jednu z nabízených možností: a. Černá b. Červená c. Modrá d.

Webové stránky. 16. Obrázky na webových stránkách, optimalizace GIF. Datum vytvoření: str ánk y. Vytvořil: Petr Lerch.

Úloha 1. Text úlohy. Vyberte jednu z nabízených možností: NEPRAVDA. PRAVDA Úloha 2. Text úlohy

Barvy a barevné modely. Počítačová grafika

Práce s texty, Transformace rastru, Připojení GPS

Funkce 1) Zakreslete body K, L a M do souřadného systému Oxy, jsou-li dány jejich souřadnice: K[-3;0]; L[0;-2]; M[4;3].

Zobrazování barev Josef Pelikán CGG MFF UK Praha.

Mgr. Tomáš Kotler. I. Cvičný test 2 II. Autorské řešení 6 III. Klíč 15 IV. Záznamový list 17

PDF Creator. Instalace tiskárny pro převod dokumentů do PDF

Obsah Přehled existujících a evidence nových klientů... 3 Přehled foto-záznamů... 4 Nahrávání foto-záznamů... 6 Analýza foto-záznamů...

9. přednáška z předmětu GIS1 Digitální model reliéfu a odvozené povrchy. Vyučující: Ing. Jan Pacina, Ph.D.

Zadejte ručně název první kapitoly. Manuál. Rozhraní pro program ETABS

PJC Cvičení #2. Číselné soustavy a binární reprezentace proměnných

Popis ovládání. Po přihlášení do aplikace se objeví navigátor. Navigátor je stromově seřazen a slouží pro přístup ke všem oknům celé aplikace.

TDS-TECHNIK TDS-Výpočty. TDS-Kusovník

Ludolfovo číslo přepočítá z diskrétního do Euklidova prostoru - 1

Téma: Vektorová grafika. Určete pravdivost následujícího tvrzení: "Grafická data jsou u 2D vektorové grafiky uložena ve voxelech."

SkiJo podpora pro vytyčování, řez terénem a kreslení situací

pro začátečníky pro pokročilé na místě (dle požadavků zákazníka)

Všechny informace v tomto dokumentu se mohou změnit bez předchozího upozornění. Tato příručka ani žádná její část nesmí být bez předchozího písemného

SEMESTRÁLNÍ PRÁCE Z PŘEDMĚTU MODELOVÁNÍ MATLABEM

Herní klávesnice-návod k použití

Barevné systémy Josef Pelikán CGG MFF UK Praha

2D transformací. červen Odvození transformačního klíče vybraných 2D transformací Metody vyrovnání... 2

CVIČNÝ TEST 36. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 15 IV. Záznamový list 17

1. výpočet reakcí R x, R az a R bz - dle kapitoly 3, q = q cosα (5.1) kolmých (P ). iz = P iz sinα (5.2) iz = P iz cosα (5.3) ix = P ix cosα (5.

Fergusnova kubika, která je definována pomocí bodu P1, vektoru P1P2, bodu P3 a vektoru P3P4

Barvy. Radek Fiala. Podpořeno z projektu FRVŠ 584/2011

Barvy a barevné systémy. Ivo Peterka

Grafika na počítači. Bc. Veronika Tomsová

Úterý 8. ledna. Cabri program na rýsování. Základní rozmístění sad nástrojů na panelu nástrojů

Gamut. - souřadný systém, ve kterém udáváme barvy (CIE, CMYK,RGB )

Přechod z AutoCADu na CADKON+

Namáhání ostění kolektoru

MRBT M8. VIDITELNOST OBJEKTŮ VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ. Bc. MARTIN MAŠTERA

Zobrazování těles. problematika geometrického modelování. základní typy modelů. datové reprezentace modelů základní metody geometrického modelování

Počítačová grafika RHINOCEROS

CVIČNÝ TEST 51. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 15 IV. Záznamový list 17

Chování mapování při exportu kót aplikace Revit do kót aplikace AutoCAD

Adobe Photoshop 18. Ukládání dokumentu formáty

Obsah. Úvod 9 Co v knize najdete 9 Komu je kniha určena 9 Konvence užité v knize 9 Vzkaz čtenářům 10 Typografické konvence použité v knize 11

Rasterizace je proces při kterém se vektorově definovaná grafika konvertuje na. x 2 x 1

Omyly, mýty a skutečnost

CVIČNÝ TEST 15. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 15 IV. Záznamový list 17

Vektorové grafické formáty

SCIA.ESA PT. Galerie obrázků

Tisk výkresu. Projekt SIPVZ 2006 Řešené příklady AutoCADu Autor: ing. Laďka Krejčí

C. 3. Vytvoření metodiky práce s implementovaným IS včetně jeho naplnění daty relevantních procesů a způsobů jejich vyhodnocování

CVIČNÝ TEST 24. OBSAH I. Cvičný test 2. Mgr. Kateřina Nováková. II. Autorské řešení 6 III. Klíč 13 IV. Záznamový list 15

CVIČNÝ TEST 40. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 13 IV. Záznamový list 15

Vypracoval: Jiří Němeček, produktový manažer KOPOS KOLÍN a.s. Havlíčkova 432 CZ Kolín a IV. Konfigurátor KNS

Mgr. Tomáš Kotler. I. Cvičný test 2 II. Autorské řešení 7 III. Klíč 15 IV. Záznamový list 17

Iterační výpočty. Dokumentace k projektu č. 2 do IZP. 24. listopadu 2004

Barva a barevné modely

BARVY. Příkaz barva. Barvy TrueColor. Se objeví dialogové okno

Digitální fotografie. Mgr. Milana Soukupová Gymnázium Česká Třebová


Rekurzivní sledování paprsku

Mgr. Markéta Trnečková, Ph.D. Palacký University, Olomouc

Výpočet finančního zdraví. Uživatelský manuál. ecba s.r.o., 2009, verze

( B A) ( ) Počítání s vektory. Předpoklady: 7204, 7205

Téma: Základní úpravy obrázku v Corel Photo Paintu

Výpočet finančního zdraví. Uživatelský manuál. ecba s.r.o., 2008, verze

AXONOMETRIE. Rozměry ve směru os (souřadnice bodů) jsou násobkem příslušné jednotky.

Transkript:

Programátorská dokumentace Požadavky Cílem tohoto programu bylo představit barevné systémy, zejména převody mezi nejpoužívanějšími z nich. Zároveň bylo úkolem naprogramovat jejich demonstraci. Pro realizaci programu byly na výběr jazyky C++ a C#. Program měl být realizován pod operačním systémem Windows. Stavba programu Program je rozdělen do 26 tříd, z nichž většina realizuje samotné převody mezi systémy. Jejich obsahem jsou tedy pouze převodní rovnice, které počítají se vstupními hodnotami, jež jsou zadány uživatelem. Další třídy vytvářejí okno programu, vykreslují obrázky, které slouží pro demonstraci jednotlivých barevných systémů nebo například ošetřují vstupní hodnoty. Tyto třídy jsou popsány v následujících kapitolách. Gamut.cs Tato třída vytváří okno, které se otevře stisknutím tlačítka Gamuty v hlavním okně. Jejím úkolem je vytvořit okno a vykreslovat jednotlivé gamuty podle volby uživatele a přepínat zobrazení mezi CIE XYZ a CIELAB. Tato třída má několik metod, které vykreslují jednotlivé gamuty a diagramy. V následujících bodech jsou popsány nejdůležitější metody této třídy. body Tato metoda je využívána pouze při vykreslování nového chromatického diagramu. Metoda prochází plátno pixel po pixelu a zjišťuje zavoláním metody jevpolygonu(), zda je pixel obsažen v polygonu, který představuje chromatický diagram. Pokud ano, jsou pomocí převodní třídy hodnoty x,y,z převedeny do RGB a poté jsou hodnoty převedeny do Hexadecimálního tvaru. Nakonec je pixel pomocí této hodnoty vykreslen. Tato metoda je nutná pro přibližné vykreslení barev chromatického diagramu. lab V této metodě je dán čtverec, jehož x a y hodnoty představují a a b hodnoty ze systému CIELAB. Hodnota L je pevně dána. Každý pixel čtverce je ze systému CIELAB převeden do RGB, poté do hexadecimálního tvaru a nakonec je pixel vykreslen příslušnou barvou. Tato metoda je nutná pro přibližné vykreslení barev CIELAB diagramu pro danou hodnotu L. 1

rgb Metoda RGB vykresluje gamut srgb podle zaškrtnutého aktuálního diagramu. Pokud je zaškrtnut chromatický diagram, jsou primární barvy RGB převedeny do CIE XYZ a podle příslušných rovnic jsou vypočítány hodnoty x a y. Pokud je zaškrtnut CIELAB jsou hodnoty RGB převedeny do systému CIELAB a podle výsledného a a b jsou zakresleny na plátno. Pro tento diagram je potřeba ještě dopočítat doplňkové barvy, neboť pro CIE XYZ vychází všechny RGB profily jako trojúhelníky, zatímco kvůli jinému principu CIELAB je potřeba dopočítat i doplňkové barvy. Na stejném principu fungují i metody ntsc(), která je dostupná pouze pro CIE XYZ, photo() a adobe(). hexagon Tato metoda počítá hodnoty x a y pro šest barev na obecné úrovni. Tuto metodu využívají metody, které vykreslují gamuty CMYK profilů v rámci chromatického diagramu. Tato metoda počítá umístění červené, zelené, modré, azurové, purpurové a žluté barvy. Zároveň počítá i se zvětšením a posunem celého diagramu. Tato metoda byla vytvořena z důvodu úspory kódu. Přestože má mnoho parametrů, které jsou potřeba pro výpočet všech šesti barev, usnadní práci s případným přidáním dalších profilů. main Main je potřeba při výpočtu nového chromatického diagramu. Tato metoda otevře soubor s hodnotami x a y, které jsou seřazeny podle vzrůstající vlnové délky, uloží je do pole jako body a nakonec vykreslí polygon. Tato metoda se nepoužívá, pakliže je kvůli zrychlení programu pouze načítán obrázek diagramu. jevpolygonu Tato metoda je převzatá a za pomoci několika výpočtů zjišťuje, zda je zadaný bod uvnitř polygonu. Tato metoda je využívána při tvorbě nového chromatického diagramu, kdy je kvůli tvaru polygonu potřeba pomocí speciálních výpočtů zjistit umístění jednotlivých pixelů. Při běžném spuštění programu není tato metoda využita, neboť pro rychlejší běh programu je načítán hotový obrázek. Prepinani.cs Tato třída obsluhuje comboboxy v hlavním okně. Jejím úkolem je určit číslo převodu podle vybraného výchozího a cílového systému. Celá třída pracuje s přepínačem, který funguje dle hodnoty indexu výchozího systému a podle indexu cílového systému, který byl vybrán, je určeno specifické číslo převodu. Toto číslo je zapotřebí při realizaci samotného 2

převodu, neboť se podle tohoto čísla vybírá příslušný výpočet. Tímto řešením je zároveň omezen výběr systémů na takové, mezi kterými jsou implementovány převody. Vstupy.cs Třída Vstupy.cs ošetřuje vstupní hodnoty zadané uživatelem. Tato třída, jejíž hlavní metodou je metoda kontrola, obsahuje rozsáhlou konstrukci podmínek, kterými je ošetřen správný počet zadaných vstupních hodnot, jejich formát a rozsah. Celou touto konstrukcí prochází proměnná spocti, která může nabývat hodnot 0 nebo 1. Pokud v nějaké podmínce tato proměnná nabude hodnotu 1, je to signál pro tuto třídu, že žádné další podmínky již není třeba procházet. Pokud dojde metoda na konec a hodnota spocti je stále 0, jsou vstupní data v pořádku a dojde k samotnému převodu. Hodnota této proměnné je na konci kontrolována ve třídě Vyber, kde jsou převody realizovány. Vyber.cs Vyber.cs je třída, která realizuje tvorbu hlavního okna, přepíná mezi jednotlivými převody a překresluje okno podle vybraného převodu. Jejími hlavními metodami jsou: zapamatuj Metoda zapamatuj má za úkol přenést hodnoty, pakliže je původní cílový systém shodný s novým výchozím systémem. Tato metoda hodnoty přenáší i v případě, že je původní výchozí barevný systém shodný s nově zvoleným výchozím systémem. Pracuje se s celými názvy barevných systémů. Nejprve se přečtou všechny popisky a přičtou se k sobě. Tím je v jednom Stringu celé jméno použitého systému. Toto proběhne jednou pro výchozí a jednou pro cílový systém. Následně jsou oba Stringy porovnány s novým výchozím systémem, podle hodnoty v comboboxu. Pokud se rovnají, jsou původní hodnoty z textových polí přepsány do pole a následně zapsány do textových polí výchozího systému. Pokud se nerovnají, je do pole uloženo slovo Neni, které je signálem, že se systémy nerovnaly, a tudíž nedojde k přepsání hodnot. Tato metoda byla vytvořena pro usnadnění ovládání při řetězení převodů mezi systémy. grafika Grafika způsobí nejdříve zviditelnění všech prvků, kvůli rozdílným počtům potřebných vstupních hodnot v každém systému. Následně určí viditelnost palety podle výchozího barevného systému. Poté vytvoří popisky podle vybraných systémů, ze třídy Prepinani a určí počet viditelných textových polí. Nakonec metoda zjistí, zda lze přenést hodnoty, nebo ne podle obsahu pole hodnoty. 3

spocitej Metoda spocitej pracuje s přepínačem, který přepíná mezi jednotlivými převody podle specifického čísla převodu. Tato metoda volá jednotlivé třídy s příslušnými převodními rovnicemi nebo sama realizuje převody, jsou-li jednoduché. Po převodu poté zadá barvu do výsledné palety, aby si ji uživatel mohl snadno uložit. Zobrazeni.cs Třída Zobrazeni.cs vykresluje obrázky, které představují jednotlivé barevné systémy, podle specifického čísla převodu. V okně, které tato třída obsluhuje, je pouze plátno s obrázky, které patří k aktuálně vybranému převodu. Okno se otevře stisknutím tlačítka Zobrazení, které se nachází v hlavním okně programu. Hlavní metody této třídy jsou popsány v následujících kapitolách. vykresli Tato metoda přepíná jednotlivé obrázky podle specifického čísla aktuálního převodu. Pokud je třeba, určují se zde i popisky os, popisky jednotlivých obrázků a určují se zde souřadnice, na kterých budou jednotlivé obrázky umístěny. Po realizaci všech funkcí dojde k aktualizaci plátna. yuv Yuv vykresluje 2D reprezentaci barevného systému YUV. Hodnota Y je předem stanovena a je určena hodnotou proměnné jedna. Poté dojde k vykreslení čtverce, kde má každý pixel souřadnice, které představují hodnoty u a v. YUV je pak převeden do RGB, následně do hexadecimálního tvaru a pixel je nakonec příslušnou barvou vykreslen. Tato reprezentace byla zvolena z důvodu přehledného zobrazení umístění barev a jednoduchosti implementace. XYZcube XYZcube je velmi používaná metoda, protože nejčastěji používané RGB je reprezentováno právě jako krychle. V této metodě jsou na předem daných souřadnicích vytvořeny dva čtverce, které jsou spojeny čtyřmi dalšími hranami, které jsou pod úhlem 45 a jejich délka je poloviční oproti ostatním hranám. Nakonec jsou vytvořeny osy krychle. RGBinXYZ Metoda, která v již vykreslené krychli, která představuje CIE XYZ, vykreslí RGB krychli. Všech osm vrcholů RGB krychle je postupně, dle jejich barvy, převedeno do CIE 4

XYZ a následně jsou tyto body, dle pravidel geometrie, převedeny do dvourozměrného prostoru. Tento obrázek představuje velmi rozdílné rozsahy barev, které RGB a CIE XYZ mají. rgbh Rgbh vykresluje projekci vrcholů RGB krychle na plochu. Celý obrázek je založen na různých poměrech jednotlivých hran, které jsou používány, proto jsou v tomto výpočtu pevně stanovená čísla. Proměnná je velikost dílku, která určuje konečnou velikost vykreslovaného obrázku. 5