Satura rādītājs:
- 1. darbība: kustība un funkcija
- 2. darbība. Funkcijas rakstīšana
- 3. darbība: kontrolējiet grafisko kustību ar trigonometrisko funkciju
- 4. solis: kustību koordinātu sistēma
- 5. solis: horizontāla kustība
- 6. darbība. Visaptveroša lietošana
- 7. darbība: BEIGAS
- 8. darbība. Relatīvie rādījumi:
Video: Interesantas programmēšanas vadlīnijas dizainerim-attēla uzņemšana (otrā daļa): 8 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:51
Lielākajai daļai no jums matemātika šķiet bezjēdzīga. Mūsu ikdienas dzīvē visbiežāk tiek izmantota tikai saskaitīšana, atņemšana, reizināšana un dalīšana. Tomēr tas ir pavisam citādi, ja jūs varat izveidot ar programmu. Jo vairāk jūs zināt, jo lieliskāku rezultātu jūs iegūsit.
1. darbība: kustība un funkcija
Ļaujiet man parādīt vairākus nezināmus attēlus, lai stimulētu jūsu gaumi.
Kas tas? Tagad tikai paturiet šo jautājumu vispirms, un vēlāk jūs to zināt un izmantot.
Pēdējā nodaļā mēs esam iemācījušies funkciju iestatīšanu un funkciju zīmēšanu, kas var padarīt statisko grafiku dinamisku. Tomēr šis kustības formāts ir pārāk vienkāršs. Mēs izmantosim zināšanas par funkcijām, kuras iepriekš apguvām, lai palaistu savu grafiku ar savu raksturu.
Cik funkcijas jūs varat atpazīt no iepriekš redzamajiem attēliem? Kādas ir viņu attiecības ar kustību? Tagad paņemsim no tā kvadrātisko funkciju, nejauši pievienosim dažus parametrus un redzēsim, kas notiks. Piemēram, y = x² / 100.
Funkcijas attēls izskatās šādi. Nokopējiet zemāk esošo kodu.
[cceN_cpp theme = "dawn"] pludiņš x, y; void setup () {izmērs (300, 300); fons (0); x = 0; } void draw () {insults (255); insultsSvars (2); y = pow (x, 2) / 100,0; // Funkcija pow atgriezīsies apzīmējuma numura n -tajā pakāpē. (x, 2) apzīmē x kvadrātu. Pirmais parametrs ir bāzes numurs, bet otrais - indekss. punkts (x, y); x ++; } [/cceN_cpp]
Skriešanas efekts
Tālāk izvēlieties funkciju grēks. Formula: y = 150 + sin (x).
Kopējiet šādu kodu.
[cceN_cpp theme = "dawn"] pludiņš x, y; void setup () {izmērs (300, 300); fons (0); x = 0; } void draw () {y = augstums/2 + sin (radiāni (x)) * 150; // Funkcija radiāns pārveido x leņķī. x ++; insults (255); insultsSvars (2); punkts (x, y); } [/cceN_cpp]
Skriešanas efekts
Šo grafiku mēs iegūstam pēc koda darbības. Un tās ir viņu kustības pēdas. Salīdzinot ar iepriekšējo, rezultāts ir acīmredzams. Funkcijas attēls faktiski atbilst kustības celiņam! Tas ir pietiekami vienkārši. Jums vienkārši jāaizstāj x, y vērtība koordinātā. Iepriekšējais celiņš, kuru mēs uzzīmējām, ir ekvivalents funkcijas y = x² / 100 grafikai. Pēdējais sliežu ceļš ir vienāds ar funkcijas y = 150 + sin (x) grafiku. Bet programmā y ass virziens ir pretējs. Tātad, salīdzinot ar oriģinālo grafiku, celiņš būs otrādi. Tagad, man šķiet, jums ir jābūt sajūtai, ka daži sarežģīti jautājumi, kas ilgu laiku vajā jūsu galvā, tiek nekavējoties atrisināti. Tas ir pārsteidzoši, ka šīs fantastiskās funkcijas, kuras mēs iemācījāmies iepriekš, var izmantot, lai kontrolētu grafisko kustību!
2. darbība. Funkcijas rakstīšana
Tālāk ir uzskaitītas vairākas bieži lietotas funkcijas. Ceru, ka tie var mums palīdzēt tulkot funkcijas kodā, ko var atpazīt dators.
Tāpēc zemāk esošā formula programmā jāraksta šādi:
y = x² → y = pow (x, 2) vai y = kv (x)
y = x³ → y = pow (x, 3)
y = xⁿ → y = pow (x, n)
y = 4ⁿ → y = pow (4, n)
y = logₑ² → y = žurnāls (2)
y = e² → y = exp (2)
y = √5 → y = kv. (5)
Jūs varat arī nejauši ierakstīt funkciju programmā un redzēt, kā izskatīsies tās kustības trase. Neaizmirstiet ņemt vērā vērtību lauka diapazonu un definīcijas domēnu, pretējā gadījumā jūsu grafika beigsies ekrānā.
Trigonometriskā funkcija
Tagad iesim tālāk, lai uzzinātu dažus trigonometrisko funkciju rakstus.
Mums jāpievērš uzmanība tam, ka programmā funkcijas parametra ievade attiecībā pret leņķi pieņem radiānu. Tādējādi sin90 ° tiks ierakstīts grēkā (PI / 2). Ja jūs neesat iepazinies ar šo metodi, varat izmantot funkciju randians, lai iepriekš pārveidotu leņķi par radiānu, un pēc tam uzrakstiet sin (radianus (90)).
Funkciju grādu izmantošana ir salīdzinoši pretēja. Tas var pārveidot radiānu leņķī. Ievadiet drukāšanu (grādos (PI/2)) tieši rediģēšanas apgabalā un skatiet, ko iegūsit.
3. darbība: kontrolējiet grafisko kustību ar trigonometrisko funkciju
Šeit jūs varat redzēt grafiskās kustības faktisko efektu.
[cceN_cpp theme = "dawn"] pludiņš x, y; void setup () {izmērs (700, 300); } void draw () {fons (234, 113, 107); y = grēks (radiāni (x)) * 150 + 150; x ++; noStroke (); elipse (x, y, 50, 50); } [/cceN_cpp]
Funkcija grēks ir periodiska funkcija. Tā minimālā vērtība ir -1, bet maksimālā vērtība ir 1. Ekrāna augstums ir 300. Atsaucoties uz y = sin (radiāni (x)) * 150 + 150, tāpēc vērtības y izmaiņu diapazons tiks labi kontrolēts 0 robežās līdz 300.
Griešanās aplis
Mēs beidzot esam nonākuši šīs nodaļas svarīgākajā daļā. Kā programmā uzzīmēt apļa ceļu? Kā izmantot funkcijas tā parādīšanai? Ļaujiet man vēlreiz parādīt divus attēlus, kurus redzējām šī raksta sākumā.
Patiesībā viņi ir vizuāli atklājuši sakarību starp apkārtmēra koordinātu un trigonometrisko funkciju. Kustību iepriekš minētajos attēlos veicina pastāvīgi pieaugošais neatkarīgais mainīgais θ. Kreisais ir funkcijas sin un cos attēls, un labais apzīmē punktu, kas pēc kartēšanas veic apļveida kustības. Vai tas nav ļoti gudrs? Tas vairs nav noslēpumains. Jūs varat izmantot kodu, lai to realizētu.
Vienkāršs piemērs:
[cceN_cpp theme = "dawn"] pludiņš x, y, r, R, leņķis; void setup () {izmērs (300, 300); r = 20; // apļa diametrs R = 100; // Kustības ceļa rādiuss x = 0; leņķis = 0; y = augstums/2; } void draw () {fons (234, 113, 107); tulkot (platums/2, augstums/2); // Pārvietojiet sākotnējo punktu uz ekrāna centru. noStroke (); x = R * cos (leņķis); y = R * sin (leņķis); elipse (x, y, r, r); leņķis += 0,05; } [/cceN_cpp]
Skaties! Parādās griešanās aplis! Šeit neatkarīgajam mainīgajam vairs nav konstanta pieauguma bitu, kas kļūst par leņķi (attēlā vienāds ar θ). Tas ir leņķa statīvs. Starp tiem xy ir relatīvi reizināts koeficients R, kas noved pie apļa kustības rādiusa pagarinājuma (R ir rādiuss). Ja R nav jāreizina, tā kustības ceļš būs ierobežots robežās no -1 līdz 1.
Kāpēc neizmantot pieaugošo x? Saskaņā ar pašas funkcijas īpašību jebkuram x definīcijas domēnā ir vienīgais y, kas tam atbilst. Tātad plaknes taisnstūra izmēru koordinātu sistēmā jūs nevarat uzzināt “vienkāršu funkciju”, lai zīmētu apli tieši. Tas nozīmē, ka mēs vairs nevaram izmantot šo formātu.
y = (Nezināmā x izteiksme?);
x ++;
Tāpēc mums ir jāmaina sava ideja. Izvēlieties citu leņķi kā neatkarīgu mainīgo un pēc tam izmantojiet sin un cos funkciju, lai to pārveidotu horizontālā un vertikālā koordinātā.
x = R * cos (leņķis);
y = R * sin (leņķis);
leņķis += 0,05;
Daži no jums varētu brīnīties, kāpēc tas var parādīt apļa kustības ceļu. Saskaņā ar trigonometriskās funkcijas definīciju mēs varam viegli noteikt, ka šī funkcija grēko pretējās puses un hipotenūzes attiecību; funkcija cos ir blakus esošās un hipotenūzas attiecība. Neatkarīgi no tā, kur atrodas apļa punkts, r (rādiuss) paliks nemainīgs. Tāpēc mēs varam secināt x koordinātas un y koordinātas izteiksmi.
Tā kā tas nav matemātisks norādījums, šeit es pārstāšu jums parādīt vairāk zināšanu par trigonometrisko funkciju. Ja vēlaties to uzzināt vai vienkārši aizmirstat, varat mēģināt to vēlreiz pārskatīt.
Protams, viss ir kārtībā, ja jūs to nevarat pilnībā saprast. Jums tikai jāzina, kā to izmantot, lai zīmētu apli. Tā ir arī sava veida “programmēšanas ideja”. Vēlāk mēs bieži izmantosim dažus esošos moduļus, kurus ir izveidojuši citi, lai realizētu noteikta veida funkcijas. Vienkārši nespiediet sevi zināt to detalizēti.
Tomēr funkcija sin un cos ir izplatīta. Ja vēlaties izveidot augstāka līmeņa radīšanu, labāk mēģiniet to rūpīgi zināt. Ja šis jautājums pats par sevi var mudināt mūs apgūt vairāk matemātisko zināšanu, jūs gaida interesantākas lietas.
Šie attēli ir cieši saistīti ar trigonometrisko funkciju.
4. solis: kustību koordinātu sistēma
Iepriekšējie efekti ir saistīti ar grafisko koordinātu izmaiņām. Pati koordinātu sistēma ir statiska. Patiesībā mēs varam veikt koordinātu kustību, lai realizētu kustības efektu. Tas ir tāpat kā cilvēki pludmalē vēro citus cilvēkus laivā. Cilvēkiem uz laivas laiva ir statiska. Bet ko darīt, ja pati laiva kustas, tad cilvēki laivā pārvietojas kopā ar to. Iepriekšējie gadījumi ir saistīti ar “cilvēkiem, kas skrien uz laivas”. Patiesībā laiva nekustas. Tālāk ir norādītas dažas kopīgas funkcijas koordinātu sistēmas maiņai.
Funkcijas tulkošana
Funkciju tulkošana, par ko mēs jau runājām, tiek izmantota grafikas koordinātu sistēmas pārvietošanai horizontāli.
Izsaukuma formāts:
tulkot (a, b)
Pirmais parametrs nozīmē pāreju uz x ass pozitīvo virzienu pikseļiem. Otrais parametrs apzīmē pārvietošanos uz y ass pozitīvo virzienu b pikseļiem.
Salīdziniet abus kodus un mēģiniet atrast atšķirību. (Lai vienkāršotu kodu, mēs varam izdzēst funkcijas lielumu, pēc noklusējuma ekrāna platums un augstums ir 100.)
Pirms mēs izmantojam:
elipse (0, 0, 20, 20);
Pēc tam, kad mēs izmantojam:
tulkot (50, 50);
elipse (0, 0, 20, 20);
Funkcijas pagriešana
Izsaukuma formāts:
pagriezt (a)
To izmanto rotējošai koordinātu sistēmai. Ja parametrs ir pozitīvs, tas izvēlēsies sākotnējo punktu kā centra punktu un pagriezīsies pulksteņrādītāja virzienā. Parametru ievade ir vienāda ar trigonometrisko funkciju, lai izmantotu radiānu.
Pirms lietošanas:
elipse (50, 50, 20, 20);
Pēc lietošanas:
pagriezt (radiāni (30));
elipse (50, 50, 20, 20);
Programmas efekts ir panākt, lai aplis grieztos ap koordinātu centra punktu pulksteņrādītāja virzienā par 30 grādiem.
Funkciju skala
Izsaukuma formāts:
skala (a)
Šī funkcija var attālināt koordinātu sistēmu. Vērtība ir paredzēta mērogošanai. Kad parametrs pārsniedz 1, tuviniet; ja tas ir mazāks par 1, tāliniet.
Pirms lietošanas:
elipse (0, 0, 20, 20);
Pēc lietošanas:
skala (4);
elipse (0, 0, 20, 20);
Iepriekš redzamajā attēlā redzamais aplis ir četras reizes lielāks par sākotnējo izmēru. Varat arī izmantot divus parametrus, lai attālinātu x ass un y ass virzienus atsevišķi.
skala (4, 2);
elipse (0, 0, 20, 20);
Transformācijas funkcijas superpozīcija
Šeit superpozīcija ir saistīta ar izmaiņām attiecībā pret pašreizējo koordinātu sistēmu. Citiem vārdiem sakot, efektus var pārklāt.
tulkot (40, 10);
tulkot (10, 40);
elipse (0, 0, 20, 20);
Tās galīgais efekts būs vienāds ar
tulkot (50, 50);
elipse (0, 0, 20, 20);
Tas pats, lai pagrieztu funkciju
pagriezt (radiāni (10));
pagriezt (radiāni (20));
elipse (50, 50, 20, 20);
Vienāds ar
pagriezt (radiāni (30));
elipse (50, 50, 20, 20);
Gan funkcija mērogo, gan pagriež centru uz sākotnējā punkta, lai mērogot un pagriezt. Ja mēs vēlamies iegūt rotācijas efektu ar centrālo pozīciju (50, 50), mums jādomā pretēji. Vispirms pārvietojiet sākotnējo punktu pozīcijā (50, 50), pēc tam pievienojiet rotējošo pārveidošanas funkciju. Visbeidzot izveidojiet grafiku uz sākotnējā punkta.
Pirms lietošanas:
elipse (50, 50, 50, 20);
Pēc lietošanas:
tulkot (50, 50);
pagriezt (radiāni (45));
elipse (0, 0, 50, 20); // Lai redzētu rotācijas leņķa izmaiņas, mēs esam izveidojuši ovālu.
Tas varētu šķist sagrozīts. Jums vienkārši jāpraktizē vairāk, tad jūs to sapratīsit. (Varat arī mēģināt mainīt funkciju tulkošanas un pagriešanas secību, lai redzētu atšķirību.)
Horizontālā kustība un apļveida kustība
Turpmākajos gadījumos mēs izjutīsim kustību efektu, mainot koordinātu sistēmu. Tajā pašā laikā es gribētu lūgt jūs atsaukties uz iepriekšējās nodaļas piemēru. Lielāko daļu laika jūs atradīsit, lai noteiktu efektu panāktu, izmantojot pilnīgi citu metodi.
5. solis: horizontāla kustība
[cceN_cpp theme = "rītausma"]
int x, y; void setup () {izmērs (300, 300); x = 0; y = augstums/2; } void draw () {fons (234, 113, 107); noStroke (); tulkot (x, y); elipse (0, 0, 50, 50); x ++; } [/cceN_cpp]
Apļa koordināta netiek mainīta, bet tiek mainīta tā koordinātu sistēma.
Rotēt kustību
[cceN_cpp theme = "dawn"] pludiņš r, R, leņķis; void setup () {izmērs (300, 300); r = 20; // apļa izmērs R = 100; // Kustības ceļa rādiuss} void draw () {fons (234, 113, 107); tulkot (platums/2, augstums/2); // Pārvietojiet sākotnējo punktu uz ekrāna centru. pagriezt (leņķis); noStroke (); elipse (0, R, r, r); leņķis += 0,05; } [/cceN_cpp]
Vai tā nav daudz skaidrāka un vienkāršāka par trigonometrisko funkciju? Šeit jums varētu būt jautājums. Kā piemēru ņemiet rotējošu kodu. Acīmredzot iepriekš minētā pārveidošanas funkcija ir relatīva un ļauj to pārklāt. Ja mēs rakstām tulkot (platums/2, augstums/2) funkciju zīmējumā, vai tas nenozīmē, ka katru reizi, kad funkciju vilkšana darbojas vienu reizi, koordinātu sistēma pārvietos attālumu labajā apakšējā virzienā no sākotnējās bāzes? Saprātīgi tas mūžīgi nepaliks ekrāna centrā.
Jūs varat saprast šādā veidā. Kad funkciju zīmēšanas kods ir pabeidzis darbību no augšas uz leju, otrās darbības laikā koordinātu sistēma atgriezīsies sākotnējā stāvoklī. Sākotnējais koordinātu sistēmas punkts pēc noklusējuma atgriezīsies augšējā kreisajā stūrī. Tātad, ja mēs vēlamies, lai koordinātu sistēma nepārtraukti mainītos, funkcijas rotācijas leņķa parametri nepārtraukti palielina tās vērtību.
Piekļūstiet koordinātu statusam
Dažreiz mēs nevēlamies, lai koordinātu sistēmas statusa maiņa būtu balstīta uz iepriekšējo. Šobrīd mums jāizmanto funkcija pushMatrix un popMatrix. Abas funkcijas parasti parādās pārī. Funkcija pushMatrix ir pirms popMatrix. Tos nevar izmantot tikai, pretējā gadījumā tas notiks nepareizi.
Piemērs:
[cceN_cpp theme = "dawn"] pushMatrix (); // Saglabāt koordinātu sistēmas statusa tulkojumu (50, 50); elipse (0, 0, 20, 20); popMatrix (); // Lasīt koordinātu sistēmas statusa taisnumu (0, 0, 20, 20); [/cceN_cpp]
Šajā piemērā pirms tulkošanas (50, 50) izmantošanas mēs izmantojam funkciju pushMatrix.koordinātu sistēmas pašreizējā statusa saglabāšanai. Tajā pašā laikā tas ir sākotnējais statuss. Pēc tam, kad mēs uzzīmēsim apli un pēc tam ieviesīsim popMatrix, tas atgriezīsies šajā statusā. Šobrīd īstenojiet funkciju taisni, jūs atradīsit, ka tā nav cietusi no funkcijas tulkošanas ietekmes, tā vietā sākotnējā punkta kreisajā augšējā stūrī uzzīmējot kvadrātu.
Turklāt funkcija pushMatrix un popMatrix nodrošina ligzdošanu.
Piemēram
pushMatrix ();
pushMatrix ();
popMatrix ();
popMatrix ();
Lai intuitīvi parādītu savas attiecības, mēs izvēlamies kondensāta formātu.
Kombinētā kustība vai kustība kustībā?
Tagad sākas svarīgās daļas otrais vilnis. Vienkārši mēģiniet virzīties uz priekšu. Iepriekš mēs esam izmantojuši laivu un cilvēku metaforu. Vai esat kādreiz domājuši, kā rīkoties, ja mēs liksim kustēties gan cilvēkiem, gan laivai, kādas būs pludmales cilvēku sajūtas?
Tāpat kā apvienojiet horizontālo kustību ar koordinātu sistēmas rotējošo kustību. Šeit būtība ir virzīties tikai noteiktā virzienā.
[cceN_cpp theme = "dawn"] int x, y; pludiņa leņķis; void setup () {izmērs (300, 300); fons (234, 113, 107); noStroke (); x = 0; // Ja x sākotnējā vērtība ir 0, mēs varam neņemt vērā šo koda teikumu. Deklarējot mainīgo, noklusējuma vērtība ir 0. y = 0; // Tas pats, kas iepriekš. leņķis = 0; // Tas pats, kas iepriekš. } void draw () {leņķis += 0,25; y--; tulkot (platums/2, augstums/2); pushMatrix (); pagriezt (leņķis); elipse (x, y, 5, 5); popMatrix (); } [/cceN_cpp]
Un ir apļveida kustība un koordinātu sistēmas mērogošana.
[cceN_cpp theme = "dawn"] pludiņš x, y, leņķis; void setup () {izmērs (300, 300); fons (234, 113, 107); noStroke (); } void draw () {leņķis += 0,01; x = sin (leņķis) * 100; y = cos (leņķis) * 100; tulkot (platums / 2, augstums / 2); pushMatrix (); skala (1 + 0,1 * sin (leņķis * 10)); elipse (x, y, 5, 5); popMatrix (); } [/cceN_cpp]
Neļaujiet sevi krāpt! Apļa punkts faktiski veic apļveida kustības. To nav grūti saprast, ja salīdzinām to ar mērogošanu ar videokameru. Videokamera nepārtraukti pārvietojas priekšā vai aizmugurē, uzņemot apļveida kustības.
Pārsteigts? Šīs ir vienkāršas pamatfunkcijas. Bet ar dažādu kombināciju mēs varam radīt tik daudz dažādu efektu. Līdz šim mana ekspozīcija apstājas, lai atbrīvotu vietu jūsu izpētei.
6. darbība. Visaptveroša lietošana
Šai nodaļai tas drīz beigsies. Pēdējās divās nodaļās esmu iepazīstinājis ar grafiskās kustības pamatmetodi. Es uzskatu, ka jums varētu būt dziļāka izpratne par to, salīdzinot ar jūsu sākotnējām idejām. Visbeidzot, šeit ir daži pabeigti piemēri jūsu atsaucei.
[cceN_cpp theme = "dawn"] pludiņš x1, y1, x2, y2, r, R; pludiņa leņķis1, leņķis2; void setup () {izmērs (300, 300); r = 12; R = 120; leņķis1 = 0; leņķis2 = PI/4; } void draw () {fons (234, 113, 107); noStroke (); tulkot (platums / 2, augstums / 2); leņķis1 += 0,02; leņķis2 += 0,06; x1 = R *sin (leņķis1); y1 = R* cos (leņķis1); x2 = R/2 *sin (leņķis2); y2 = R/2 *cos (leņķis2); elipse (x1, y1, r/2, r/2); elipse (x2, y2, r, r); elipse (-x1, -y1, r/2, r/2); elipse (-x2, -y2, r, r); elipse (x1, -y1, r/2, r/2); elipse (x2, -y2, r, r); elipse (-x1, y1, r/2, r/2); elipse (-x2, y2, r, r); insults (255); insultsSvars (3); līnija (x1, y1, x2, y2); līnija (-x1, -y1, -x2, -y2); līnija (x1, -y1, x2, -y2); līnija (-x1, y1, -x2, y2); } [/cceN_cpp]
Šajā piemērā nav zināšanu, kas pārsniedz mūsu iepriekšējo nodaļu.
Par kādiem punktiem sakrīt? Kuras rindas sakrīt? Es arī to nevaru izdomāt. Bet es atceros, ka tas izriet no nelielas koda sadaļas.
Tas ir tā kustības raksturs. Pārējās līnijas ir tikai spoguļa efekts. Ja turpināsit ievērot šīs vadlīnijas, varat izveidot atjauninātu versiju un pievienot grafikai kontrolieri, lai reālā laikā mainītu grafikas kustības statusu.
Interesants programmēšanas punkts ir tas, ka jūs varat izstrādāt vai apvienot noteikumus. Tomēr galīgā programma būs atkarīga no jūsu spējām. Parasti dizaineriem ir spēcīga grafiskā iztēle. Jūs varat ieskicēt attēlu savā galvā un pēc tam mēģināt to pārtulkot kodā. Varat arī sākt no paša koda un noteikumiem, dizaina funkcijām un mainīgajiem pēc vēlēšanās. Atcerieties, ka apstrāde ir jūsu skice, bet kods - jūsu otas! Vienkārši brīvi izsmidziniet savas idejas!
7. darbība: BEIGAS
Pēdējā mūsu nodaļā atgriezīsimies pie jautājuma, kuru esam saglabājuši ilgu laiku kopš sākuma. Kāda jēga tērēt tik daudz pūļu, lai izveidotu attēlu ar programmu? Pēc šīs nodaļas apgūšanas jūs atradīsit tik daudz spēļu metožu, kas gaida, lai jūs varētu izpētīt.
[cceN_cpp theme = "rītausma"] float browX, earD, eyeD, faceD; void setup () {izmērs (500, 500); } void draw () {fons (200, 0, 0); browX = 150 + sin (frameCount / 30.0) *20; aussD = 180 + grēks (frameCount / 10,0) *20; eyeD = 60 + sin (frameCount/30.0) *50; sejaD = 300; gājiensSvars (8); elipse (175, 220, earD, earD); elipse (platums - 175, 220, earD, earD); taisns (100, 100, faceD, faceD); līnija (browX, 160, 220, 240); līnija (width-browX, 160, width-220, 240); aizpildīt (nejauši (255), nejauši (255), nejauši (255)); elipse (175, 220, eyeD, eyeD); elipse (platums-175, 220, eyeD, eyeD); aizpildīt (255); punkts (platums/2, augstums/2); trīsstūris (170 - cos (frameCount / 10,0) * 20, 300 - sin (frameCount / 10,0) * 20, platums - (170 + cos (frameCount / 10,0) * 20), 300 + sin (frameCount / 10,0) * 20, 250, 350); } [/cceN_cpp]
Vai tā nav maģija dinamiskajai grafikai? Šeit es nerādu jums pārāk daudz gadījumu. Jūs varētu radīt daudz labāku efektu nekā es. Zīmēšanas ar programmu priekšrocība pastāv, jūs varat spēlēt ar katru pikseļu. Tā kā jūsu grafika nav bitkarte, katrs jūsu grafikas galvenais punkts ir kontrolējams. Tas var realizēt dažus efektus, kurus cita programmatūra nevar realizēt.
Ja jums ir sirds, kas vēlas visu salauzt un atkal apvienot, studiju programma ļoti palīdzēs jums īstenot šo ideju.
Šis raksts nāk no dizainera Venzi.
8. darbība. Relatīvie rādījumi:
Interesanti programmēšanas norādījumi dizainerim-sākotnējā pieskāriena apstrāde
Interesanti programmēšanas norādījumi dizainerim-izveidojiet savu pirmo apstrādes programmu
Interesanti programmēšanas norādījumi dizainerim - lai jūsu attēls darbotos (pirmā daļa)
Ja jums ir kādi jautājumi, varat nosūtīt e -pastu uz [email protected].
Šis raksts ir no:
Ieteicams:
Interesantas apstrādes programmēšanas vadlīnijas dizainerim-krāsu kontrole: 10 soļi
Interesantas apstrādes programmēšanas vadlīnijas dizainerim-krāsu kontrole: Iepriekšējās nodaļās mēs esam vairāk runājuši par to, kā izmantot kodu, lai veidotu, nevis zināšanu punktus par krāsu. Šajā nodaļā mēs padziļināti izpētīsim šo zināšanu aspektu
Kustības aktivizēts attēlu uzņemšana un e -pasts: 6 soļi
Kustības aktivizēts attēlu uzņemšana un e-pasts: mēs balstāmies uz iepriekšējiem ESP32-CAM projektiem un izveidojam kustības izraisītu attēlu uzņemšanas sistēmu, kas arī nosūta e-pastu ar attēlu kā pielikumu. Šajā būvē tiek izmantota ESP32-CAM plate kopā ar PIR sensora moduli, kura pamatā ir AM312
Video uzņemšana, izmantojot ESP32-CAM paneli: 4 soļi
Video uzņemšana, izmantojot ESP32-CAM paneli: Mēs apskatām ļoti interesantu GitHub repozitoriju, kas ļauj ierakstīt video uz ESP32-CAM plates. Video ir nekas cits kā rūpīgi savlaicīgu attēlu sērija, un šī skice ir balstīta uz to. Komanda ir arī pievienojusi FTP funkcionalitāti
Interesantas apstrādes programmēšanas vadlīnijas dizainerim-mediju ielāde un notikums: 13 soļi
Interesantas apstrādes programmēšanas vadlīnijas dizainerim-multivides ielāde un notikums: apstrādi var ielādēt daudz ārēju datu, starp kuriem ir trīs ļoti bieži izmantotie veidi. Tie ir attēls, audio un video atsevišķi. Šajā nodaļā mēs runāsim par to, kā detalizēti ielādēt audio un video, apvienojot to ar notikumu
Interesantas programmēšanas vadlīnijas dizainerim-uzņemiet attēlu (pirmā daļa): 16 soļi
Interesantas programmēšanas vadlīnijas dizainerim-palaidiet attēlu (pirmā daļa): skrieniet! Skrien! Skrien! Programmēšana nav tik grūta. Galvenais ir atrast savu ritmu un darīt to pa vienam. Pirms šīs nodaļas lasīšanas es ceru, ka jūs jau esat iepazinies ar zīmēšanas pamatfunkcijas metodi, vai arī jums būs reibonis un apjukums