Creați un editor de luminozitate în ActionScript 3

Luminozitatea este un atribut al percepției vizuale în care o sursă pare a fi strălucirea sau reflectarea luminii.

În acest tutorial vom învăța cum să modificăm luminozitatea unui obiect afișat folosind ActionScript 3.


Rezultatul final al rezultatelor

Să aruncăm o privire asupra rezultatului final pe care îl vom strădui:


Pasul 1: Prezentare succintă

Folosind clasa ColorTransform și o componentă Slider vom mări sau scădea luminozitatea DisplayObject.


Pasul 2: Începând

Deschideți Flash și creați un fișier Flash nou (ActionScript 3).

Setați dimensiunea scenei la 500x350px și setați rata cadrelor la 24fps.


Pasul 3: Alegeți un obiect afișat

Orice DisplayObject poate fi folosit cu această clasă; pentru acest exemplu, am selectat o imagine de pe Flickr:


Fotografie de Chi King.

Plasați imaginea în centrul scenei, convertiți-o în MovieClip și dați-i un nume de instanță imagine.


Pasul 4: Panoul de luminozitate

Vom crea un panou cu o componentă Slider și un câmp text dinamic ca obiecte interactive.

Selectați Instrumentul primitiv dreptunghi (R) și desenați un dreptunghi de 250x70px, setați raza de colț la 7 și modificați alfa la 60.

Conversia în MovieClip și adăugarea următorului filtru:

Panoul ar trebui să arate astfel:

Faceți dublu clic pe MovieClip pentru a intra în modul de editare și a crea un câmp text dinamic; setați numele de instanță la bValue (pentru "valoarea luminozității") și centrați-o. Dați-i o intrare inițială de 0. De asemenea, puteți adăuga un titlu la panou și câteva pictograme ca ghid.


Pasul 5: Componenta cursor

Deschideți panoul Componente (Cmd / Ctrl + F7) și trageți o componentă a cursorului în panoul Luminozitate; centralizați-o și denumiți-o cursor.


Pasul 6: Inspectorul de componente

Cu ajutorul componentei glisante selectate, apăsați Shift + F7 pentru a deschide panoul Component Inspector și a modifica opțiunile așa cum se arată în imagine:


Pasul 7: ActionScript

Creați un nou document ActionScript și salvați-l ca Main.as.

Vom folosi o clasă de documente pentru acest proiect. Dacă nu sunteți sigur cum să utilizați o clasă de documente, citiți această introducere rapidă.


Pasul 8: Pachetul

 pachet 

Cuvântul cheie pentru pachete vă permite să vă organizați codul în grupuri care pot fi importate de alte scripturi, este recomandat să le denumiți începând cu o literă mică și să utilizați intercaps pentru următoarele cuvinte, de exemplu: myClasses.

Dacă nu doriți să grupați fișierele într-un pachet sau dacă aveți doar o singură clasă, puteți să-l utilizați direct din folderul sursă.


Pasul 9: Clasele necesare

Câteva clase sunt necesare pentru ca aceasta să funcționeze. Pentru o descriere mai detaliată despre fiecare clasă, consultați Ajutorul Flash (F1).

 import flash.display.Sprite; import fl.events.SliderEvent; import flash.geom.ColorTransform;

Pasul 10: Extinderea clasei

extinde cuvântul cheie definește o clasă care este o subclasă a unei alte clase. Subclasa moștenește toate metodele, proprietățile și funcțiile, astfel încât le putem folosi în clasa noastră.

 clasa publică principală extinde Sprite 

Pasul 11: Variabile

Numai o variabilă este necesară în acest exemplu: o instanță ColorTransform. Aceasta va fi utilizată pentru a modifica valorile RGB ale obiectului de afișare țintă.

 var colorTransformare: ColorTransform = ColorTransform nou ();

Pasul 12: Funcția Constructor

Această funcție este executată atunci când este încărcată clasa.

Un ascultător SliderEvent este adăugat la Componenta Slider pentru a rula o funcție atunci când utilizatorul modifică valoarea cursorului.

 funcția publică (): void panel.slider.addEventListener (SliderEvent.CHANGE, updateBrightness); 

Pasul 13: Transformarea culorilor

Această funcție este executată când valoarea cursorului se modifică. Aceasta este partea ColorTransform. Decalajul roșu, verde și albastru al matricei de transformare a culorii este setat să se potrivească cu valoarea cursorului.

 funcția privată updateBrightness (e: SliderEvent): void / * Setați offseturile RGB la valoarea cursorului * / colorTransform.redOffset = e.value; colorTransform.greenOffset = e.value; colorTransform.blueOffset = e.value;

Vrei să știi ce facem aici? Consultați acest articol care explică transformările de culoare.


Pasul 14: Aplicați modificările

Această linie aplică modificările imaginii de pe scenă.

 image.transform.colorTransform = colorTransform;

Pasul 15: Valoarea textului

Textul din panoul de luminozitate este, de asemenea, actualizat.

 panel.bValue.text = e.value; 

Pasul 16: Clasa de documente

Reveniți la fișierul .fla și în panoul Proprietăți setați câmpul Clasă la Principal pentru a le conecta la clasa de documente.


Concluzie

Acum puteți implementa cu ușurință o modalitate de a modifica luminozitatea unei imagini sau a altui obiect afișat utilizând ActionScript 3.

Mulțumesc că ați citit!

Cod