Satura rādītājs:
- 1. darbība: izlasiet attēlu
- 2. darbība. Ar attēlu saistītas funkcijas
- 3. darbība. Mūzikas ielāde, atskaņošana un apturēšana
- 4. solis: mūzikas ātruma kontrole
- 5. darbība: video atskaņošana un apturēšana
- 6. darbība: video ātruma kontrole
- 7. darbība. Kopīgu notikumu apstrāde
- 8. darbība. Visaptverošs piemērs-mūzikas tastatūra
- 9. darbība. Visaptverošs piemērs-mūzikas palete 1
- 10. darbība. Visaptverošs piemērs-2. mūzikas palete (atjaunināta versija)
- 11. darbība. Relatīvās audio un video vadības funkcijas
- 12. darbība. Relatīvie rādījumi:
- 13. darbība. Avots
Video: Interesantas apstrādes programmēšanas vadlīnijas dizainerim-mediju ielāde un notikums: 13 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Apstrādei var ielādēt daudz ārēju datu, starp kuriem ir ļoti bieži izmantoti trīs 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 tos ar notikumiem. Galu galā jūs varat izveidot savu mūzikas tastatūru vai mūzikas paleti.
1. darbība: izlasiet attēlu
Pirms sākam, atskatīsimies uz attēlu ielādes metodi.
2. darbība. Ar attēlu saistītas funkcijas
Pirms mēs izmantojam šīs funkcijas, mums ir jāizveido attēla objekts, izmantojot PImage. Tad mēs varam izmantot šīs funkcijas, lai definētu visu veidu attēla īpašības.
Pirms programmas palaišanas neaizmirstiet saglabāt attēlu avotus datu failā.
3. darbība. Mūzikas ielāde, atskaņošana un apturēšana
Tālāk mēs sākam oficiāli iepazīstināt jūs ar mūzikas piesaukšanu. Ļoti līdzīgi attēlu ielādei, sākumā jums ir jādeklarē audio objekts. Jūs varat atsaukties uz piemēru zemāk no faktiskās gramatikas.
Koda piemērs (10-1):
[cceN_cpp theme = "dawn"] importa apstrāde.skaņa.*;
SoundFile skaņa;
void setup () {
izmērs (640, 360);
fons (255);
skaņa = jauns SoundFile (šis, "1.mp3");
}
void draw () {
}
tukša atslēgaNospiests () {
// Atskaņot skaņu
ja (atslēga == 'p') {
sound.play ();
}
// Apturēt skaņu
ja (atslēga == 's) {
sound.stop ();
}
} [/cceN_cpp]
Sagatavošana:
Pārstrādei nav skaņas bibliotēkas. Jums tas ir jālejupielādē pašam. Tātad, pirms rakstāt savu kodu, labāk veiciet šādus sagatavošanās darbus.
Pievienot bibliotēku apstrādei. Šeit ir izplatīta prakse. Izvēlnes joslā izvēlieties "Rīks"- "Pievienot rīku" un pēc tam pārejiet uz "Bibliotēkas". Ievadiet bibliotēkas atslēgas vārdus meklēšanas slejā, lai to varētu lejupielādēt un instalēt tieši.
Tomēr, ja mēs izmantojam šo funkciju savā valstī (Ķīnā), mēs nevaram to lejupielādēt, tieši savienojot tīmekli. Mums ir jāuzsāk VPN. Lai gan mēs to sākam, būs nestabili apstākļi. Tāpēc jums ir jābūt pacietīgam, lai to izmēģinātu vairākas reizes. Šī ir ērtākā iekraušanas metode. Ja nevarat instalēt, jums ir jālejupielādē no oficiālās vietnes ar rokasgrāmatu. (https://processing.org/reference/libraries/) Tā kā manuālā instalēšanas metode ir ļoti sarežģīta, mēs to tālāk apspriedīsim citā nodaļā.
Kods Exaplain:
Skaņu bibliotēka pēc sagatavošanas pabeigšanas var darboties pareizi. Izpildiet iepriekš minēto kodu, noklikšķiniet uz RUN, tad tas darbosies. Nospiediet taustiņu "P", lai atskaņotu mūziku, "S", lai apturētu mūziku.
Ja tā ir pieradusi pie programmas, mums tā vispirms ir jāielādē. Sākumā mums jāpievieno teikums "importa apstrāde.skaņa.*". "imports" ir atslēgas vārds, kas nozīmē ielādi burtiski. Aiz “importēšanas” pievienojiet bibliotēkas nosaukumu, tad tā ielādēs bibliotēku. Aste parasti seko zīmei "*", tādējādi programmā tiks ielādētas visas ar bibliotēku saistītās klases, tās nepievienojot manuāli.
Otrajā teikumā "SoundFile sound;" ir deklarēts audio objekts. SoundFile ir līdzīgs PImage.
Funkciju iestatījumos "sound = new SoundFile (šis," 1.mp3 ");" tiek izmantots, lai izveidotu objektu un definētu tā lasīšanas ceļu. Šeit mēs faktiski jau esam sākuši izmantot jaunu koncepciju Klase. Pašlaik mēs to dziļi neapspriežam. Mums tikai jāzina, ka tā ir fiksēta rakstīšanas metode, un pēdējais parametrs ir mūzikas avota adreses aizpildīšanai.
Starp galvenajiem nospiestajiem () notikumiem "sound.play ()" un "sound.stop ()" salīdzinoši darbojas kā atskaņošanas un apstāšanās efekts. "". vidū norāda dalībnieka funkciju, kas atskaņo un pārtrauc piederēt audio objektiem. Biedra funkciju mēs varam uzskatīt par objekta funkciju. Tas pieder šim objektam, kas ir definēts iepriekš. Vēlāk, kad mums jāatskaņo vairāki audio objekti, mums tikai jāpievieno ".play ()" aiz relatīvā mainīgā nosaukuma.
Audio avotus uzglabā datu failā tajā pašā skiču faila katalogā (ar pde sufiksu). Ja tāda nav, varat to izveidot manuāli.
Neaizmirstiet uzrakstīt funkciju zīmējumu. Lai gan jūs neuzzīmējāt grafiku, ir nepieciešams veiksmīgi atskaņot mūziku.
Iepriekš minētā procedūra šķiet diezgan sarežģīta, taču jums jāpievieno tikai vairāki koda teikumi, tad jūs varat realizēt atskaņošanas funkciju. Tas ir ļoti ērti.
Apstrāde atbalsta parastos audio formātus, piemēram, mp3, wav, ogg utt.
4. solis: mūzikas ātruma kontrole
Turpmākie piemēri sāks kļūt daudz interesantāki. Apstrāde ir nodrošinājusi dažas funkcijas, kas var kontrolēt mūzikas atskaņošanas ātrumu. Tajā pašā laikā toņi mainīsies līdz ar mūzikas atskaņošanas ātrumu. Ja mēs vadām peli, tas radīs ļoti psihedēlisku efektu.
Video vietne:
Koda piemērs (10-2):
[cceN_cpp theme = "dawn"] importa apstrāde.skaņa.*;
SoundFile skaņa;
void setup () {
izmērs (640, 360);
fons (255);
skaņa = jauns SoundFile (šis, "1.mp3");
}
void draw () {
pludiņa ātrums = peleX/(pludiņš) platums * 3;
sound.rate (ātrums);
pludiņš vol = mouseY/(pludiņš) augstums * 4;
skaņa.amp (tilpums);
}
tukša atslēgaNospiests () {
// Atskaņot skaņu
ja (atslēga == 'p') {
sound.play ();
}
// Apturēt skaņu
ja (atslēga == 's) {
sound.stop ();
}
} [/cceN_cpp]
Paskaidrojiet kodu:
Funkcija.rate () kontrolē audio atskaņošanas ātrumu. Iekavās norādītā vērtība nosaka ātru un lēnu atskaņošanas ātrumu. Ja vērtība ir 1, atskaņošanas ātrums ir normāls. Kad tas pārsniedz 1, tad paātriniet; kamēr tas ir zem 1, tad palēniniet.
Funkcija.amp () kontrolē audio skaļumu. Iekavās norādītā vērtība nosaka apjoma vērtību. Ja tas ir 1, skaļuma vērtība ir normāla. Kad tas pārsniedz 1, tad palieliniet skaļumu; kamēr tas ir zem 1, tad samaziniet skaļumu.
Šeit mēs esam izveidojuši divus vietējos mainīgos ātrumus un tilpumu kā parametrus, kas jāielādē. Tāpēc peles horizontālā koordināta mainīs mūzikas toni, bet vertikālā - mūzikas skaļumu.
5. darbība: video atskaņošana un apturēšana
Apstrādes laikā video ielāde ir līdzīga audio ielādei. Vispirms jums ir jālejupielādē video bibliotēka. (https://processing.org/reference/libraries/video/index.html)
Koda piemērs (10-3):
[cceN_cpp theme = "dawn"] importa apstrāde.video.*;
Filmu kustība;
void setup () {
izmērs (640, 360);
fons (0);
mov = jauna filma (šī, "1.mov");
}
void movieEvent (Filmas filma) {
mov.read ();
}
void draw () {
attēls (mov, 0, 0, 640, 360);
}
tukša atslēgaNospiests () {
ja (atslēga == 'p') {
mov.play ();
}
ja (atslēga == 's) {
mov.stop ();
}
ja (atslēga == 'd') {
mov.pause ();
}
} [/cceN_cpp]
Video ekrānuzņēmums:
Paskaidrojiet kodu:
Pirmo teikumu "import process.video.*;" Izmanto, lai ielādētu video bibliotēku.
Otrais teikums "Movie mov;" tiek izmantots, lai deklarētu video objektu. Starp tiem funkcija "Filma" ir līdzīga PImage.
Funkciju iestatīšanā "mov = new Movie (šis," 1.mov ");" efekts ir izveidot objektu un definēt tā lasīšanas ceļu. Pēdējais parametrs jāaizpilda ar video avota adresi.
Behine setup, movieEvent attēlo video notikumu. To izmanto, lai atjauninātu un lasītu video informāciju. "mov.read ()" gadījumā nozīmē lasīt.
Izņemot attēlu parādīšanu, funkciju attēls var parādīt arī video. Mēs varam uzskatīt video objektu par dinamisku attēlu. Pirmais parametrs, mēs aizpildām video objekta mainīgā nosaukumu. Otrais un trešais parametrs ir video ievilktā horizontālā un vertikālā koordināta. Ceturtais un piektais parametrs nosaka video displeja garumu un platumu.
Funkcija.play () nozīmē spēli. Funkcija.stop () nozīmē apturēt, un tas atiestatīs video. Funkcija.pause () nozīmē pauzi. Tas pārtrauks pašreizējo atskaņošanu, kas turpināsies, līdz tiks izsaukta funkcija.play ().
6. darbība: video ātruma kontrole
Koda piemērs (10-4):
[cceN_cpp theme = "dawn"] importa apstrāde.video.*;
Filmu kustība;
void setup () {
izmērs (640, 360);
fons (0);
mov = jauna filma (šī, "transit.mov");
}
void movieEvent (Filmas filma) {
mov.read ();
}
void draw () {
attēls (mov, 0, 0, platums, augstums);
pludiņš newSpeed = peleX/(pludiņš) platums * 4;
mov.speed (newSpeed);
}
tukša atslēgaNospiests () {
ja (atslēga == 'p') {
mov.play ();
}
ja (atslēga == 's) {
mov.stop ();
}
ja (atslēga == 'd') {
mov.pause ();
}
}
[/cceN_cpp]
Paskaidrojiet kodu:
Funkciju.speed () var izmantot, lai kontrolētu video atskaņošanas ātrumu. Ja parametra vērtība ir 1, atskaņošanas ātrums ir normāls. Kad vērtība pārsniedz 1, tad paātriniet; kamēr tas ir zem 1, tad palēniniet.
Tā kā esam izveidojuši vietējo mainīgo newSpeed un importējuši to funkcijā setSpeed (), peles koordināta tieši ietekmēs video atskaņošanas ātrumu.
Runājot par citiem video piemēriem, varat skatīt sadaļu Bibliotēkas - video lietu bibliotēkā.
7. darbība. Kopīgu notikumu apstrāde
Iepriekš mēs esam ieviesuši tikai keyPressed () notikumu. Tas tiks aktivizēts pēc tastatūras nospiešanas. Tālāk mēs jums iepazīstināsim ar citiem izplatītiem notikumiem apstrādē.
Iepriekš minēto notikumu lietojums ir līdzīgs keyPressed. Viņiem nav secības koda rakstīšanā. Citiem vārdiem sakot, neatkarīgi no tā, kuru notikumu ievietojāt pirms vai pēc funkcijas iestatīšanas, jūs saņemat tādu pašu rezultātu. Izpildes rīkojums ir saistīts tikai ar paša notikuma aktivizēšanas nosacījumu. Tikai tad, ja nosacījums ir izpildīts, tas tiks izpildīts. Iepriekš minētie notikumi ir ļoti viegli saprotami. Jums vienkārši jāveic neliels eksperiments, tad jūs varat ātri aptvert to pielietojumu.
Notikumu plūsma
Mēs varam izmantot piemēru, lai uzzinātu notikumu izpildes secību.
Koda piemērs (10-5):
[cceN_cpp theme = "dawn"] anulēts iestatījums () {
frameRate (2);
println (1);
}
void draw () {
println (2);
}
tukša peleNospiests () {
println (3);
}
void mouseMoved () {
println (4);
}
void mouseReleased () {
println (5);
}
tukša atslēgaNospiests () {
println (6);
}
void keyReleased () {
println (7);
} [/cceN_cpp]
Paskaidrojiet kodu:
Funkciju iestatījumos funkcija frameRate () ir iestatījusi programmas darbības ātrumu 2 kadri sekundē. Kadru nomaiņas ātruma samazināšana var palīdzēt mums novērot konsoles izvadi gadījumā, ja aktivizētie notikumi nekavējoties tiks pārklāti ar jauniem datiem aizmugurē.
Mēģiniet pārvietot peli, noklikšķiniet uz peles, atlaidiet peli un novērojiet izvades rezultātu. Iepazīstieties ar notikuma izpildes rīkojumu, izmantojot println.
Ir vērts pievērst uzmanību zīmēšanas funkcijām, kuras nevar ierakstīt citos notikumos, izņemot funkciju draw, vai arī tās nevar parādīt. Ja mēs vēlamies kontrolēt grafisko komponentu slēpšanu un parādīšanu, izmantojot tādus pasākumus kā taustiņu nospiešana, mēs varam apsvērt iespēju veidot mainīgo lielumu kā vidēju.
Pasākumi tiks izpildīti noteiktā secībā. Tikai pēc tam, kad tiks ieviests viss pašreizējā notikuma kods, tas izpildīs kodu nākamajā notikumā.
8. darbība. Visaptverošs piemērs-mūzikas tastatūra
Apvienojot tos ar jauniem notikumiem, mēs varam pievienot savai programmai jaunu mijiedarbību. Tālāk tikai ar dažām minūtēm mēs varam viegli analogizēt mūzikas tastatūru.
Video vietne:
Koda piemērs (10-6):
[cceN_cpp theme = "dawn"] importa apstrāde.skaņa.*;
SoundFile skaņa1, skaņa2, skaņa3, skaņa4, skaņa5;
Būla atslēga1, atslēga2, atslēga3, atslēga4, atslēga5;
void setup () {
izmērs (640, 360);
fons (255);
noStroke ();
skaņa1 = jauns SoundFile (šis, "do.wav");
skaņa2 = jauns SoundFile (šis, "re.wav");
skaņa3 = jauns SoundFile (šis, "mi.wav");
sound4 = jauns SoundFile (šis, "fa.wav");
sound5 = jauns SoundFile (šis, "so.wav");
}
void draw () {
fons (255, 214, 79);
rectMode (CENTRS);
pludiņš w = platums * 0,1;
pludiņš h = augstums * 0,8;
ja (atslēga1) {
aizpildīt (255);
} vēl {
aizpildīt (238, 145, 117);
}
taisns (platums/6, augstums/2, w, h);
ja (atslēga2) {
aizpildīt (255);
} vēl {
aizpildīt (246, 96, 100);
}
taisns (platums/6 * 2, augstums/2, w, h);
ja (atslēga3) {
aizpildīt (255);
} vēl {
aizpildīt (214, 86, 113);
}
taisns (platums/6 * 3, augstums/2, w, h);
ja (4. atslēga) {
aizpildīt (255);
} vēl {
aizpildīt (124, 60, 131);
}
taisns (platums/6 * 4, augstums/2, w, h);
ja (atslēga5) {
aizpildīt (255);
} vēl {
aizpildīt (107, 27, 157);
}
taisns (platums/6 * 5, augstums/2, w, h);
}
tukša atslēgaNospiests () {
ja (atslēga == 'a') {
skaņa1.spēle ();
atslēga1 = taisnība;
}
ja (atslēga == 's) {
skaņa2.spēle ();
atslēga2 = taisnība;
}
ja (atslēga == 'd') {
skaņa3.spēle ();
key3 = true;
}
ja (atslēga == 'f') {
skaņa4.spēle ();
key4 = taisnība;
}
ja (atslēga == 'g') {
skaņa5.spēle ();
key5 = taisnība;
}
}
void keyReleased () {
ja (atslēga == 'a') {
atslēga1 = nepatiesa;
}
ja (atslēga == 's) {
atslēga2 = nepatiesa;
}
ja (atslēga == 'd') {
key3 = false;
}
ja (atslēga == 'f') {
key4 = false;
}
ja (atslēga == 'g') {
key5 = nepatiess;
}
} [/cceN_cpp]
Paskaidrojiet kodu:
Mums ir jāizveido vairāki audio objekti, lai nolasītu relatīvo skaņas informāciju, lai atskaņotu dažādas skaņas, kad tiek iedarbināti dažādi taustiņi.
Šeit mēs izmantojam jaunu notikuma atslēguReleased (). Šī notikuma funkcija ir atjaunot tastatūras krāsu sākotnējā krāsā. Atlaižot atslēgu, tā tiks aktivizēta.
Galvā deklarētās 5 Būla vērtības tiek izmantotas, lai noteiktu atslēgas statusu.
9. darbība. Visaptverošs piemērs-mūzikas palete 1
Papildus tastatūras notikumam peles notikums ir laba lieta, ka mums tas ir jāizmanto elastīgi. Šis piemērs ir paredzēts, lai mēs izveidotu mūzikas paleti, kuras vidū esam izmantojuši divus ar peli saistītus notikumus.
Video vietne:
Koda piemērs (10-7):
[cceN_cpp theme = "dawn"] importa apstrāde.skaņa.*;
SoundFile skaņa1, skaņa2, skaņa3, skaņa4, skaņa5;
Būla isDragging;
void setup () {
izmērs (640, 360);
fons (255, 214, 79);
noStroke ();
skaņa1 = jauns SoundFile (šis, "do.wav");
skaņa2 = jauns SoundFile (šis, "re.wav");
skaņa3 = jauns SoundFile (šis, "mi.wav");
sound4 = jauns SoundFile (šis, "fa.wav");
sound5 = jauns SoundFile (šis, "so.wav");
}
void draw () {
if (isDragging) {
aizpildīt (107, 27, 157, 100);
elipse (mouseX, mouseY, 16, 16);
}
}
void mouseDragged () {
isDragging = taisnība;
if (mouseX> 100 && mouseX <105) {
skaņa1.spēle ();
}
if (mouseX> 200 && mouseX <205) {
skaņa2.spēle ();
}
if (mouseX> 300 && mouseX <305) {
skaņa3.spēle ();
}
if (mouseX> 400 && mouseX <405) {
skaņa4.spēle ();
}
if (mouseX> 500 && mouseX <505) {
skaņa5.spēle ();
}
}
void mouseReleased () {
isDragging = nepatiess;
} [/cceN_cpp]
Paskaidrojiet kodu:
Mēs ceram, ka tikai tad, kad esam nospieduši peli un to vilkuši, mēs varam zīmēt attēlus. Tāpēc mums ir jāizveido Būla mainīgais isDragging, lai iegūtu pašreizējo statusu.
Velkot peli, isDragging kļūst par patiesu vērtību, tāpēc zīmēšanas funkcijas programmā Draw tiks izpildītas. Tas atstās pēdas uz ekrāna. Atlaižot peli, isDragging kļūst par nepatiesu vērtību. Tātad zīmēšanas funkcijas funkciju zīmēšanā pārtrauks izpildi.
Mēs esam izstrādājuši vairākus iedarbināšanas nosacījumus peles vilkšanas gadījumā. Piemēram, ja peles horizontālā koordināta ir starp 100 un 105 pikseļiem, mūzika tiks atskaņota automātiski. Tādējādi ekrāns izveidoja vairākas neredzamas virknes. Tikai tad, ja pele iet cauri noteiktiem apgabaliem, tā aktivizēs relatīvo mūziku.
10. darbība. Visaptverošs piemērs-2. mūzikas palete (atjaunināta versija)
Iepriekš minētā piemēra ietekme jau ir pietiekami laba. Bet, ja mēs to uzmanīgi vērojam, mēs atradīsim daudz problēmu. Piemēram, ja pele pārvietojas ļoti ātri, tā ikreiz, kad tā pārvietojas, ekrānā atstās apaļu punktu. Tā nav saskaņota taisna līnija. Tikmēr tas izraisa arī nelielu mūzikas noplūdi. Ja pele pārvietojas ļoti lēni, pārejot cauri pozīcijai, kad horizontālā koordināta ir starp 100 un 105, tā ļoti īsā laikā pārraidīs mūziku vairākas reizes, kas rada sajūtu, ka esat iestrēdzis. Visas šīs problēmas mēs varam atrisināt, izmantojot zemāk redzamo piemēru.
Jūs varat skatīties videoklipus zemāk esošajā saitē:
v.qq.com/x/page/w03226o4y4l.html
Koda piemērs (10-8):
[cceN_cpp theme = "dawn"] importa apstrāde.skaņa.*;
SoundFile skaņa1, skaņa2, skaņa3, skaņa4, skaņa5;
Būla isDragging;
void setup () {
izmērs (640, 360);
fons (255, 214, 79);
noStroke ();
skaņa1 = jauns SoundFile (šis, "do.wav");
skaņa2 = jauns SoundFile (šis, "re.wav");
skaņa3 = jauns SoundFile (šis, "mi.wav");
sound4 = jauns SoundFile (šis, "fa.wav");
sound5 = jauns SoundFile (šis, "so.wav");
}
void draw () {
if (isDragging) {
insults (107, 27, 157, 100);
gājiensSvars (10);
līnija (mouseX, mouseY, pmouseX, pmouseY);
}
}
void mouseDragged () {
isDragging = taisnība;
ja ((peleX - 100) * (pmouseX - 100) <0) {
skaņa1.spēle ();
}
ja ((peleX - 200) * (pmouseX - 200) <0) {
skaņa2.spēle ();
}
ja ((peleX - 300) * (pmouseX - 300) <0) {
skaņa3.spēle ();
}
ja ((peleX - 400) * (pmouseX - 400) <0) {
skaņa4.spēle ();
}
ja ((peleX - 500) * (pmouseX - 500) <0) {
skaņa5.spēle ();
}
}
void mouseReleased () {
isDragging = nepatiess;
} [/cceN_cpp]
Paskaidrojiet kodu:
Šeit mēs esam izmantojuši divus mainīgos lielumus pmouseX un pmouseY, kas atrodas pašā apstrādes sistēmā. Tie ir līdzīgi mouseX un mouseY, bet iegūtie ir peles koordinātas pēdējā kadrā.
Funkciju zīmējumā mēs esam izmantojuši funkciju līniju (), lai aizstātu sākotnējo funkciju elipse (). Tas padara pēdējā kadra koordinātu tieši savienotu ar pašreizējā kadra koordinātu. Tātad mēs varam izdarīt saskaņotas taisnas līnijas vai līknes.
Gadījumā mouseDragged mēs esam izstrādājuši jaunu iedarbināšanas nosacījumu. Izlemjot, vai pēdējā kadra un pašreizējā kadra koordinātas atrodas vienā pusē, lai uzzinātu, vai noteikta koordināta ir šķērsota. Ņemiet šo nosacījumu kā piemēru: "ja ((peleX - 100) * (pmouseX - 100) <0)". Starp tiem, no pozitīvās un negatīvās vērtības, ko radīja "mouseX - 100", mēs varam zināt, vai mouseX atrodas labajā vai kreisajā pusē no horizontālā koodināta 100. Līdzīgi kā "pmouseX - 100". Tāpēc, ja divi punkti priekšā un aizmugurē nav vienā pusē, pozitīvs reizina ar negatīvu, tas iegūs jaunu negatīvu skaitli. Tādējādi izpildes nosacījums ir izpildīts.
Iepriekš minētā ir vienkāršota izteiksme, kurā gudri izmantots noteikts matemātiskais algoritms-divi negatīvi reizinot radīs pozitīvu. Varat arī sadalīt to divās situācijās, lai apspriestu to atsevišķi. Tomēr daudz sarežģītāk ir rakstīt sprieduma nosacījumus. Sprieduma nosacījumi "ja ((mouseX = 100) || (mouseX> 100 && pmouseX <= 100))" ir līdzvērtīgi avota koda noteicošajiem nosacījumiem.
11. darbība. Relatīvās audio un video vadības funkcijas
Iepriekš minētās funkcijas ir pietiekamas vispārējiem lietošanas scenārijiem. Ja vēlaties to padziļināt, šeit es jums apkopoju dažas kopīgas funkcijas attiecībā uz audio un video. Jūs varat izpētīt tā pielietojumu atbilstoši savām prasībām.
Lai uzzinātu vairāk, varat iepazīties ar dokumentiem no oficiālās vietnes.
Audio (https://processing.org/reference/libraries/sound/index.html)
Video (https://processing.org/reference/libraries/video/index.html)
Šis raksts nāk no dizainera Venzi.
12. 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
Interesantas programmēšanas vadlīnijas dizainerim-attēls tiek rādīts (pirmā daļa)
Interesantas programmēšanas vadlīnijas dizainerim-lai jūsu attēls darbotos (otrā daļa)
Interesanti programmēšanas norādījumi dizainerim- programmas procesa kontrole- cilpas paziņojums
Interesantas programmēšanas vadlīnijas dizainerim-programmas procesa kontrole-stāvokļa pārskats (pirmā daļa)
Interesantas programmēšanas vadlīnijas dizainerim-programmas procesa kontrole-stāvokļa pārskats (otrā daļa)
Interesantas programmēšanas vadlīnijas dizainerim-pielāgotas funkcijas un fraktāļu atkārtošanās
Interesantas programmēšanas vadlīnijas dizainerim-pielāgotas funkcijas un fraktāļu atkārtošanās
Interesantas apstrādes programmēšanas vadlīnijas dizainerim-krāsu kontrole
13. darbība. Avots
Šis raksts ir no:
Ja jums ir kādi jautājumi, varat sazināties ar : [email protected].
Ieteicams:
Interesantas programmēšanas vadlīnijas dizainerim-attēla uzņemšana (otrā daļa): 8 soļi
Interesantas programmēšanas vadlīnijas dizainerim-izmantojiet savu attēlu (otrā daļa): matemātika lielākajai daļai no jums šķ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
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
10 shēmas shēmas, kas jāzina katram dizainerim: 12 soļi
10 padomi ķēdes projektēšanai, kas jāzina katram dizainerim: shēmas projektēšana var būt diezgan biedējoša, jo patiesībā lietas būs daudz savādākas nekā grāmatas. Ir diezgan skaidrs, ka, ja jums ir jābūt labam shēmas projektēšanā, jums ir jāsaprot katrs komponents un jāpraktizē diezgan daudz
Robota spēles ielāde: 6 soļi
Robota atskaņošanas ielāde: izmantojiet jauno Pixy2 un DFRobot ESP32 FireBeetle, lai izveidotu robotu, kas var atrast un izgūt vienumus
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