This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
ro:colorexpressions [2017/08/28 15:47] junior-root |
ro:colorexpressions [2020/02/28 10:46] (current) |
||
---|---|---|---|
Line 25: | Line 25: | ||
color -65536, -16711936 | color -65536, -16711936 | ||
</ | </ | ||
- | Mai jos este lista culorilor predefinite. Pentru fiecare culoare sunt trecute și câteva informații suplimentare | + | Mai jos este lista culorilor predefinite. Pentru fiecare culoare sunt trecute și câteva informații suplimentare, inclusiv valoarea numerică a culorii: |
{{page> | {{page> | ||
Line 32: | Line 32: | ||
==== 2) Culoare exprimată cu ajutorul funcției RGB ==== | ==== 2) Culoare exprimată cu ajutorul funcției RGB ==== | ||
- | Utilizatorul are posibilitatea să-și creeze milioane de culori diferite prin utilizarea funcției [[rgb|RGB]]. Acesta întoarce un [[integerexpressions|număr_întreg]] ce reprezintă culoarea creată. | + | Utilizatorul are posibilitatea să-și creeze milioane de culori diferite prin utilizarea funcției [[rgb|RGB]]. |
- | La începutul acestei pagini | + | La începutul acestei pagini |
El este compus în realitate din 4 octeți (un octet poate avea o valoare între 0 - 255), fiecare octet conținând informații despre unul dintre cele 4 canale: **R**ed (roșu), **G**reen (verde), **B**lue (albastru) și **A**lpha (opacitate, transparență).\\ | El este compus în realitate din 4 octeți (un octet poate avea o valoare între 0 - 255), fiecare octet conținând informații despre unul dintre cele 4 canale: **R**ed (roșu), **G**reen (verde), **B**lue (albastru) și **A**lpha (opacitate, transparență).\\ | ||
Prin combinarea canalelor **RGB** (roșu, verde, albastru) se pot obține un număr de 16.777.216 de culori diferite! Fiecare culoare poate fi afișată apoi cu diverse grade de opacitate, date de canalul **A**lpha: 0 - 255, unde 255 înseamnă opacitate maximă, iar 0 înseamnă transparență totală. | Prin combinarea canalelor **RGB** (roșu, verde, albastru) se pot obține un număr de 16.777.216 de culori diferite! Fiecare culoare poate fi afișată apoi cu diverse grade de opacitate, date de canalul **A**lpha: 0 - 255, unde 255 înseamnă opacitate maximă, iar 0 înseamnă transparență totală. | ||
- | Funcția [[rgb|RGB]] compune o culoare din valorile furnizate pentru **R**ed (roșu), **G**reen (verde), **B**lue (albastru), fiecare componentă având valori cuprinse între 0 și 255. Exemplul de mai jos creează culoarea oranj și desenează un cerc cu ea. | + | |
+ | Formatul funcției [[rgb|RGB]] este:\\ | ||
+ | **RGB(r, g, b)**, în acest caz canalul **A**lpha este implicit 255 (opacitate totală)\\ | ||
+ | **RGB(r, g, b, a)**, în acest caz canalul **A**lpha este declarat ultimul, chiar dacă valoare lui este cuprinsă în primul octet din valoarea ARGB\\ | ||
+ | |||
+ | Funcția [[rgb|RGB]] compune o culoare | ||
< | < | ||
clg | clg | ||
Line 56: | Line 61: | ||
Pentru a exemplifica cele menționate este bine de revăzut tabelul ce conține informații despre culorile deja predefinite. | Pentru a exemplifica cele menționate este bine de revăzut tabelul ce conține informații despre culorile deja predefinite. | ||
- | Acum se poate observa în dreptul fiecărei constante valorile canalelor ARGB (A este mereu 255 pentru că toate sunt culori opace, nu transparente), | + | Acum se poate observa în dreptul fiecărei constante valorile canalelor |
{{page> | {{page> | ||
- | |||
- | |||
- | |||
---- | ---- | ||
Line 67: | Line 69: | ||
==== 3) Culoare exprimată printr-un număr ==== | ==== 3) Culoare exprimată printr-un număr ==== | ||
Am văzut că o culoare este un [[integerexpressions|număr_întreg]].\\ | Am văzut că o culoare este un [[integerexpressions|număr_întreg]].\\ | ||
- | Constantele | + | Numele culorilor (constante) |
Cu alte cuvinte, oricare din formele de mai jos va avea același efect, valoarea culorii fiind aceeași (pentru a demonstra acest lucru, înlocuiește instrucțiunea **Color** cu **Print**). | Cu alte cuvinte, oricare din formele de mai jos va avea același efect, valoarea culorii fiind aceeași (pentru a demonstra acest lucru, înlocuiește instrucțiunea **Color** cu **Print**). | ||
< | < | ||
Line 78: | Line 80: | ||
color rgb(0xb0, 0x3d, 0x00) # | color rgb(0xb0, 0x3d, 0x00) # | ||
</ | </ | ||
+ | |||
+ | ---- | ||
==== Exemplu ==== | ==== Exemplu ==== | ||
+ | Rulează codul de mai jos. Trage cu mouse-ul de manetele R, G, B și A sau dă clic pe constantele din dreapta și urmărește codul generat. | ||
+ | |||
+ | {{ro: | ||
+ | |||
< | < | ||
# Program util pentru a învăța cum se alcătuiesc culorile | # Program util pentru a învăța cum se alcătuiesc culorile | ||
Line 171: | Line 179: | ||
color clear, culoarea_curenta | color clear, culoarea_curenta | ||
rect 225, 45, 150, 150 | rect 225, 45, 150, 150 | ||
- | txt = "" | + | txt = "#liniile de mai jos generază aceeași culoare:";chr(10) |
color 0xfff0f0f0 | color 0xfff0f0f0 | ||
rect 430, 10, 16, 381 | rect 430, 10, 16, 381 | ||
Line 177: | Line 185: | ||
for f = 0 to 18 | for f = 0 to 18 | ||
if culoarea_curenta = culori_valori[f] then | if culoarea_curenta = culori_valori[f] then | ||
- | txt = "color "; | + | txt = txt;"color "; |
color black, darkgray | color black, darkgray | ||
poly {430, f*20+10, 445, f*20+20, 430, f*20+30} | poly {430, f*20+10, 445, f*20+20, 430, f*20+30} |