Skládání barev

Následující interaktivní notebook umožňuje názorně pochopit skládání barev v barevných modelech RGB a CMY. Jednotlivé barvy obou modelů lze nastavit pomocí posuvníků. Se změnou polohy jednoho z posuvníků ve vybraném barevném modelu se bude měnit automaticky i poloha odpovídajícího posuvníku ve druhém barevném modelu. Výslednou barvou je pak vykreslen obdélník.

Tlačítkem Ulož obrázek se uloží právě zobrazené "bílé" okno do aktuální složky (složka, v níž je uložen tento notebook) pod jménem, které je uloženo v proměnné jmenosouboru. K tomuto jménu souboru je při opakovaném ukládání grafu přidáváno pořadové číslo.
Pozor! Při každém spuštění tohoto apletu se začínají soubory číslovat opět od jedné! Tak mohou být přepsány dříve uložené obrázky.

© Jaroslav Reichl, 2011

Příprava pro vykreslení grafu

ClearAll["Global`*"];
jmenosouboru="konstrukce_sinus_.jpg";
cesta=NotebookDirectory[];
pocetulozeni=0;

x1=-10;x2=-x1;
y1=-5;y2=-y1;

barva0=0;barvamin=0;barvamax=255;deltabarva=1;

tloustka=0.009;
velikostbodu=0.02;

barvaokraje=Black;
barvaR=Red;
barvaG=Green;
barvaB=Blue;
barvaC=Cyan;
barvaM=Magenta;
barvaY=Yellow;

obdelnik=Rectangle[{0.9x1,0.9y1},{0.9x2,0.9y2}];
obdelnikokraj=Line[{{0.9x1,0.9y1},{0.9x1,0.9y2},{0.9x2,0.9y2},{0.9x2,0.9y1},{0.9x1,0.9y1}}];

minulaR=barva0;
minulaG=barva0;
minulaB=barva0;
minulaC=barvamax;
minulaM=barvamax;
minulaY=barvamax;

SkladaniBarev=Manipulate[Deploy[
If[minulaR≠R,
{C1=barvamax-R,
minulaR=R},
""];
If[minulaG≠G,
{M=barvamax-G,
minulaG=G},
""];
If[minulaB≠B,
{Y=barvamax-B,
minulaB=B},
""];
If[minulaC≠C1,
{R=barvamax-C1,
minulaC=C1},
""];
If[minulaM≠M,
{G=barvamax-M,
minulaM=M},
""];
If[minulaY≠Y,
{B=barvamax-Y,
minulaY=Y},
""];

barva=RGBColor[(R/barvamax),(G/barvamax),(B/barvamax)];
grafik=Show[
Graphics[{
{barva,obdelnik},
{barvaokraje,Thickness[tloustka],obdelnikokraj}
}],
FormatType->StandardForm,AspectRatio->Automatic,PlotRange->{{x1,x2},{y1,y2}},ImageSize->500
]],

{{R,barva0,Style["R",15,barvaR]},barvamin,barvamax,deltabarva,Appearance->"Labeled"},
{{G,barva0,Style["G",15,barvaG]},barvamin,barvamax,deltabarva,Appearance->"Labeled"},
{{B,barva0,Style["B",15,barvaB]},barvamin,barvamax,deltabarva,Appearance->"Labeled"},
Delimiter,
{{C1,barvamax,Style["C",15,barvaC]},barvamin,barvamax,deltabarva,Appearance->"Labeled"},
{{M,barvamax,Style["M",15,barvaM]},barvamin,barvamax,deltabarva,Appearance->"Labeled"},
{{Y,barvamax,Style["Y",15,Darker[barvaY]]},barvamin,barvamax,deltabarva,Appearance->"Labeled"},
Delimiter,
Button[" Ulož obrázek ",{pocetulozeni=pocetulozeni+1,Export[StringInsert[StringJoin[cesta,jmenosouboru],ToString[pocetulozeni],-5],grafik]},ImageSize->{100,Automatic}],
ControlPlacement->Left,
FrameLabel->{Style["© Jaroslav Reichl, 2011",10,Black,FontFamily->Times],"",Style["Skládání barev",25,Black,FontFamily->Times],""}];

Spuštění animace
Zpracujte běžným způsobem následující buňku a na dotaz, který se objeví, odpovězte ANO.

SkladaniBarev