Tata surya merupakan sekumpulan objek yang berpusat pada Matahari dan terdiri dari sekumpulan planet-planet yang memiliki orbit-orbit mengelilingi matahari (yakni Uranus, Merkurius, Venus, Bumi, Mars, Jupiter, Saturnus, dan Neptunus) beserta bulannya masing-masing yang mengelilingi setiap planet dan semua objek yang berada di orbit matahari (seperti Asteroid, Komet, dan lain-lain).
Ada banyak cara untuk menganimasikan sebuah pergerakan planet dan satelitnya dari matahari yang kesemuanya menggambarkan tata surya. Salah satunya adalah dengan apa yang akan kita buat kali ini, yaitu memanfaatkan Drawing API pada Flash untuk menggambarkan komponen-komponen tata surya berupa matahari, planet, dan satelitnya. Selain itu untuk membuatnya beranimasi, kita akan melakukan update posisi relative planet dan satelitnya terhadap orbit berupa lingkaran dengan mengubah nilai rotation MovieClip/Sprite/Shape-nya masing-masing secara berkala dalam interval waktu tertentu sesuai nilai FPS, dengan mendefinisikan listener Event.ENTER_FRAME pada stage.
Pada Trik kali ini, kita akan coba menggambarkan matahari yang dikelilingi oleh satu planet dan satu satelit saja, dengan langkah-langkah pembuatannya sebagai berikut:
- Buatlah sebuah file Flash baru dengan fitur ActionScript 3.0. Caranya klik menu File > New > General > ActionScript 3.0.
- Klik Menu Modify > Document.
- Untuk memberikan kesan Animasi ini berlatar belakang luar angkasa, ubah warna document menjadi gelap.
- Pada panel Properties, tuliskan TataSurya di kolom Document Class. Tekan Enter pada Keyboard, bila muncul warning maka abaikan saja, karena file berisi definisi class-nya baru akan kita buat berikutnya.
- Klik menu File > Save As. Simpan dengan format FLA.
- Buat sebuah file Flash baru dengan fitur ActionScript 3.0 dengan mengklik File > New > General > ActionScript File.
- Tuliskan Script berikut ini pada File:
- Klik menu File > Save As, simpan file kedua ini dengan nama TataSurya.as pada folder yang sama dengan kita menyimpan file FLA (cara ke 5) sebelumnya.
- Lakukan test Movieclip sebelumnya untuk melihat hasilnya, klik menu Control > Test Movie atau dengan menekan shortcut Ctrl+Enter pada Keyboard.
- Hasilnya sebuah Animasi Bulan mengelilingi planet dimana disaat yang sama planet tersebut pun mengelilingi matahari.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 | package { import flash.display.*; import flash.events.*; public class TataSurya extends MovieClip { private var matahari:Sprite = new Sprite(); private var bumi:Sprite = new Sprite(); private var bulan:Shape = new Shape(); public function TataSurya() { matahari.graphics.beginFill(0xFFCC00); matahari.graphics.drawCircle(0,0,40); matahari.graphics.endFill(); matahari.graphics.beginFill(0x000000); matahari.graphics.drawCircle(-10,-10,5); matahari.graphics.drawCircle(10,-10,5); matahari.graphics.endFill(); matahari.graphics.lineStyle(0,0x000000); matahari.graphics.moveTo(-20,10); matahari.graphics.curveTo(0,20,20,10); matahari.graphics.lineStyle(0,0x555555); matahari.graphics.drawCircle(0,0,120); bumi.graphics.beginFill(0x0099CC); bumi.graphics.drawCircle(0,0,20); bumi.graphics.endFill(); bumi.graphics.lineStyle(0,0x333333); bumi.graphics.drawCircle(0,0,30); bulan.graphics.beginFill(0xCCCCCC); bulan.graphics.drawCircle(0,0,5); bulan.graphics.endFill(); this.addChild(matahari); matahari.x = 275; matahari.y = 200; matahari.addChild(bumi); bumi.x = 120; bumi.y = 0; bumi.addChild(bulan); bulan.x = 30; bulan.y = 0; stage.addEventListener(Event.ENTER_FRAME, orbit); } private function orbit(evt:Event):void { matahari.rotation += 1; bumi.rotation += 5; bulan.rotation -= 10; } } } |
0 komentar:
Posting Komentar