Turinys:

Įdomios programavimo gairės dizaineriui-paleisti vaizdą (antroji dalis): 8 žingsniai
Įdomios programavimo gairės dizaineriui-paleisti vaizdą (antroji dalis): 8 žingsniai

Video: Įdomios programavimo gairės dizaineriui-paleisti vaizdą (antroji dalis): 8 žingsniai

Video: Įdomios programavimo gairės dizaineriui-paleisti vaizdą (antroji dalis): 8 žingsniai
Video: Elektroninių laiškų šifravimas: praktinis „OpenPGP“ taikymas 2024, Rugsėjis
Anonim
Įdomios programavimo gairės dizaineriui-paleiskite savo vaizdą (antroji dalis)
Įdomios programavimo gairės dizaineriui-paleiskite savo vaizdą (antroji dalis)

Matematika daugeliui iš jūsų atrodo nenaudinga. Mūsų kasdieniame gyvenime dažniausiai naudojamas tiesiog sudėti, atimti, padauginti ir padalyti. Tačiau visai kas kita, jei galite kurti naudodami programą. Kuo daugiau žinosite, tuo nuostabesnį rezultatą gausite.

1 žingsnis: judėjimas ir funkcija

Leiskite parodyti keletą nežinomų nuotraukų, kad paskatintumėte jūsų skonį.

Kas tai? Dabar tiesiog laikykitės šio klausimo, o vėliau žinosite ir juo pasinaudosite.

Paskutiniame skyriuje mes išmokome funkcijų sąrankos ir funkcijų piešimo, dėl kurių statinė grafika gali tapti dinamiška. Tačiau šis judėjimo formatas yra pernelyg paprastas. Mes panaudosime funkcijų žinias, kurias įgijome anksčiau, kad paleistume savo grafiką su savo charakteriu.

Kiek funkcijų galite atpažinti iš aukščiau pateiktų paveikslėlių? Kokie jų santykiai su judėjimu? Dabar paimkime iš jo kvadratinę funkciją, atsitiktinai pridėkime kai kuriuos parametrus ir pažiūrėkime, kas atsitiks. Pavyzdžiui, y = x² / 100.

Taip atrodo funkcijos vaizdas. Nukopijuokite žemiau esantį kodą.

[cceN_cpp theme = "aušra"] plūdė x, y; void setup () {dydis (300, 300); fonas (0); x = 0; } void draw () {insultas (255); smūgisSvoris (2); y = pow (x, 2) / 100,0; // Funkcija pow grįš į n -ąją žymėjimo numerio galią. (x, 2) reiškia x kvadratą. Pirmasis parametras yra bazinis skaičius, o antrasis - indeksas. taškas (x, y); x ++; } [/cceN_cpp]

Bėgimo efektas

Tada pasirinkite funkciją sin. Formulė: y = 150 + sin (x).

Nukopijuokite šį kodą.

[cceN_cpp theme = "aušra"] plūdė x, y; void setup () {dydis (300, 300); fonas (0); x = 0; } void draw () {y = aukštis/2 + sin (radianai (x)) * 150; // Funkcija radianas paverčia x į kampą. x ++; insultas (255); smūgisSvoris (2); taškas (x, y); } [/cceN_cpp]

Bėgimo efektas

Tai yra grafika, kurią gauname atlikę kodo valdymą. Ir tai yra jų judėjimo pėdsakai. Palyginti su ankstesniu, rezultatas akivaizdus. Funkcijos vaizdas iš tikrųjų atitinka judėjimo takelį! Tai pakankamai paprasta. Jums tiesiog reikia pakeisti x, y reikšmę į koordinatę. Pirmasis mūsų nubrėžtas takelis yra lygiavertis funkcijos y = x² / 100 grafikai. O antrasis takelis yra lygus funkcijos y = 150 + sin (x) grafikui. Tačiau programoje y ašies kryptis yra priešinga. Taigi, palyginti su originalia grafika, takelis bus aukštyn kojomis. Dabar, manau, turite pajusti, kad kai kurie sunkūs klausimai, kurie ilgą laiką buvo jūsų galvoje, išsprendžiami iš karto. Nuostabu, kad šias fantastiškas funkcijas, kurias išmokome anksčiau, galima panaudoti grafiniam judesiui valdyti!

2 žingsnis: parašykite funkciją

Žemiau išvardijau kelias dažniausiai naudojamas funkcijas. Tikimės, kad tai padės mums išversti funkcijas į kodą, kurį gali atpažinti kompiuteris.

Todėl žemiau pateikta formulė programoje turi būti parašyta taip:

y = x² → y = pow (x, 2) arba y = kv (x)

y = x³ → y = pow (x, 3)

y = xⁿ → y = pow (x, n)

y = 4ⁿ → y = pow (4, n)

y = logₑ² → y = žurnalas (2)

y = e² → y = exp (2)

y = √5 → y = kv. (5)

Taip pat galite atsitiktinai įrašyti funkciją į programą ir pamatyti, kaip atrodys jos judėjimo takelis. Nepamirškite atsižvelgti į reikšmių lauko ir apibrėžimo srities diapazoną, kitaip jūsų grafika nebebus rodoma ekrane.

Trigonometrinė funkcija

Dabar pažvelkime į kai kuriuos trigonometrinių funkcijų įrašus.

Turime atkreipti dėmesį, kad programoje funkcijos parametro įvestis kampo atžvilgiu priima radianą. Taigi sin90 ° bus įrašytas į nuodėmę (PI / 2). Jei nesate susipažinę su šiuo metodu, galite naudoti funkciją randianai, kad kampą iš anksto paverstų radianu, o tada parašykite sin (radianus (90)).

Funkcijų laipsnių naudojimas yra palyginti priešingas. Jis gali paversti radianą į kampą. Įveskite spausdinimą (laipsniai (PI/2)) tiesiai į redagavimo sritį ir pažiūrėkite, ką gausite.

3 žingsnis: valdykite grafinį judėjimą naudodami trigonometrinę funkciją

Čia galite pamatyti tikrąjį grafinio judėjimo poveikį.

[cceN_cpp theme = "aušra"] plūdė x, y; void setup () {dydis (700, 300); } void draw () {fonas (234, 113, 107); y = nuodėmė (radianai (x)) * 150 + 150; x ++; noStroke (); elipsė (x, y, 50, 50); } [/cceN_cpp]

Funkcija sin yra periodinė funkcija. Minimali jo vertė yra -1, o didžiausia - 1. Ekrano aukštis yra 300. Nurodytas y = sin (radianai (x)) * 150 + 150, todėl y vertės keitimo diapazonas bus gerai valdomas 0 iki 300.

Sukimosi ratas

Na, pagaliau atėjome į svarbiausią šio skyriaus dalį. Kaip programoje nubrėžti apskritimo kelią? Kaip naudotis funkcijomis jį rodyti? Leiskite man dar kartą parodyti dvi nuotraukas, kurias matėme šio straipsnio pradžioje.

Tiesą sakant, jie vizualiai atskleidė ryšį tarp apskritimo koordinačių ir trigonometrinės funkcijos. Judėjimą aukščiau pateiktose nuotraukose lemia nuolat didėjantis nepriklausomas kintamasis θ. Kairėje yra funkcijos „sin“ir „cos“vaizdas, o dešinėje - taškas, atliekantis sukamaisiais judesiais po žemėlapio sudarymo. Ar ne labai protinga? Tai nebėra paslaptinga. Norėdami jį suprasti, galite naudoti kodą.

Paprastas pavyzdys:

[cceN_cpp theme = "aušra"] plūdė x, y, r, R, kampas; void setup () {dydis (300, 300); r = 20; // Apskritimo skersmuo R = 100; // Judėjimo kelio spindulys x = 0; kampas = 0; y = aukštis/2; } void draw () {fonas (234, 113, 107); versti (plotis/2, aukštis/2); // Perkelkite pradinį tašką į ekrano centrą. noStroke (); x = R * cos (kampas); y = R * sin (kampas); elipsė (x, y, r, r); kampas += 0,05; } [/cceN_cpp]

Žiūrėk! Pasirodo besisukantis ratas! Čia nepriklausomas kintamasis nebėra pastoviai didinamas bitų kampas (lygus θ paveikslėlyje). Jis skirtas kampui. Tarp jų xy turi santykinai padaugintą koeficientą R, dėl kurio apskritimo judėjimo spindulys pratęsiamas (R yra spindulys). Jei nepadauginsite R, jo judėjimo kelias bus ribojamas nuo -1 iki 1.

Kodėl negalima naudoti didėjančio x? Pagal pačios funkcijos ypatybę, bet kuris apibrėžimo srities x turi jį atitinkantį tik y. Taigi plokštuminėje stačiakampėje matmenų koordinačių sistemoje negalite sužinoti „paprastos funkcijos“, kaip tiesiogiai nupiešti apskritimą. Tai reiškia, kad mes nebegalime naudoti šio formato.

y = (nežinoma x išraiška?);

x ++;

Taigi turime pakeisti savo idėją. Pasirinkite kitą kampą kaip nepriklausomą kintamąjį, tada naudokite funkciją sin ir cos, kad paverstumėte jį horizontalia ir vertikalia koordinatėmis.

x = R * cos (kampas);

y = R * sin (kampas);

kampas += 0,05;

Kai kuriems iš jūsų gali kilti klausimas, kodėl jis gali parodyti apskritimo judėjimo kelią. Pagal trigonometrinės funkcijos apibrėžimą, mes galime lengvai paaiškinti, kad ta funkcija nuodėmė priešingos pusės ir hipotenzijos santykį; funkcija cos yra gretimos ir hipotenuzės santykis. Nesvarbu, kur yra apskritimo taškas, r (spindulys) išliks nepakitęs. Todėl galime padaryti išvadą x koordinatės ir y koordinatės.

Kadangi tai nėra matematinės gairės, čia aš nustosiu rodyti jums daugiau žinių apie trigonometrinę funkciją. Jei norite tai sužinoti arba tiesiog pamiršote, galite pabandyti dar kartą peržiūrėti.

Žinoma, viskas gerai, jei negalite to visiškai suprasti. Turite tik žinoti, kaip jį panaudoti piešiant apskritimą. Tai irgi savotiška „programavimo idėja“. Vėliau mes dažnai kviesime kai kuriuos esamus modulius, kuriuos sukūrė kiti, kad įgyvendintume tam tikrą funkciją. Tik nespauskite savęs to išsamiai žinoti.

Tačiau funkcija sin ir cos yra įprasta. Jei norite sukurti aukštesnio lygio kūrinius, geriau pabandykite tai nuodugniai žinoti. Jei pats šis klausimas gali paskatinti mus išmokti daugiau matematinių žinių, jūsų laukia daugiau įdomių dalykų.

Tai nuotraukos, glaudžiai susijusios su trigonometrine funkcija.

4 žingsnis: judesių koordinačių sistema

Ankstesni efektai yra susiję su grafinių koordinačių pakeitimais. Pati koordinačių sistema yra statiška. Tiesą sakant, mes galime padaryti koordinatę, kad pasiektume judesio efektą. Tai lygiai taip pat, kaip žmonės paplūdimyje stebi kitus valtyje esančius žmones. Laive esantiems žmonėms valtis yra statiška. Bet ką daryti, jei pati valtis juda, tada žmonės valtyje juda su ja. Ankstesni atvejai yra susiję su „laivu bėgančiais žmonėmis“. Tiesą sakant, laivas nejuda. Toliau pateikiamos kelios įprastos koordinatės sistemos keitimo funkcijos.

Funkcijos vertimas

Funkcijos vertimas, apie kurį kalbėjome anksčiau, naudojamas grafikos koordinačių sistemai perkelti horizontaliai.

Skambinimo formatas:

išversti (a, b)

Pirmasis parametras reiškia judėjimą į teigiamą x ašies kryptį pikseliams. Antrasis parametras reiškia perėjimą prie teigiamos y ašies b pikseliams.

Palyginkite du kodus ir pabandykite rasti skirtumą. (Norėdami supaprastinti kodą, galime ištrinti funkcijos dydį, numatytasis ekrano plotis ir aukštis yra 100.)

Prieš naudodami:

elipsė (0, 0, 20, 20);

Po to, kai naudojame:

versti (50, 50);

elipsė (0, 0, 20, 20);

Funkcija pasukti

Skambinimo formatas:

pasukti (a)

Jis naudojamas sukti koordinačių sistemą. Kai parametras yra teigiamas, jis pasirinks pradinį tašką kaip centrinį tašką ir pasuks pagal laikrodžio rodyklę. Parametro įvestis yra ta pati su trigonometrine funkcija, norint naudoti radianą.

Prieš naudojimą:

elipsė (50, 50, 20, 20);

Po naudojimo:

pasukti (radianai (30));

elipsė (50, 50, 20, 20);

Programos poveikis yra tas, kad apskritimas sukasi aplink koordinačių centro tašką pagal laikrodžio rodyklę 30 laipsnių kampu.

Funkcijų skalė

Skambinimo formatas:

skalė (a)

Ši funkcija gali atitolinti koordinačių sistemą. Vertė skirta mastelio keitimui. Kai parametras yra didesnis nei 1, priartinkite; jei jis yra mažesnis nei 1, sumažinkite.

Prieš naudojimą:

elipsė (0, 0, 20, 20);

Po naudojimo:

skalė (4);

elipsė (0, 0, 20, 20);

Aukščiau esančiame paveikslėlyje esantis apskritimas padidinamas keturis kartus daugiau nei pradinis dydis. Be to, galite naudoti du parametrus, kad sumažintumėte x ašies ir y ašies kryptis atskirai.

skalė (4, 2);

elipsė (0, 0, 20, 20);

Transformacijos funkcijos superpozicija

Čia superpozicija yra susijusi su pokyčiais, palyginti su dabartine koordinačių sistema. Kitaip tariant, efektus galima uždėti vienas ant kito.

versti (40, 10);

versti (10, 40);

elipsė (0, 0, 20, 20);

Jo galutinis poveikis bus lygus

versti (50, 50);

elipsė (0, 0, 20, 20);

Tas pats ir pasukti funkciją

pasukti (radianai (10));

pasukti (radianai (20));

elipsė (50, 50, 20, 20);

Lygus

pasukti (radianai (30));

elipsė (50, 50, 20, 20);

Tiek funkcijos mastelis, tiek pasukimas centre pradiniame taške, kad būtų galima mastelį keisti ir pasukti. Jei norime gauti sukimosi efektą su centrine padėtimi (50, 50), turime galvoti priešingai. Pirmiausia perkelkite pradinį tašką į (50, 50) padėtį, tada pridėkite besisukančios transformacijos funkciją. Galiausiai pieškite piešinį ant pradinio taško.

Prieš naudojimą:

elipsė (50, 50, 50, 20);

Po naudojimo:

versti (50, 50);

pasukti (radianai (45));

elipsė (0, 0, 50, 20); // Norėdami pamatyti pasukimo kampo pasikeitimą, padarėme ovalą.

Gali atrodyti, kad sukasi. Jums tiesiog reikia daugiau praktikuoti, tada suprasite. (Taip pat galite pabandyti pakeisti funkcijų vertimo ir pasukimo seką, kad pamatytumėte skirtumą.)

Horizontalus ir apskritimas

Toliau nurodytais atvejais mes ketiname suvokti judesio efektą keisdami koordinačių sistemą. Tuo pačiu norėčiau paprašyti jūsų remtis ankstesnio skyriaus pavyzdžiu. Dažniausiai tam, kad pasiektumėte tam tikrą efektą, galite naudoti visiškai kitokį metodą.

5 žingsnis: horizontalus judėjimas

[cceN_cpp theme = "aušra"]

int x, y; void setup () {dydis (300, 300); x = 0; y = aukštis/2; } void draw () {fonas (234, 113, 107); noStroke (); išversti (x, y); elipsė (0, 0, 50, 50); x ++; } [/cceN_cpp]

Apskritimo koordinatė nekeičiama, bet keičiama jo koordinačių sistema.

Pasukti judesį

[cceN_cpp theme = "aušra"] plūdė r, R, kampas; void setup () {dydis (300, 300); r = 20; // Apskritimo matmuo R = 100; // Judėjimo takelio spindulys} void draw () {fonas (234, 113, 107); versti (plotis/2, aukštis/2); // Perkelkite pradinį tašką į ekrano centrą. pasukti (kampas); noStroke (); elipsė (0, R, r, r); kampas += 0,05; } [/cceN_cpp]

Ar tai nėra daug aiškiau ir paprasčiau nei trigonometrinė funkcija? Čia jums gali kilti klausimas. Kaip pavyzdį paimkite besisukantį kodą. Akivaizdu, kad aukščiau paminėta transformacijos funkcija yra santykinė ir leidžia ją sudėti. Jei rašome vertimą (plotis/2, aukštis/2) į funkcijų piešinį, ar tai nereiškia, kad kiekvieną kartą, kai funkcijų piešimas veikia vieną kartą, koordinačių sistema perkelia atstumą teisinga apatine kryptimi nuo pradinio pagrindo? Pagrįstai jis neliks ekrano centre amžinai.

Galite suprasti taip. Kai funkcijų piešimo kodas užbaigs operaciją iš apačios, koordinačių sistema grįš į pradinę būseną antros operacijos metu. Pagal numatytuosius nustatymus pradinis koordinačių sistemos taškas grįš į kairįjį viršutinį kampą. Taigi, jei norime, kad koordinačių sistema nuolat keistųsi, funkcijos pasukimo kampo parametrai nuolat didina jos vertę.

Pasiekite koordinačių būseną

Kartais nenorime, kad koordinačių sistemos būsenos keitimas būtų grindžiamas ankstesne. Šiuo metu turime naudoti funkcijas pushMatrix ir popMatrix. Abi funkcijos paprastai rodomos pora. Funkcija pushMatrix yra prieš popMatrix. Jie negali būti naudojami tik, kitaip jie suklysta.

Pavyzdys:

[cceN_cpp theme = "aušra"] pushMatrix (); // Saugoti koordinačių sistemos būsenos vertimą (50, 50); elipsė (0, 0, 20, 20); popMatrix (); // Skaityti koordinačių sistemos būseną rect (0, 0, 20, 20); [/cceN_cpp]

Šiame pavyzdyje, prieš naudodami vertimą (50, 50), mes naudojame funkciją pushMatrix., kad išsaugotume esamą koordinačių sistemos būseną. Tuo pačiu metu tai yra pradinė būsena. Nubrėžę apskritimą, įdiegus „popMatrix“, jis vėl sugrįš į šią būseną. Šiuo metu įdiekite funkciją teisingai, pamatysite, kad ji nepatyrė funkcijos vertėjo įtakos, o piešia kvadratą kairiajame viršutiniame pradinio taško kampe.

Be to, funkcija pushMatrix ir popMatrix leidžia įdėti.

Pavyzdžiui

pushMatrix ();

pushMatrix ();

popMatrix ();

popMatrix ();

Norėdami intuityviai parodyti savo santykį, pasirenkame kondensato formatą.

Kombinuotas judėjimas ar judėjimas judėjime?

Dabar prasideda antroji svarbios dalies banga. Tiesiog pabandykite judėti į priekį. Anksčiau mes naudojome valties ir žmonių metaforą. Ar kada pagalvojote, ką daryti, jei priversime žmones ir valtį judėti, kokius jausmus jaus paplūdimio žmonės?

Lygiai taip pat derinkite horizontalų judesį su besisukančiu koordinačių sistemos judesiu. Esmė čia yra judėjimas tik tam tikra kryptimi.

[cceN_cpp tema = "aušra"] int x, y; plūdės kampas; void setup () {dydis (300, 300); fonas (234, 113, 107); noStroke (); x = 0; // Kai pradinė x reikšmė yra 0, galime nepaisyti šio kodo sakinio. Deklaruojant kintamąjį, numatytoji reikšmė yra 0. y = 0; // Tas pats, kas aukščiau. kampas = 0; // Tas pats, kas aukščiau. } void draw () {kampas += 0,25; y--; versti (plotis/2, aukštis/2); pushMatrix (); pasukti (kampas); elipsė (x, y, 5, 5); popMatrix (); } [/cceN_cpp]

Taip pat yra sukamaisiais judesiais ir koordinačių sistemos mastelio keitimas.

[cceN_cpp theme = "aušra"] plūdė x, y, kampas; void setup () {dydis (300, 300); fonas (234, 113, 107); noStroke (); } void draw () {kampas += 0,01; x = sin (kampas) * 100; y = cos (kampas) * 100; versti (plotis / 2, aukštis / 2); pushMatrix (); skalė (1 + 0,1 * sin (kampas * 10)); elipsė (x, y, 5, 5); popMatrix (); } [/cceN_cpp]

Neapsigaukite dėl to! Apskritimo taškas iš tikrųjų daro sukamaisiais judesiais. Nesunku suprasti, jei lyginsime su mastelio keitimu su vaizdo kamera. Vaizdo kamera nuolat juda į priekį arba atgal, sukamaisiais judesiais fotografuoja tašką.

Nustebote? Tai yra paprastos pagrindinės funkcijos. Tačiau su skirtingu deriniu galime sukurti tiek daug skirtingų efektų. Iki šiol mano ekspozicija sustoja, kad atlaisvintų vietos jūsų tyrimams.

6 žingsnis: išsamus naudojimas

Šis skyrius greitai baigsis. Paskutiniuose dviejuose skyriuose pristatiau pagrindinį grafinio judėjimo metodą. Manau, kad jūs, palyginti su pradinėmis idėjomis, turėsite tai gilesnį supratimą. Paskutinis, čia yra keletas užbaigtų pavyzdžių.

[cceN_cpp tema = "aušra"] plūdė x1, y1, x2, y2, r, R; plūdės kampas1, kampas2; void setup () {dydis (300, 300); r = 12; R = 120; kampas1 = 0; kampas2 = PI/4; } void draw () {fonas (234, 113, 107); noStroke (); versti (plotis / 2, aukštis / 2); kampas1 += 0,02; kampas2 += 0,06; x1 = R *sin (kampas1); y1 = R* cos (kampas1); x2 = R/2 *sin (kampas2); y2 = R/2 *cos (kampas2); elipsė (x1, y1, r/2, r/2); elipsė (x2, y2, r, r); elipsė (-x1, -y1, r/2, r/2); elipsė (-x2, -y2, r, r); elipsė (x1, -y1, r/2, r/2); elipsė (x2, -y2, r, r); elipsė (-x1, y1, r/2, r/2); elipsė (-x2, y2, r, r); insultas (255); smūgisSvoris (3); tiesė (x1, y1, x2, y2); linija (-x1, -y1, -x2, -y2); linija (x1, -y1, x2, -y2); tiesė (-x1, y1, -x2, y2); } [/cceN_cpp]

Šiame pavyzdyje nėra jokių žinių, išskyrus mūsų ankstesnį pristatytą skyrių.

Už kokius taškus sutampa? Kurios eilutės atitinka? Aš irgi negaliu to išsiaiškinti. Bet prisimenu, kad tai kyla iš nedidelės kodo dalies.

Tai yra jo judėjimo pobūdis. Likusios linijos yra tik veidrodinis efektas. Jei ir toliau laikysitės šių nurodymų, galite sukurti atnaujintą versiją ir pridėti grafinį valdiklį, kad realiuoju laiku pakeistumėte grafikos judėjimo būseną.

Įdomus programavimo taškas yra tas, kad galite sukurti ar sujungti taisykles. Tačiau galutinė programa priklauso nuo jūsų sugebėjimų. Paprastai dizaineriai turi galingą grafinę vaizduotę. Galvoje galite nupiešti paveikslėlį ir tada pabandyti jį išversti į kodą. Be to, galite pradėti nuo paties kodo ir taisyklių, dizaino funkcijų ir kintamųjų. Atminkite, kad apdorojimas yra jūsų eskizas, o kodas - jūsų šepetėliai! Tiesiog laisvai purkškite savo idėjas!

7 žingsnis: PABAIGA

Paskutiniame skyriuje grįžkime prie klausimo, kurį ilgai išsaugojome nuo pat pradžių. Kam naudinga išleisti tiek pastangų, kad padarytumėte nuotrauką naudodami programą? Išmokę šį skyrių pamatysite, kad jūsų laukia daugybė žaidimo metodų.

[cceN_cpp theme = "aušra"] plūduriuoja antakisX, ausisD, akisD, veidasD; void setup () {dydis (500, 500); } void draw () {fonas (200, 0, 0); antakisX = 150 + sin (frameCount / 30,0) *20; earD = 180 + sin (frameCount / 10,0) *20; akisD = 60 + sin (frameCount/30,0) *50; veidasD = 300; smūgisSvoris (8); elipsė (175, 220, earD, earD); elipsė (plotis - 175, 220, earD, earD); tiesi (100, 100, faceD, faceD); linija (browX, 160, 220, 240); linija (width-browX, 160, width-220, 240); užpildyti (atsitiktinis (255), atsitiktinis (255), atsitiktinis (255)); elipsė (175, 220, eyeD, eyeD); elipsė (plotis-175, 220, akisD, akisD); užpildyti (255); taškas (plotis/2, aukštis/2); trikampis (170 - cos (frameCount / 10,0) * 20, 300 - sin (frameCount / 10,0) * 20, plotis - (170 + cos (frameCount / 10,0) * 20), 300 + sin (frameCount / 10,0) * 20, 250, 350); } [/cceN_cpp]

Argi ne magija dinamiškai grafikai? Čia aš nerodau jums per daug atvejų. Galbūt galite sukurti kur kas geresnį efektą nei aš. Piešimo su programa pranašumas yra tas, kad galite žaisti su kiekvienu pikseliu. Kadangi jūsų grafika nėra bitmap, kiekvienas jūsų grafikos taškas yra valdomas. Jis gali realizuoti kai kuriuos efektus, kurių kita programinė įranga negali suvokti.

Jei turite širdį, kuri nori viską sudaužyti ir vėl sujungti, studijų programa labai padės įgyvendinti šią idėją.

Šis straipsnis kilęs iš dizainerio Wenzy.

8 žingsnis: Santykiniai rodmenys:

Įdomios programavimo gairės dizaineriui-pirminio prisilietimo apdorojimas

Įdomios programavimo gairės dizaineriui-sukurkite savo pirmojo apdorojimo programą

Įdomios programavimo gairės dizaineriui - paleiskite savo nuotrauką (pirmoji dalis)

Jei turite klausimų, galite atsiųsti el. Laišką adresu [email protected].

Šis straipsnis yra iš:

Rekomenduojamas: