Fungsi set_gfx_mode
Untuk membuat komputer masuk ke dalam mode grafis.
Syntaxnya:
int set_gfx_mode (int card, int w, int h, int v_w, int v_h);
Untuk card, anda harus memasukkan salah satu konstanta GFX_*, umumnya GFX_AUTODETECT. w dan h adalah batas minimum lebar dan tinggi dari ruang kerja layar yang anda inginkan. Untuk v_w dan v_h cukup isikan angka nol ( 0 ).
Contoh:
set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640,480,0,0);
mengubah mode grafis berjendela dengan resolusi 640 x 480,
Fungsi create_bitmap
Membuat alokasi memory untuk variable bitmap dengan ukuran yang kita kehendaki, yang umumnya digunakan untuk penampungan sementara dalam teknik double buffering.
Syntax:
BITMAP *create bitmap (int width, int height);
Contoh :
BITMAP *my_pic = create_bitmap(640,480);
Fungsi load_bitmap
Mengisi sebuah variabel bitmap dengan file gambar yang bertipe.bmp, .lbm, .pcx, dan .tga.
Syntax:
BITMAP *load_bitmap(const char *filename, RGB *pal);
Contoh:
Bitmap *my_pic;
my_pic = load_bitmap(”picture.bmp”, NULL);
Fungsi clear_bitmap
Menghapus gambar dari sebuah variabel bitmap.
Syntax :
void clear_bitmap (BITMAP *bitmap);
Contoh :
clear_bitmap(my_pict);
Fungsi destroy_bitmap
Mengosongkan alokasi memori BITMAP yang digunakan sebelumnya oleh sebuah gambar bertipe bitmap.
Syntax:
void destroy_bitmap (BITMAP *bitmap);
Contoh:
destroy_bitmap(my_pict);
Prosedur rest
Agar program yang kita buat dapat menunggu beberapa saat setelah menemui prosedur ini dan kembali menjalankan syntax selanjutnya jika proses menunggu telah selesai.
Syntax :
void rest(unsigned int time);
Prosedur put_pixel
Menempatkan sebuah pixel ke dalam layar yang telah dibuat sebelumnya, kita dapat memberikan warna pada pixel tersebut.
Syntax:
void putpixel (BITMAP *bmp, int x, int y, int color);
Contoh:
putpixel (screen, 10, 30, some_color);
Prosedur blit
Menyalin area persegi yang berasal dari bitmap ke tempat tujuan yang kita inginkan.
Syntax:
void blit(BITMAP *source, BITMAP *destination, int source_x, int source_y, int dest_x, int dest_y, int width, int height);
Contoh:
BITMAP *buffer = create_bitmap(800,600);
BITMAP *back = load_bitmap(”dock.bmp”,NULL);
blit(back,buffer,0,0,0,0,800,600);
Prosedur masked_blit
Sama seperti prosedur blit hanya saja prosedur ini dapat menjadikan gambar yang kita copi ke screen menjadi transparan dengan menggunakan latar berwarna pink.
Syntax:
void masked_blit(BITMAP *source, BITMAP *dest, int source_x, int source_y, int dest_x, int dest_y, int width, int height);
Contoh:
masked_blit(my_pic, screen, 0,0,0,0,572,473);
Prosedur draw_sprite
Sama dengan blit, yaitu menyalin salinan bitmap ke tujuan bitmap di posisi yang telah ditetapkan, tetapi tanpa kemampuan untuk memotong ukuran gambar.
Syntax:
void draw_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y);
Contoh:
BITMAP *buffer = create_bitmap(800,600);
BITMAP *my_pic = load_bitmap(”dock.bmp”,NULL);
int my_pic_x = 0;
int my_pic_y = 0;
draw_sprite(buffer, my_pic, my_pic_x, my_pic_y);
Fungsi makecol
Mengubah format warna RGB (Red, Green, Blue) ke dalam format warna pixel dalam allegro yang diperlukan untuk mode arus video
Syntax:
int makecol(int r, int g, int b);
Contoh :
int green_color = makecol(0, 255, 0);
Monday, December 22, 2008
Buffer
Buffer adalah tempat penampungan sementara gambar yang ingin kita proses dalam pemrograman allegro (menampung alamat memory [pointer] dari gambar yang kita tunjukkan) sebelum dipakai dalam program yang dijalankan.
Perbedaannya adalah dengan no buffering kita langsung menload gambar yang kita perlukan untuk langsung ditmapilkan dilayar, yang berakibat prosesnya berjalan lebih lambat daripada double buffering sehingga proses animasi gambarnya menjadi kaku.
Sedangkan dengan double buffering kita menyimpan semua gambar yang akan kita tampilkan ke dalam satu variabel bitmap temporary, sebelum di load ke variabel screen ( untuk ditampilkan ke monitor). Berguna untuk memperhalus perubahan animasi gambar pada layar dan mempercepat penggantian image (gambar) yang diload ke variabel screen. Karena kita hanya mengganti sebuah gambar sehingga prosesnya lebih cepat daripada mengload semua gambar yang akan kita pakai langsung ke variabel screen.
Buffering merupakan sebuah teknik yang menyimpan semua gambar yang akan kita tampilkan ke dalam satu variabel bitmap temporary, sebelum di load ke variabel screen ( untuk ditampilkan ke monitor). Kegunaannya adalah sebagai variabel penunjuk alamat memory dari gambar yang akan kita proses.
Perbedaannya adalah dengan no buffering kita langsung menload gambar yang kita perlukan untuk langsung ditmapilkan dilayar, yang berakibat prosesnya berjalan lebih lambat daripada double buffering sehingga proses animasi gambarnya menjadi kaku.
Sedangkan dengan double buffering kita menyimpan semua gambar yang akan kita tampilkan ke dalam satu variabel bitmap temporary, sebelum di load ke variabel screen ( untuk ditampilkan ke monitor). Berguna untuk memperhalus perubahan animasi gambar pada layar dan mempercepat penggantian image (gambar) yang diload ke variabel screen. Karena kita hanya mengganti sebuah gambar sehingga prosesnya lebih cepat daripada mengload semua gambar yang akan kita pakai langsung ke variabel screen.
Buffering merupakan sebuah teknik yang menyimpan semua gambar yang akan kita tampilkan ke dalam satu variabel bitmap temporary, sebelum di load ke variabel screen ( untuk ditampilkan ke monitor). Kegunaannya adalah sebagai variabel penunjuk alamat memory dari gambar yang akan kita proses.
Grafis dalam pemrograman C
Allegro merupakan library khusus yang diciptakan sehingga mampu menambah kemampuan program C++ dalam melakukan pengolahan program yang sudah melibatkan gambar dan suara dalam menghasilkan outputnya.Pertama – tama kita harus menginstall library allegro ke dalam IDE compiler yang kita gunakan. Masing – masing memiliki cara yang berbeda – beda yang dapat dilihat di situs resmi allegro (www.allegro.cc) . Bila anda menggunakan IDE DevCPP, maka yang perlu anda lakukan adalah mendownload library allegro dalam format devpack, yang kemudian tinggal anda install menggunakan package manager bawaan DevCPP. Kemudian untuk menggunakan library allegro tersebut, kita harus meng-include file header allegro (#include ). Lalu kita harus memberi syntax (END_OF_MAIN()) pada akhir fungsi main (setelah tanda }). Dan jangan lupa memberikan perintah –lalleg pada linking command ide compiler anda
Jenis Strem pada pemrograman C
10. Peran masing-masing stream berikut: STDIN, STDOUT, STDERR, STDPRN, dan POINTER FILE (FILE *) dalam proses input output di pemrograman bahasa C:
• Steram menyatakn piranti nalar ( logical device ) yang secara aktual dapat berupa terminal, disk drive atau printer
• Stdin merupakan piranti yang berfungsi untuk masukan standar, dalam hal ini biasanya media yang digunakan adalah keyboard. Pada saat suatu program dieksekusi maka secara otomatis stdin akan dibuka oleh komputer
• Stdout dan stderr merupakan piranti standar yang berfungsi untuk keluaran standar, dalam hal ini media untuk pengeluarannya biasanya adalah monitor (layar). Pada saat suatu program dieksekusi maka secara otomatis stdout akan dibuka oleh komputer
• Stdprn merupakan stream yang berfungsi untuk mencetak suatu data ke printer. Stream ini akan menunjuk ke printer paralel
• Pointer file (file*) merupakan streem yang berfungsi sebagai media penyimpanan data atau file
• Steram menyatakn piranti nalar ( logical device ) yang secara aktual dapat berupa terminal, disk drive atau printer
• Stdin merupakan piranti yang berfungsi untuk masukan standar, dalam hal ini biasanya media yang digunakan adalah keyboard. Pada saat suatu program dieksekusi maka secara otomatis stdin akan dibuka oleh komputer
• Stdout dan stderr merupakan piranti standar yang berfungsi untuk keluaran standar, dalam hal ini media untuk pengeluarannya biasanya adalah monitor (layar). Pada saat suatu program dieksekusi maka secara otomatis stdout akan dibuka oleh komputer
• Stdprn merupakan stream yang berfungsi untuk mencetak suatu data ke printer. Stream ini akan menunjuk ke printer paralel
• Pointer file (file*) merupakan streem yang berfungsi sebagai media penyimpanan data atau file
Jenis mode operasi file dalam pemrograman C
8. r/rt:
file dibuka hanya untuk dibaca.file harus sudah ada.
w/wt
file dibuka hanya untuk ditulis. File boleh belum ada. Bila file belum ada maka akan diciptakan
file baru. Bila file sudah ada, maka file akan dihapuskan terlebih dahulu.
a/at
file dibuka hanya untuk ditulis. Penulisan akan selalu dilakukan setelah data yang paling akhir. File boleh belum ada.
rt/rt+
file dibuka untuk dibaca dan ditulis (di-update). File harus sudah ada.
wt/wt-1
file dibuka untuk dibaca dan ditulis(di-update).file boleh belum ada.
at/at+
file dibuka untuk dibaca dan ditulis (di update).penulisan akan selalu dilakukan setelah data yang paling akhir.
rb
Merupakan file yang akan hanya dibaca, namun pemabacaan dilakukan dalam keadaan binary mode, dalam hal ini file yang akan dibaca haruslah sudah ada didalam disk. Pembacaan file dilakukan per byte/ per record.
wb
Menyatakan bahwa file baru diciptakan, penciptaan file akan dilakukan dalam keadaan binary mode. Selanjutnya operasi yang akan dilakukan terhadap file adalah opersasi perekam data. Seandainya file tersebut sudah ada pada disk, isinya akan terhapus
ab
Untuk membuka file yang sudah ada pada disk dalam keadaan binary mode dan operasi yang akan dilakukan adalah operasi penambahan data pada file. Data baru akan ditempatkan dibagian belakan dari file. Seandainya file belum ada, secara otomatis file akan diciptakan terlebih dahulu.
rb+
Untuk membuka file yang sudah ada dalam keadaan binary mode, dan operasi yang dilakukan berupa pembacaan serta penulisan dalam keadaan binary mode.
wb+
Untuk membuka file dengan tujuan untuk pembacaan atau penulisan dalam keadaan binary mode. Jika file sudah ada maka isinya akan terhapus.
ab+
Untuk membuka file dalam keadaan binary mode, dengan operasi yang dapat dilakukan berupa perekaman maupun pembacaan dalam keadaan binary mode. Jika file sudah ada isinya akan terhapus.
file dibuka hanya untuk dibaca.file harus sudah ada.
w/wt
file dibuka hanya untuk ditulis. File boleh belum ada. Bila file belum ada maka akan diciptakan
file baru. Bila file sudah ada, maka file akan dihapuskan terlebih dahulu.
a/at
file dibuka hanya untuk ditulis. Penulisan akan selalu dilakukan setelah data yang paling akhir. File boleh belum ada.
rt/rt+
file dibuka untuk dibaca dan ditulis (di-update). File harus sudah ada.
wt/wt-1
file dibuka untuk dibaca dan ditulis(di-update).file boleh belum ada.
at/at+
file dibuka untuk dibaca dan ditulis (di update).penulisan akan selalu dilakukan setelah data yang paling akhir.
rb
Merupakan file yang akan hanya dibaca, namun pemabacaan dilakukan dalam keadaan binary mode, dalam hal ini file yang akan dibaca haruslah sudah ada didalam disk. Pembacaan file dilakukan per byte/ per record.
wb
Menyatakan bahwa file baru diciptakan, penciptaan file akan dilakukan dalam keadaan binary mode. Selanjutnya operasi yang akan dilakukan terhadap file adalah opersasi perekam data. Seandainya file tersebut sudah ada pada disk, isinya akan terhapus
ab
Untuk membuka file yang sudah ada pada disk dalam keadaan binary mode dan operasi yang akan dilakukan adalah operasi penambahan data pada file. Data baru akan ditempatkan dibagian belakan dari file. Seandainya file belum ada, secara otomatis file akan diciptakan terlebih dahulu.
rb+
Untuk membuka file yang sudah ada dalam keadaan binary mode, dan operasi yang dilakukan berupa pembacaan serta penulisan dalam keadaan binary mode.
wb+
Untuk membuka file dengan tujuan untuk pembacaan atau penulisan dalam keadaan binary mode. Jika file sudah ada maka isinya akan terhapus.
ab+
Untuk membuka file dalam keadaan binary mode, dengan operasi yang dapat dilakukan berupa perekaman maupun pembacaan dalam keadaan binary mode. Jika file sudah ada isinya akan terhapus.
Subscribe to:
Posts (Atom)
