Gambar 2D
Pada dasarnya Gambar 2D terdiri dari 2 titik koordinat yang biasa disebut x dan y. x adalah kordinat horizontal(mendatar) dari kanan ke kiri sedangkan y adalah kordinat vertikal(tegak) dari atas ke bawah.
jadi bila nilai x sama dengan 0(nol) dan y juga 0(nol) maka posisi titik itu ada di pojok kiri atas.
jadi bila nilai x sama dengan 0(nol) dan y juga 0(nol) maka posisi titik itu ada di pojok kiri atas.
Looping atau Perulangan
inti cara kerjanya seperti sistem perulangan pada proses gambar animasi. dalam hal ini digunakan untuk memunculkan banyak objek yang dibuat. pengalaman saya saat coba membuat banyak objek tanpa perulangan pada resolusi 240x320 ternyata hasilnya tampilan tidak bisa full.
inti cara kerjanya seperti sistem perulangan pada proses gambar animasi. dalam hal ini digunakan untuk memunculkan banyak objek yang dibuat. pengalaman saya saat coba membuat banyak objek tanpa perulangan pada resolusi 240x320 ternyata hasilnya tampilan tidak bisa full.
Membuat kotak (rectangle) dan ellips
untuk membuatny menggunakan kode ini img.rectangle((posisiX, posisiY, posisiX+lebar Objek, posisiY+tinggi Objek), warna garis, warna objek)
warna yang digunakan dalam mode RGB(Red,Green,Blue) 0xRRGGBB
contoh:
img.rectangle((50, 20, 70, 60), 0x00dddd, fill=0xdd0000)
untuk ellips kodenya hampir sama dengan membuat kotak
Contoh:
img,ellips((50, 70, 80, 90), 0xdd0000, fill=0x00dd00)
warna yang digunakan dalam mode RGB(Red,Green,Blue) 0xRRGGBB
contoh:
img.rectangle((50, 20, 70, 60), 0x00dddd, fill=0xdd0000)
untuk ellips kodenya hampir sama dengan membuat kotak
Contoh:
img,ellips((50, 70, 80, 90), 0xdd0000, fill=0x00dd00)
Membuat Point
berbeda dengan ellips dan rectangle, hanya menggunakan kordinat X,y nya saja dan width(lebar Point)
contoh:
img.point((200, 100), 0x0000dd, width=10)
contoh:
img.point((200, 100), 0x0000dd, width=10)
Membuat Line
membuat sebuah garis yang menghubungkan antara 2 titik kordinat. maka pengaturanya: (x1, y1, x2, y2)
contoh:
img.line((20, 20, 120, 20), 0xdddd00)
contoh:
img.line((20, 20, 120, 20), 0xdddd00)
Membuat Text
untuk membuat tulisan pengaturannya seperti ini : ((x, y), u'teks yang mau di tulis')
contoh:
img.text((60, 300), 0x00dd00)
untuk membuat tulisan pengaturannya seperti ini : ((x, y), u'teks yang mau di tulis')
contoh:
img.text((60, 300), 0x00dd00)
Praktek
#import modul
import appuifw
import graphics
import e32
#definisi perulangan aplikasi
#dengan cara menghentikan perulangan while
#fungsi while adalah untuk menampilkan gambar berulang-ulang secara terus menerus(teori animasi) selama variabel run bernilai benar. Dalam python semua angka selain nol bernilai benar.
#import modul
import appuifw
import graphics
import e32
#definisi perulangan aplikasi
#dengan cara menghentikan perulangan while
#fungsi while adalah untuk menampilkan gambar berulang-ulang secara terus menerus(teori animasi) selama variabel run bernilai benar. Dalam python semua angka selain nol bernilai benar.
def tutup():
global run
run=0
#atur tombol softkey agar menjalankan definisi "tutup" saat ditekan.
appuifw.app.exit_key_handler=tutup
#membuat variabel "c" yang berisi canvas dari modul appuifw
c=appuifw.Canvas()
# atur body aplikasi ke canvas
appuifw.app.body=c
#ukuran layar "full screen"
appuifw.app.screen='full'
#membuat variabel program gambar dari modul graphics, defaultnya berwarna putih.
#(240,320) adalah resolusi layar.
img.graphics.Image.new((240,320))
#run adalah variabel yang berfungsi sebagai pengatur penutupan aplikasi.
run=1
#membuat fungsi while.
while run==1:
#pemanggilan gambar menggunakan c.blit
#ingat kalo c adalah canvas dan img adalah graphics.Image.new
>>c.blit(img)
#membuat kotak
>>img.rectangle((50, 30, 100, 70), 0x00dddd, fill=0xdd0000)
#membuat ellipse
>>img.ellipse((100, 70, 30, 100), 0xdd0000, fill=0xdddd00)
#membuat Point
>>img.point((200, 150), 0x0000dd, width=50)
#membuat garis
>>img.line((00, 200, 240, 200), 0x00dd00)
#membuat text
>>img.text((20,220), u'prajurit', fill=0xdddddd)
#karna defaultnya img berwarna hitam jadi kita rubah dulu menjadi hitam menggunakan clear.
>>img.clear(0x000000)
#membuat penutup aplikasi. saat fungsi tutup dijalankan maka fungsi ao_yield() dari module e32 akan menghentikan perulangan while.
>>e32.ao_yield()
Keterangan
*>> adalah jumlah spasi
*kode yang diawali dengan Tanda pagar(#) tidak akan dibaca oleh program python.
*besar kecilnya huruf, tanda simbol, dan spasi harus sama dengan yang telah di tuliskan di atas.
#atur tombol softkey agar menjalankan definisi "tutup" saat ditekan.
appuifw.app.exit_key_handler=tutup
#membuat variabel "c" yang berisi canvas dari modul appuifw
c=appuifw.Canvas()
# atur body aplikasi ke canvas
appuifw.app.body=c
#ukuran layar "full screen"
appuifw.app.screen='full'
#membuat variabel program gambar dari modul graphics, defaultnya berwarna putih.
#(240,320) adalah resolusi layar.
img.graphics.Image.new((240,320))
#run adalah variabel yang berfungsi sebagai pengatur penutupan aplikasi.
run=1
#membuat fungsi while.
while run==1:
#pemanggilan gambar menggunakan c.blit
#ingat kalo c adalah canvas dan img adalah graphics.Image.new
>>c.blit(img)
#membuat kotak
>>img.rectangle((50, 30, 100, 70), 0x00dddd, fill=0xdd0000)
#membuat ellipse
>>img.ellipse((100, 70, 30, 100), 0xdd0000, fill=0xdddd00)
#membuat Point
>>img.point((200, 150), 0x0000dd, width=50)
#membuat garis
>>img.line((00, 200, 240, 200), 0x00dd00)
#membuat text
>>img.text((20,220), u'prajurit', fill=0xdddddd)
#karna defaultnya img berwarna hitam jadi kita rubah dulu menjadi hitam menggunakan clear.
>>img.clear(0x000000)
#membuat penutup aplikasi. saat fungsi tutup dijalankan maka fungsi ao_yield() dari module e32 akan menghentikan perulangan while.
>>e32.ao_yield()
Keterangan
*>> adalah jumlah spasi
*kode yang diawali dengan Tanda pagar(#) tidak akan dibaca oleh program python.
*besar kecilnya huruf, tanda simbol, dan spasi harus sama dengan yang telah di tuliskan di atas.