Daftar Isi:

Panduan Pemrograman yang Menarik untuk Desainer--Dapatkan Gambar Anda Berjalan (Bagian Dua): 8 Langkah
Panduan Pemrograman yang Menarik untuk Desainer--Dapatkan Gambar Anda Berjalan (Bagian Dua): 8 Langkah

Video: Panduan Pemrograman yang Menarik untuk Desainer--Dapatkan Gambar Anda Berjalan (Bagian Dua): 8 Langkah

Video: Panduan Pemrograman yang Menarik untuk Desainer--Dapatkan Gambar Anda Berjalan (Bagian Dua): 8 Langkah
Video: 🎥 Mau Jadi Desainer Grafis? Wajib Tau Istilah Ini 2024, September
Anonim
Panduan Pemrograman yang Menarik untuk Desainer--Dapatkan Gambar Anda Berjalan (Bagian Kedua)
Panduan Pemrograman yang Menarik untuk Desainer--Dapatkan Gambar Anda Berjalan (Bagian Kedua)

Matematika, bagi sebagian besar dari Anda, tampaknya tidak berguna. Yang paling umum digunakan dalam kehidupan kita sehari-hari hanyalah menambah, mengurangi, mengalikan dan membagi. Namun, sangat berbeda jika Anda dapat membuat dengan program. Semakin banyak Anda tahu, semakin banyak hasil luar biasa yang akan Anda dapatkan.

Langkah 1: Gerakan & Fungsi

Mari saya tunjukkan beberapa gambar yang tidak diketahui untuk merangsang selera Anda.

Apa ini? Sekarang simpan saja pertanyaan ini terlebih dahulu dan kemudian Anda akan mengetahui dan menggunakannya.

Pada bab terakhir, kita telah mempelajari pengaturan fungsi dan menggambar fungsi, yang dapat membuat grafik statis menjadi dinamis. Namun, format gerakan ini terlalu sederhana. Kami akan menggunakan pengetahuan fungsi yang kami kuasai sebelumnya untuk menjalankan grafik kami dengan karakter mereka sendiri.

Ada berapa fungsi yang dapat kamu kenali dari gambar di atas? Hubungan seperti apa yang mereka miliki dengan gerakan? Sekarang mari kita ambil fungsi kuadrat darinya, tambahkan beberapa parameter secara acak dan lihat apa yang akan terjadi. Misalnya, y = x² / 100.

Seperti inilah tampilan fungsi gambar. Salin kode di bawah ini.

[cceN_cpp theme="fajar"] float x, y; batalkan pengaturan(){ ukuran(300, 300); latar belakang(0); x = 0; } batal draw(){ stroke(255); strokeBerat (2); y = pow(x, 2) / 100.0; // Fungsi pow akan kembali ke pangkat ke-n dari nomor penunjukan. (x, 2) mewakili kuadrat dari x. Parameter pertama adalah nomor dasar dan yang kedua adalah indeks. titik (x, y); x++; } [/cceN_cpp]

Efek Lari

Selanjutnya, pilih fungsi sin. Rumus: y = 150 + sin(x).

Salin kode berikut.

[cceN_cpp theme="fajar"] float x, y; batalkan pengaturan(){ ukuran(300, 300); latar belakang(0); x = 0; } batal draw(){ y = tinggi/2 + sin(radian(x)) * 150; //Fungsi radian mengubah x menjadi sudut. x++; pukulan (255); strokeBerat (2); titik (x, y); } [/cceN_cpp]

Efek Lari

Ini adalah grafik yang kami dapatkan setelah mengoperasikan kode. Dan itu adalah jejak gerakan mereka. Dibandingkan dengan yang pertama, hasilnya jelas. Fungsi gambar sebenarnya sesuai dengan trek gerakan! Ini cukup sederhana. Anda hanya perlu mengganti nilai x,y menjadi koordinat. Trek pertama yang kita gambar setara dengan grafik fungsi y = x² / 100. Sedangkan trek terakhir sama dengan grafik fungsi y = 150 + sin(x). Namun dalam program, arah sumbu y berlawanan. Jadi, dibandingkan dengan grafik aslinya, treknya akan terbalik. Sekarang, saya kira Anda pasti memiliki perasaan bahwa beberapa pertanyaan sulit yang menghantui kepala Anda untuk waktu yang lama segera diselesaikan. Sungguh menakjubkan bahwa fungsi-fungsi fantastis yang telah kita pelajari sebelumnya dapat digunakan untuk mengontrol gerakan grafis!

Langkah 2: Untuk Menulis Fungsi

Saya telah membuat daftar beberapa fungsi yang sering digunakan di bawah ini. Semoga ini dapat membantu kita menerjemahkan fungsi ke dalam kode yang dapat dikenali oleh komputer.

Oleh karena itu, rumus di bawah ini dalam program akan ditulis seperti ini:

y = x² → y = pow(x, 2) atau y = sq(x)

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

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

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

y logₑ² → y = log(2)

y = e² → y = exp(2)

y = 5 → y = kuadrat(5)

Anda juga dapat menulis fungsi secara acak ke dalam program dan melihat seperti apa trek pergerakannya. Ingatlah untuk mempertimbangkan rentang bidang nilai dan domain definisi, atau grafik Anda akan kehabisan layar.

Fungsi trigonometri

Sekarang, mari kita melangkah lebih jauh untuk mengetahui beberapa tulisan fungsi trigonometri.

Kita harus memperhatikan bahwa dalam program input parameter fungsi relatif terhadap sudut mengadopsi radian. Jadi sin90° harus ditulis menjadi sin(PI/2). Jika Anda tidak terbiasa dengan metode ini, Anda dapat menggunakan fungsi randian untuk mengubah sudut menjadi radian terlebih dahulu, dan kemudian menulis sin(radian(90)).

Penggunaan derajat fungsi relatif berlawanan. Dapat mengubah radian menjadi sudut. Masukkan print(degrees(PI/2)) langsung ke area edit, dan lihat apa yang akan Anda dapatkan.

Langkah 3: Kontrol Gerakan Grafis Dengan Fungsi Trigonometri

Inilah kasus bagi Anda untuk melihat efek sebenarnya dari gerakan grafis.

[cceN_cpp theme="fajar"] float x, y; batalkan pengaturan(){ ukuran(700, 300); } batal draw(){ latar belakang(234, 113, 107); y = sin(radian(x)) * 150 + 150; x++; tidak ada Stroke(); elips(x, y, 50, 50); } [/cceN_cpp]

Fungsi sin adalah fungsi periodik. Nilai minimumnya adalah -1, dan nilai maksimumnya adalah 1. Ketinggian layar adalah 300. Disebut y = sin(radian(x)) * 150 + 150, oleh karena itu rentang perubahan nilai y akan dikontrol dengan baik dalam 0 ke 300.

Lingkaran berputar

Nah, akhirnya kita sampai pada bagian yang paling penting dalam bab ini. Bagaimana cara menggambar jalur lingkaran dalam suatu program? Bagaimana cara menggunakan fungsi untuk menampilkannya? Mari saya tunjukkan dua gambar yang kita lihat di awal artikel ini lagi.

Sebenarnya mereka telah secara visual memaparkan hubungan antara koordinat keliling dan fungsi trigonometri. Pergerakan pada gambar di atas didorong oleh variabel bebas yang terus meningkat. Kiri adalah gambar fungsi sin dan cos, dan kanan adalah titik yang melakukan gerakan melingkar setelah dipetakan. Bukankah itu sangat cerdas? Hal ini tidak misterius lagi. Anda dapat menggunakan kode untuk mewujudkannya.

Contoh sederhana:

[cceN_cpp theme="fajar"] float x, y, r, R, sudut; batalkan pengaturan(){ ukuran(300, 300); r = 20; //Diameter lingkaran R = 100; //Radius jalur pergerakan x = 0; sudut = 0; y = tinggi/2; } batal draw(){ latar belakang(234, 113, 107); terjemahkan(lebar/2, tinggi/2); //Pindahkan titik asli ke tengah layar. tidak ada Stroke(); x = R * cos(sudut); y = R * sin(sudut); elips(x, y, r, r); sudut += 0,05; } [/cceN_cpp]

Lihat! Sebuah lingkaran berputar muncul! Di sini, variabel independen tidak lagi dalam peningkatan konstan bit menjadi sudut (sama dengan pada gambar). Ini adalah berdiri untuk sudut. Di antaranya, xy memiliki koefisien R yang relatif dikalikan, yang mengarah pada perpanjangan radius gerakan lingkaran (R untuk radius). Jika tidak mengalikan R, jalur pergerakannya akan dibatasi dalam kisaran -1 hingga 1.

Mengapa tidak menggunakan peningkatan x? Menurut properti fungsi itu sendiri, setiap x dalam domain definisi memiliki satu-satunya y yang cocok dengannya. Jadi dalam sistem koordinat dimensi persegi panjang bidang, Anda tidak dapat menemukan "fungsi sederhana" untuk menggambar lingkaran secara langsung. Artinya kita tidak dapat menggunakan format ini lagi.

y = (Ekspresi x yang tidak diketahui?);

x++;

Jadi kita harus mengubah ide kita. Pilih sudut lain sebagai variabel bebas, kemudian gunakan fungsi sin dan cos untuk mengubahnya menjadi koordinat horizontal dan vertikal.

x = R * cos(sudut);

y = R * sin(sudut);

sudut += 0,05;

Beberapa dari Anda mungkin bertanya-tanya mengapa dapat menampilkan jalur gerakan lingkaran. Menurut definisi fungsi trigonometri, kita dapat dengan mudah menjelaskan fungsi tersebut dalam rasio sisi yang berlawanan dengan sisi miring; fungsi cos adalah rasio yang berdekatan dengan sisi miring. Di mana pun titik lingkarannya, r (jari-jari) akan tetap tidak berubah. Oleh karena itu kita dapat menyimpulkan ekspresi koordinat x dan koordinat y.

Karena ini bukan panduan matematika, di sini saya akan berhenti menampilkan lebih banyak pengetahuan tentang fungsi trigonometri kepada Anda. Jika Anda ingin mengetahuinya atau Anda hanya lupa, Anda dapat mencoba meninjaunya sendiri.

Tentu saja, tidak apa-apa jika Anda tidak dapat sepenuhnya memahaminya. Anda hanya perlu tahu cara menggunakannya untuk menggambar lingkaran. Ini adalah semacam "ide pemrograman" juga. Nantinya, kita akan sering memanggil beberapa modul yang ada yang dibuat oleh orang lain untuk mewujudkan jenis fungsi tertentu. Hanya saja, jangan memaksakan diri untuk mengetahuinya secara detail.

Namun, fungsi sin dan cos adalah umum. Jika Anda ingin membuat kreasi tingkat yang lebih tinggi, Anda sebaiknya mencoba mengetahuinya secara menyeluruh. Jika pertanyaan ini sendiri dapat mendorong diri kita untuk mempelajari lebih banyak pengetahuan matematika, ada lebih banyak hal menarik yang menunggu untuk Anda gali.

Ini adalah gambar yang relatif dekat dengan fungsi trigonometri.

Langkah 4: Sistem Koordinat Gerakan

Efek sebelumnya adalah tentang perubahan koordinat grafis. Sistem koordinat itu sendiri statis. Sebenarnya kita bisa membuat koordinat bergerak untuk mewujudkan efek gerak. Ini seperti orang-orang di pantai melihat orang lain di perahu. Bagi orang-orang di kapal, kapal itu statis. Tetapi bagaimana jika perahu itu sendiri yang bergerak, maka orang-orang di dalam perahu itu juga ikut bergerak. Kasus-kasus sebelumnya adalah tentang "orang-orang yang berlari di atas kapal". Sebenarnya, perahu itu tidak bergerak. Berikut ini adalah beberapa fungsi umum untuk mengubah sistem koordinat.

Fungsi menerjemahkan

Fungsi translate, yang telah kita bicarakan sebelumnya, digunakan untuk memindahkan sistem koordinat grafik secara horizontal.

Format panggilan:

menerjemahkan (a, b)

Parameter pertama adalah bergerak ke arah positif sumbu x untuk piksel. Parameter kedua adalah bergerak ke arah positif sumbu y untuk piksel b.

Bandingkan kedua kode dan coba temukan perbedaannya. (Untuk menyederhanakan kode, kita dapat menghapus ukuran fungsi, lebar dan tinggi layar secara default adalah 100.)

Sebelum kita menggunakan:

elips(0, 0, 20, 20);

Setelah kita menggunakan:

terjemahkan(50, 50);

elips(0, 0, 20, 20);

Fungsi memutar

Format panggilan:

putar (a)

Ini digunakan untuk memutar sistem koordinat. Ketika parameter positif, ia akan memilih titik asli sebagai titik pusat dan berputar searah jarum jam. Input parameter sama dengan fungsi trigonometri menggunakan radian.

Sebelum digunakan:

elips(50, 50, 20, 20);

Setelah penggunaan:

putar(radian(30));

elips(50, 50, 20, 20);

Efek dalam program adalah membuat lingkaran berputar di sekitar titik pusat koordinat searah jarum jam selama 30 derajat.

Skala fungsi

Format panggilan:

skala (a)

Fungsi ini dapat memperkecil sistem koordinat. Nilainya untuk penskalaan. Ketika parameter lebih dari 1, maka perbesar; jika lebih rendah dari 1, maka perkecil.

Sebelum digunakan:

elips(0, 0, 20, 20);

Setelah penggunaan:

skala (4);

elips(0, 0, 20, 20);

Lingkaran pada gambar di atas diperkuat menjadi empat kali ukuran aslinya. Selain itu, Anda dapat menggunakan dua parameter untuk memperkecil arah sumbu x dan sumbu y secara terpisah.

skala (4, 2);

elips(0, 0, 20, 20);

Superposisi Fungsi Transformasi

Di sini, superposisi adalah semua tentang perubahan relatif terhadap sistem koordinat saat ini. Dengan kata lain, efek dapat ditumpangkan.

terjemahkan(40, 10);

terjemahkan(10, 40);

elips(0, 0, 20, 20);

Efek akhirnya akan sama dengan

terjemahkan(50, 50);

elips(0, 0, 20, 20);

Sama fungsinya memutar

memutar(radian(10));

memutar(radian(20));

elips(50, 50, 20, 20);

Sama dengan

putar(radian(30));

elips(50, 50, 20, 20);

Kedua fungsi skala dan memutar pusat pada titik asli untuk skala dan memutar. Jika kita ingin mendapatkan efek rotasi dengan posisi sentral di (50, 50), kita harus berpikir sebaliknya. Pertama-tama pindahkan titik asal ke posisi (50, 50), lalu tambahkan fungsi transformasi berputar. Akhirnya buat grafik Anda dicat pada titik aslinya.

Sebelum digunakan:

elips(50, 50, 50, 20);

Setelah penggunaan:

terjemahkan(50, 50);

putar(radian(45));

elips(0, 0, 50, 20); //Untuk melihat perubahan sudut putar, kita telah membuat sebuah oval.

Ini mungkin tampak memutar. Anda hanya perlu berlatih lebih banyak maka Anda akan memahaminya. (Anda juga dapat mencoba mengubah urutan fungsi translate dan rotate untuk melihat perbedaannya.)

Gerakan Horizontal dan Gerakan Melingkar

Dalam kasus berikut, kita akan mewujudkan efek gerak melalui perubahan sistem koordinat. Pada saat yang sama, saya ingin meminta Anda merujuk pada contoh bab sebelumnya. Sebagian besar waktu, Anda akan menemukan untuk mewujudkan jenis efek tertentu, Anda dapat menggunakan metode yang sama sekali berbeda.

Langkah 5: Gerakan Horizontal

[tema cceN_cpp = "fajar"]

int x, y; batalkan pengaturan(){ ukuran(300, 300); x = 0; y = tinggi/2; } batal draw(){ latar belakang(234, 113, 107); tidak ada Stroke(); terjemahkan(x, y); elips(0, 0, 50, 50); x++; } [/cceN_cpp]

Koordinat lingkaran tidak berubah tetapi sistem koordinatnya berubah.

Gerakan Putar

[cceN_cpp theme="fajar"] float r, R, sudut; batalkan pengaturan(){ ukuran(300, 300); r = 20; // Dimensi lingkaran R = 100; //Radius track pergerakan } void draw(){ background(234, 113, 107); terjemahkan(lebar/2, tinggi/2); //Pindahkan titik asli ke tengah layar. memutar (sudut); tidak ada Stroke(); elips(0, R, r, r); sudut += 0,05; } [/cceN_cpp]

Bukankah itu jauh lebih jelas dan sederhana daripada fungsi trigonometri? Anda mungkin memiliki pertanyaan di sini. Ambil kode berputar sebagai contoh. Jelas, fungsi transformasi yang dimaksud di atas adalah relatif dan memungkinkan superimposisi. Jika kita menulis translate(width/2, height/2) ke dalam function draw, bukankah itu berarti setiap kali function draw beroperasi satu kali, sistem koordinat akan berpindah jarak di arah kanan bawah dari pangkalan asli? Wajar itu tidak akan tinggal di tengah layar selamanya.

Anda bisa mengerti dengan cara ini. Setelah kode dalam penarikan fungsi menyelesaikan operasi dari atas ke bawah, sistem koordinat akan kembali ke status awal pada operasi kedua. Titik asli dari sistem koordinat akan default untuk kembali ke sudut kiri atas. Jadi jika kita ingin mengubah sistem koordinat secara terus-menerus, parameter sudut dalam fungsi rotasi harus terus meningkat nilainya.

Status Koordinat Akses

Terkadang, kita tidak ingin perubahan status sistem koordinat didasarkan pada yang sebelumnya. Saat ini, kita harus menggunakan fungsi pushMatrix dan popMatrix. Kedua fungsi tersebut biasanya muncul secara berpasangan. Fungsi pushMatrix sebelum popMatrix. Mereka tidak dapat digunakan semata-mata, atau itu akan salah.

Contoh:

[cceN_cpp theme="fajar"] pushMatrix(); //Menyimpan terjemahan status sistem koordinat(50, 50); elips(0, 0, 20, 20); popMatriks(); //Baca status sistem koordinat rect(0, 0, 20, 20); [/cceN_cpp]

Dalam contoh ini, sebelum menggunakan translate(50, 50), kita menggunakan fungsi pushMatrix.untuk menyimpan status sistem koordinat saat ini. Ini, pada saat yang sama, adalah status awal. Setelah kita menggambar lingkaran, lalu mengimplementasikan popMatrix, maka akan kembali ke status ini. Saat ini, implementasikan fungsi rect, Anda akan menemukannya tidak mengalami pengaruh dari fungsi translate melainkan menggambar persegi di sudut kiri atas dari titik aslinya.

Selain itu, fungsi pushMatrix dan popMatrix memungkinkan bersarang.

Sebagai contoh

pushMatriks();

pushMatriks();

popMatriks();

popMatriks();

Untuk menunjukkan hubungannya secara intuitif, kami memilih format ringkas.

Gerakan Gabungan atau Gerakan dalam Gerakan?

Sekarang gelombang kedua dari bagian penting dimulai. Hanya mencoba untuk mendorong ke depan. Sebelumnya, kami telah menggunakan metafora perahu dan manusia. Pernahkah Anda berpikir tentang bagaimana jika kita membuat orang dan perahu bergerak, perasaan seperti apa yang akan dimiliki orang-orang di pantai?

Seperti menggabungkan gerakan horizontal dengan gerakan berputar dari sistem koordinat. Intinya di sini sebenarnya untuk bergerak ke satu arah saja.

[cceN_cpp theme="fajar"] int x, y; sudut mengambang; batalkan pengaturan(){ ukuran(300, 300); latar belakang (234, 113, 107); tidak ada Stroke(); x = 0; //Ketika nilai awal x adalah 0, kita dapat mengabaikan kalimat kode ini. Saat mendeklarasikan variabel, nilai defaultnya adalah 0. y = 0; // Sama dengan di atas. sudut = 0; // Sama dengan di atas. } batal draw(){ sudut += 0,25; y--; terjemahkan(lebar/2, tinggi/2); pushMatriks(); memutar (sudut); elips(x, y, 5, 5); popMatriks(); } [/cceN_cpp]

Dan ada gerakan melingkar dan penskalaan sistem koordinat.

[cceN_cpp theme="fajar"] float x, y, sudut; batalkan pengaturan(){ ukuran(300, 300); latar belakang (234, 113, 107); tidak ada Stroke(); } batal draw(){ sudut += 0,01; x = sin(sudut) * 100; y = cos(sudut) * 100; terjemahkan(lebar / 2, tinggi / 2); pushMatriks(); skala(1 + 0,1 * sin(sudut*10)); elips(x, y, 5, 5); popMatriks(); } [/cceN_cpp]

Jangan tertipu olehnya! Titik lingkaran sebenarnya melakukan gerakan melingkar. Tidak sulit untuk memahaminya jika kita membandingkannya dengan penskalaan dengan kamera video. Sebuah kamera video terus-menerus bergerak ke depan atau ke belakang sedang memotret suatu titik dalam gerakan melingkar.

Terkejut? Ini adalah fungsi dasar sederhana. Tetapi dengan kombinasi yang berbeda, kita dapat membuat begitu banyak efek yang berbeda. Sampai sekarang, eksposur saya berhenti untuk menyisakan ruang untuk eksplorasi Anda.

Langkah 6: Penggunaan Komprehensif

Ini akan segera berakhir untuk bab ini. Dua bab terakhir, saya telah memperkenalkan metode dasar gerakan grafis. Saya percaya Anda mungkin memiliki pemahaman yang lebih dalam untuk itu, dibandingkan dengan ide awal Anda. Terakhir, inilah beberapa contoh lengkap untuk referensi Anda.

[cceN_cpp theme="fajar"] float x1, y1, x2, y2, r, R; sudut mengambang1, sudut2; batalkan pengaturan(){ ukuran(300, 300); r = 12; R = 120; sudut1 = 0; sudut2 = PI/4; } batal draw(){ latar belakang(234, 113, 107); tidak ada Stroke(); terjemahkan(lebar / 2, tinggi / 2); sudut1 += 0,02; sudut2 += 0,06; x1 = R *sin(sudut1); y1 = R* cos(sudut1); x2 = R/2 *sin(sudut2); y2 = R/2 *cos(sudut2); 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); pukulan (255); strokeBerat (3); garis(x1, y1, x2, y2); baris(-x1, -y1, -x2, -y2); garis(x1, -y1, x2, -y2); garis(-x1, y1, -x2, y2); } [/cceN_cpp]

Contoh ini tidak mengandung pengetahuan apa pun di luar bab yang kami perkenalkan sebelumnya.

Untuk poin mana yang cocok? Garis mana yang cocok? Saya tidak bisa mengetahuinya juga. Tapi saya ingat itu berasal dari bagian kecil kode.

Ini adalah sifat gerakannya. Garis sisanya hanyalah efek cermin. Jika Anda terus mengikuti panduan ini, Anda dapat membuat versi terbaru dan menambahkan pengontrol ke grafik Anda untuk mengubah status pergerakan grafik Anda secara real time.

Hal menarik dari pemrograman terletak pada Anda dapat merancang atau menggabungkan peraturan. Namun, apa program akhirnya semua tergantung pada kemampuan Anda. Biasanya desainer memiliki imajinasi grafis yang kuat. Anda dapat membuat sketsa gambar di kepala Anda, dan kemudian mencoba menerjemahkannya ke dalam kode. Juga, Anda bisa mulai dari kode dan peraturan itu sendiri, merancang fungsi dan variabel sesuka hati. Ingat Processing adalah sketsa Anda dan kode adalah kuas Anda! Semprotkan ide-ide Anda dengan bebas!

Langkah 7: SELESAI

Terakhir di bab kita, mari kembali ke pertanyaan yang sudah lama kita simpan sejak awal. Apa gunanya menghabiskan begitu banyak upaya untuk membuat gambar dengan program? Setelah Anda mempelajari bab ini, Anda akan menemukan begitu banyak metode bermain yang menunggu untuk Anda jelajahi.

[cceN_cpp theme="fajar"] float browX, earD, eyeD, faceD; batalkan pengaturan(){ ukuran(500, 500); } batal draw(){ latar belakang(200, 0, 0); browX = 150 + sin(frameCount / 30.0) *20; earD = 180 + sin(frameCount / 10.0) *20; eyeD = 60 + sin(frameCount/30.0) *50; wajahD = 300; strokeBerat(8); elips(175, 220, telingaD, telingaD); elips(lebar - 175, 220, earD, earD); rect(100, 100, faceD, faceD); baris(browX, 160, 220, 240); garis(lebar-alisX, 160, lebar-220, 240); isi(acak(255), acak(255), acak(255)); elips(175, 220, mataD, mataD); elips(lebar-175, 220, mataD, mataD); isi(255); titik(lebar/2, tinggi/2); segitiga(170 - cos(frameCount / 10.0)* 20, 300 - sin(frameCount / 10.0) *20, lebar - (170 + cos(frameCount / 10.0) *20), 300 + sin(frameCount / 10.0) * 20, 250, 350); } [/cceN_cpp]

Bukankah ajaib untuk grafik dinamis? Di sini saya tidak menunjukkan terlalu banyak kasus. Anda mungkin dapat merancang efek yang jauh lebih baik daripada saya. Keuntungan menggambar dengan program ada Anda dapat bermain dengan setiap piksel. Karena grafik Anda bukan bitmap, setiap titik kunci pada grafik Anda dapat dikontrol. Itu dapat mewujudkan beberapa efek yang tidak dapat disadari oleh perangkat lunak lain.

Jika Anda memiliki hati yang ingin menghancurkan semuanya dan menggabungkannya kembali, program studi akan sangat membantu Anda untuk mewujudkan ide ini.

Artikel ini berasal dari desainer Wenzy.

Langkah 8: Pembacaan Relatif:

Panduan Pemrograman yang Menarik untuk Desainer--Memproses Sentuhan Awal

Panduan Pemrograman yang Menarik untuk Desainer--Buat Program Pemrosesan Pertama Anda

Panduan Pemrograman yang Menarik untuk Desainer–Menjalankan Gambar Anda (Bagian Satu)

Jika Anda memiliki pertanyaan, Anda dapat mengirim email ke [email protected].

Artikel ini dari: