Novinky

Návody-menu

Tipy a triky

Pluginy

- Aritmetic-info
- Aritm. - výrazy
- Aritm. - vzorce1
- Aritm. - vzorce2

Odkazy

Sklad materiálu

Návštěvní kniha

Forum

Aritm.plugin - proměnné a výrazy

 

Význam parametrů v aritmetickém modulu

I1, I2 .. Ix pořadové číslo obrázku. Pořadí se určuje podle toho, jak jsou obrázky seřazeny ve spodním okně (přesunout do požadovaného pořadí je můžete tahem doleva se stisknutým pravým tlačítkem)

Barvy: jsou určeny ve vzorci v decimálním tvaru #RRGGBB (podobně jako kód barvy v HTML). Barva se dá vložit kliknutím na barevné tlačítko

Celočíselné hodnoty - musí se povinně psát na klávesnici a musí být v rozmezí -2147483647 a +2147483647 (přesnost 32 bitů)

4 obvyklé operátory + - * / Jako u normálních matematických operací má i zde násobení a dělení přednost před sčítáním/odčítáním

Dělení nulou není považováno za chybu a jsou dosazena následující "nekonečná" čísla
Je-li N > 0: N/0 je +2147483647
Je-li N < 0: N/0 je -2147483647
Je-li N = 0: N/0 je 0

mocnina: ^ umožňuje získat čtverec, krychli

modulo: MOD umožňuje získat zbytek po dělení

6 srovnávacích operátorů : = < > < > < = > = Jsou obzvláště užitečné s funkcí IF Operátor vrací 255 (bílá), když je podmínka pravdivá a 0 (černá) když není.

Logické nebo binární funkce: and, or, xor, not Jsou zvlášť užitečné pro funkci If.

Závorky - fungují stejně jako v tradičních matematických vzorcích

Komentáře - začínají dvěma lomítky // na každém řádku

Jiné Funkce

Max(x1.., xn) Vezme maximum z argumentu pro každou barevnou komponentu RGB
Např: Max(#FF0000, #00FF00, #0000FF) dává # FFFFFF

Min(x1...,yn) Vezme minimum z argumentů pro každou z komponent RGB.
Např: Min(#00FFFF, #FF00FF, #FFFF00) dá #000000

MaxLum(x1...,yn) Dává nejjasnější barvu
např: MaxLum(#FF0000, #80FF00) dá #80FF00

MinLum(x1...,yn) Dává nejméně jasnou barvu
Např: MinLum(#FF0000, #80FF00) dá # FF0000 Avg(x1...,yn) < = > (x1+... +yn)/n

AvgRGB(x) vrací průměr ze 3 složek RGB, což umožní transformovat barevný obrázek na černobílý

Lum(x) vrací jas 3 komponent RGB podle vzorce 0.299R + 0.587G + 0.114B

RGB2HSL(x) konvertuje RGB na ekvivalent HSL

HSL2RGB(x) konvertuje HSL na ekvivalent RGB

RGB2YUV(x) konvertuje RGB na ekvivalent YUV

YUV2RGB(x) konvertuje YUV na ekvivalent RGB

R(x) odkaz na červenou barvu

G(x) zelená

B(x) modrá

Abs(x) Odkaz na absolutní hodnotu barvy při porovnání obrázků ??

Root(x[,N ]) n tá odmocnina z x (není-li n určeno, jedná se o druhou odmocninu) ??

If(<podmínka>, <pravda>, <nepravda >) tato funkce umožňuje dělat podmíněné testy na bodech obrázku
Např: If(I1>I2, #FF0000, #00FF00) dává červenou a zelenou z obrázku nebo červené body představují body z I1, které jsou jasnější než ty v I2 a nebo zelené body představují ty body z I1, které jsou méně (nebo stejně) jasné jako ty v I2.

X(x) Koordináty na X, umožňuje horizontální výřezy

Y(x) koordináty na Y umožňuje vertikální výřezy

W(x) šířka obrázku (užitečné pro inverzi horizontálního výřezu) ??

H(x) výška obrázku e (užitečné pro inverzi vertikálního výřezu)

Stretch(x, y) změna rozměrů obrázku X na rozměry obrázku Y (např stretch (I1,I2) způsobí, že z obrázku I1 se vyrobí nový obrázek ořezaný na rozměry obrázku I2). Taky se dá napsat stretch(Ix, šířka, výška)

BStretch(x, y) identické s stretch ale s bilineárním filtrováním ??.

Tile(x, y) obrázek x se "vydláždí" na rozměry obrázku y.

Scroll(x, dx, Dy) Umožní posunout obrázek o určitý počet pixelů Co zmizí na jedné straně, objeví se na druhé
-dx je horizontální posun (záporný je doleva, kladný doprava)
-Dy je vertikální posun (záporný nahoru, kladný dolů)
Ten posun nemusí být nutně stejný pro všechny body nebo komponenty obrázku
Např: Scroll(I1, W(I1)/2, H(I1)/2) Posune obrázek tak, že ho rozdělí na 4 kusy a přeskládá na rohy 4 rohy
Např: Scroll(I1,Y(I1),0) progresivní posun řady, první není posunuta, poslední nejvyšší je posunuta o obrázek - 1)
Např: Scroll(I1, -x(i1), -y(i1)): Velikost obrázku se podělí dvěma a pak se vyplní, jako by to byl vzor

AlphaBlend(x vzor, y, mask, max) AlphaBlending používá obrázek X a obrázek Y a masku a specifikované maximum pro invertování masky.
Např: AlphaBlend(I1, I2, X(I1), W(I1)) dělá umělecké prolínání obrázků I1 a I2

Proměnné

proměnné umožňují rozdělit komplexní výrazy na několik částí. To také umožňuje vyhnout se otravnému opakovanému zápisu nějaké operace a zrychluje to výpočet. Proměnné musí začínat písmenem nebo _ . Pak mohou být použita i čísla.

Deklarace proměnné: < Název proměnné>:<Výraz >;
Použití proměnné: < Název proměnné >

Různé informace

Všechny operace s obrázky se provádějí v režimu 32 bitů pro každou složku RGB. Operace jsou aplikovány individuálně na každou z 3 komponent. Celé číslo je považováno za barvu nebo jsou všechny komponenty identické (úroveň šedi)
Např: celé číslo 10 je ekvivalent barvy # 0A0A0A.

Když se operace vztahuje ke 2 obrázkům různé velikosti, jsou rozměry obrázků upraveny na největší velikost

Když je detekována chyba ve výrazu, indikuje chybová zpráva tu část výrazu, která je špatně (nebo je tam neočekávaný řetězec) a je nabídnut seznam možností. Na špatnou část se umístí kurzor

Mezery, tabulátory a konce řádků lze použít na oddělení prvků výrazu (např I1 + I2)