You are on page 1of 4

Mata Kuliah : Pengolahan Citra Kelas : B - Sore

Pengampu : Rastri Prasthivi, S.Kom, M.Kom NIM : G. 231. 15. 0193
Keterangan : Praktikum Bab 2 Nama Mahasiswa : Taufich Rizqi F

FORM DESIGN

Koding lengkap dari program dan keterangan nya.
//library atau references untuk memanggil fungsi-fungsi syntac c# agar program
bisa dijalankan
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

//deklarasi nama dari project program
namespace Project_Flip_Vertical_dan_Horizontal
{
public partial class Form1 : Form
{
//variabel untuk meload gambar dalam bentuk bitmap(x dan y)
Bitmap objBitmap;
Bitmap objBitmap1;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
DialogResult d = openFileDialog1.ShowDialog(); if (d ==
DialogResult.OK)
{
//statment untuk membuat objek bitmap baru dari file gambar pada
disk komputer,
//dan menetapkan di properti Picturebox.Image
objBitmap = new Bitmap(openFileDialog1.FileName); pictureBox1.Image
= objBitmap;
}
}
//statment dari dialogbox button copy
private void button2_Click_1(object sender, EventArgs e)
{
objBitmap1 = new Bitmap(objBitmap);
//perulangan untuk lebar gambar
//int x, y; variabel dng tipe data interger, variabel x untuk lebar
gambar, variabel y untuk tinggi gambar
for (int x = 0; x < objBitmap.Width; x++)
{
//perulangan untuk tinggi gambar
for (int y = 0; y < objBitmap.Height; y++)
{
//w; variabel warna,mengambil warna pixel objek gambar dari
lebar dan tinggi gambar
Color w = objBitmap.GetPixel(x, y);
objBitmap1.SetPixel(x, y, w);
}
pictureBox2.Image = objBitmap1;
}
}
//statment dari dialogbox flip image horizontal
private void button3_Click(object sender, EventArgs e)
{
//mengisi objek gambar dari picture box2 dengan gambar awal dari
picture box1
objBitmap1 = new Bitmap(objBitmap);
for (int x = 0; x < objBitmap.Width; x++)
{
for (int y = 0; y < objBitmap.Height; y++)
{
//w; variabel warna,mengambil warna pixel objek gambar, dan
merubah posisi gambar melalui variabel lebar(x) dikurangi 1 untuk menyesuaikan
indexnya
Color w = objBitmap.GetPixel(x, y);
objBitmap1.SetPixel(objBitmap.Width - 1 - x, y, w);
}
pictureBox2.Image = objBitmap1;
}
}
//statment dari dialog box flip image vertical
private void button4_Click(object sender, EventArgs e)
{
objBitmap1 = new Bitmap(objBitmap);
for (int x = 0; x < objBitmap.Width; x++)
{
for (int y = 0; y < objBitmap.Height; y++)
{
//w; variabel warna,mengambil warna pixel objek gambar, dan
merubah posisi gambar melalui variabel tinggi(y) dikurangi 1 untuk menyesuaikan
indexnya
Color w = objBitmap.GetPixel(x, y);
objBitmap1.SetPixel(x, objBitmap.Height - 1 - y, w);
}
pictureBox2.Image = objBitmap1;
}
}
}
}

Penjelasan cara kerja dari Source Code Load Image
private void button1_Click(object sender, EventArgs e)
{
DialogResult d = openFileDialog1.ShowDialog(); if (d ==
DialogResult.OK)
{
//statment untuk membuat objek bitmap baru dari file gambar pada
disk komputer,
//dan menetapkan di properti Picturebox.Image
objBitmap = new Bitmap(openFileDialog1.FileName);
pictureBox1.Image = objBitmap;
}
}

Source kode tersebut digunakan untuk membuka file gambar, ketika dialog telah ditampilkan
kemudian membuat object Bitmap yang ditampung dalam variable objBitmap. Object bitmap
ini adalah file yang diambil dari directori menggunakan dialog openfile yang tadi dibuka.

Penjelasan cara kerja dari Source Code Copy Image

Selanjutnya ditampilkan pada picture box.
//statment dari dialogbox button copy
private void button2_Click_1(object sender, EventArgs e)
{
objBitmap1 = new Bitmap(objBitmap);
//perulangan untuk lebar gambar
//int x, y; variabel dng tipe data interger, variabel x untuk lebar
gambar, variabel y untuk tinggi gambar
for (int x = 0; x < objBitmap.Width; x++)
{
//perulangan untuk tinggi gambar
for (int y = 0; y < objBitmap.Height; y++)
{
//w; variabel warna,mengambil warna pixel objek gambar dari
lebar dan tinggi gambar
Color w = objBitmap.GetPixel(x, y);
objBitmap1.SetPixel(x, y, w);
}
pictureBox2.Image = objBitmap1;
}

}
Source code tersebut digunakan untuk menduplikat fie gambar bitmap, ketika image telah
ditampilkan di pictureBox1 dalam file bitmap kemudian menjadikan nya menjadi objek
bitmap baru yang diambil dari dialog pictureBox1

Penjelasan cara kerja dari source code flip image vertical
//statment dari dialog box flip image vertical
private void button4_Click(object sender, EventArgs e)
{
objBitmap1 = new Bitmap(objBitmap);
for (int x = 0; x < objBitmap.Width; x++)
{
for (int y = 0; y < objBitmap.Height; y++)
{
//w; variabel warna,mengambil warna pixel objek gambar, dan
merubah posisi gambar melalui variabel tinggi(y) dikurangi 1 untuk menyesuaikan
indexnya
Color w = objBitmap.GetPixel(x, y);
objBitmap1.SetPixel(x, objBitmap.Height - 1 - y, w);
}
pictureBox2.Image = objBitmap1;
}
}

mengubah susunan koordinat y menjadi urutan dari belakang, yakni dengan mengambil
jumlah seluruh pixel y dan dikurangi sesuai loopingnya dan diminus 1 untuk menyesuaikan
index nya.

Tampilan Aplikasi dari Program

LOAD GAMBAR COPY GAMBAR

FLIP HORIZONTAL FLIP VERTICAL