Anda di halaman 1dari 33

TEKNIK INFORMATIKA

UNIBBA
K A
I F
R A
G
ER
T U
M P
KO

PERTEMUAN KE-3
(3 SKS – 16 X PERTEMUAN) Yaya Suharya, S.Kom., M.T.
Rabu, 22 Maret 2023 Objek & Output Primitif yaya.unibba@gmail.com
14:00-15:40 (Kelas 4A) yayasuharya@unibba.ac.id
19:00-21:30 (Kelas 4B) NIDN. 0407047706
HP/WA. 08112031124
NOW
Object & Output Primitif
Output Primitives in Computer Graphics ~xRay Pixy
https://www.youtube.com/watch?v=qxcCWrm5AbU

Output primitives
https://www.youtube.com/watch?v=iqUgon0sdp0
Materi

• Pendahuluan
• Apa itu Objek Primitive
• Bentuk Sederhana Graphic
• Algoritma Menggambar
• Algoritma Pembentukan Lingkaran & Ellips
• Kesimpulan
• Latihan
• Tugas
Pendahuluan

▶ Output/Grafis primitive
merupakan bentuk geometri dasar
yang sering digunakan untuk
membuat suatu bentuk objek
yang kompleks.
▶ Titik dan garis lurus adalah
bentuk geometri paling sederhana
dan komponen gambar.
Object Primitive

Gambar dapat dijelaskan dengan beberapa cara, bila


menggunakan raster display, gambar ditentukan oleh satu
set intensitas untuk posisi display pada display. Sedangkan
dengan scene tampilan gambar dengan loading array
dari pixel ke dalam buffer atau dengan
mengkonversikan scan dari grafik geometri tertentu ke
dalam pola pixel.
Object Primitive
Paket grafika dilengkapi
dengan fungsi untuk
menyatakan scene dalam
bentuk struktur. Paket
pemrograman grafika
dilengkapi dengan fungsi
untuk menyatakan scene
dalam bentuk struktur dasar
geometri yang disebut output
primitif, dengan memasukkan
output primitif tersebut
sebagai struktur yang lebih
kompleks.
Bentuk sederhana Grafik

Titik Garis Lingkaran Poligon


Primitif Grafis
Algoritma menggambar garis
• Ide dasar
• Lebih lanjut akan diperoleh:
y
y  m.x, x 
m
 Jika |m| < 1, maka
 x di set mulai dari 1
 y dihitung berdasarkan ekspresi sebelumnya
Algoritma menggambar garis
 Jika |m| > 1, maka
 y di set mulai dari 1
 x dihitung berdasarkan ekspresi sebelumnya
 Jika |m| = 1, maka
 x = y di set mulai dari 1
 Dihasilkan garis lurus
Algoritma menggambar garis
• Ide dasar
• Secara matematis, fungsi persamaan garis
adalah: y = mx + b, di mana
• m  slope atau gradien
• b  perpotongan dengan sumbu y
• Jika diberikan dua titik awal dan akhir dari suatu
garis yaitu (x1, y1) dan (x2, y2) , maka diperoleh :
y2  y1 y
m  , b  y1  m.x1
x2  x1 x
Algoritma menggambar garis

• Algoritma DDA (Digital Differential


Analyzer)
• Algoritma Bresenham
DDA (Digital Diffrential
Analyser)
• Inti dasarnya, bagaimana menempatkan piksel pada
titik awal sampai akhir yang telah diberikan.
• Berdasar pada perhitungan tingkat perubahan
terhadap koordinat x atau terhadap koordinat y.
• Jika |m| < 1, maka
• Piksel koordinat y ditentukan dengan menentukan x = 1 dan
yk+1 = yk + m

• Jika |m| > 1, maka


• Piksel koordinat y ditentukan dengan menentukan y = 1 dan
xk+1 = xk + 1/m
Algoritma DDA
1. Diberikan dua titik (x1, y1) dan (x2, y2)
2. Mulai pada titik awal dan hitung gradiennya
3. Gambar titik
4. Melangkah ke kanan 1 piksel dan ke atas
(m*perubahan pada x) piksel.
1. Jika perubahan terhadap x = 1
2. Maka akan naik sebanyak m piksel

5. Gambar piksel
6. Ulangi langkah 4, sampai ditemukan titik ke akhir.
Pseudo code Algoritma DDA
versi x
1. Let x = x1; y = y1 dan m = (y2-y1)/(x2-x1)
2. Draw pixel (x, y)
3. While (x < x2)
{
X = x + 1;
Y=y+m
Draw pixel (round (x), round (y));
}
Pseudo code Algoritma DDA
versi y
1. Let x = x1; y = y1 dan m = (x2-x1)/(y2-y1)
2. Draw pixel (x, y)
3. While (y < y2)
{
y = y + 1;
x=x+m
Draw pixel (round (x), round (y));
}
Algoritma Bresenham
Algoritma Bresenham
Penggambaran garis yang
efisien dengan menggunakan
perhitungan incremental
integer.
Prinsip:
▶ Sumbu vertikal
memperlihatkan posisi scan
line
▶ Sumbu horizontal
memperlihatkan kolom pixel
▶ Pada tiap langkah,
penentuan pixel
selanjutnya didasari
oleh parameter integer
Algoritma Bresenham
Algoritma Pembentukan Lingkaran
▶ Lingkaran merupakan objek grafik yang
paling sering digunakan pada grafik
sederhana
▶ Lingkaran dapat didefinisikan sebagai
kumpulan titik
yang memiliki jarak r dari posisi pusat
(xc,yc)

Persamaan lingkaran dengan titik pusat


(xc,yc) dan radius r dapat
dispesifikasikan menggunakan koordinat
rectangular berikut:
(x – xc)2 + (y-yc)2 = r2
Algoritma Pembentukan Ellips
Merupakan salah satu objek grafis dengan persamaan
koordinat rectangular sebagai berikut:

Dan persamaan polar:

Penggambaran garis yang efisien dengan menggunakan


perhitungan incremental integer.

Prinsip:
▶ Sumbu vertikal memperlihatkan posisi scan line
▶ Sumbu horizontal memperlihatkan kolom pixel
▶ Pada tiap langkah, penentuan pixel selanjutnya
didasari oleh parameter integer
Kesimpulan
 Objek grafik standar yang dibahas pada bab ini adalah titik, garis,
lingkaran, dan ellips
 Algoritma untuk menggambarkan garis adalah Bresenham dan
DDA
 Algoritma DDA adalah suatu algoritma pengkonversian suatu
himpunan pixel menjadi suatu garis
 Algoritma Bresenham merupakan algoritma penggambaran garis
yang efisien dengan menggunakan perhitungan incremental integer
 Algoritma penggambaran lingkaran Bresenham membagi lingkaran
menjadi 8 bagian yang simetris sehingga pixel yang perlu dihitung
hanya pada bagian 1 saja
 Algoritma penggambaran ellips membagi ellips menjadi 2 region
Latihan
1. Tentukan koordinat titik-titik dijital untuk garis yang dibentuk oleh
dua titik sebagai berikut:
a. (-5,5) dan (1,2)
b. (4,3) dan (8,-2)
c. (2,3) dan (5,3)
d. (2,3) dan (2,5)
e. (6,4) dan (2,1)

2. Gunakan algoritma DDA dan Bresenham untuk menentukan titik-


titik dijital antara
a. (-3,3) dan (-1,3)
b. (7,-1) dan (-4,-6)
c. (-3,3) dan (-1,-3)
Tugas Kelompok
• Implementasikan gambar objek, misal rumah, buku,
mobil, motor, dll
• Jelaskan langkah-langkah program anda pada objek
gambar objek, misal rumah, buku, mobil, motor, dll
tersebut (keterangan dalam program)
• Kumpulkan maksimal minggu depan dalam bentuk
soft copy kirim ke : yaya.unibba@gmail.com (1
minggu)
• Menggunakan bahasa pemrograman atau aplikasi
yang disesuaikan dengan kebutuhan
NEXT
Viewing dan Clipping 2D

Anda mungkin juga menyukai