GRAFIKA KOMPUTER
Processing
Processing adalah bahasa pemrograman dan lingkungan pemrograman (development environment) open source untuk memprogram gambar, animasi dan interaksi. Digunakan oleh pelajar, seniman, desainer, peneliti, dan hobbyist untuk belajar, membuat prototipe, dan produksi. Processing digunakan untuk mengajarkan dasar-dasar pemrograman komputer dalam konteks rupa dan berfungsi sebagai buku sketsa perangkat lunak (software) dan tool produksi profesional. Processing mengaitkan konsep software pada prinsip-prinsip bentuk rupa, gerak, dan interaksi. Processing mengintegrasikan suatu bahasa pemrograman, lingkungan pemrograman, dan metodologi pengajaran ke dalam sistem terpadu.
Processing adalah bahasa pemrograman dan lingkungan pemrograman (development environment) open source untuk memprogram gambar, animasi dan interaksi. Digunakan oleh pelajar, seniman, desainer, peneliti, dan hobbyist untuk belajar, membuat prototipe, dan produksi. Processing digunakan untuk mengajarkan dasar-dasar pemrograman komputer dalam konteks rupa dan berfungsi sebagai buku sketsa perangkat lunak (software) dan tool produksi profesional. Processing mengaitkan konsep software pada prinsip-prinsip bentuk rupa, gerak, dan interaksi. Processing mengintegrasikan suatu bahasa pemrograman, lingkungan pemrograman, dan metodologi pengajaran ke dalam sistem terpadu.
Membuat Translasi, Skala dan Rotasi
=TRANSLASI=Translasi adalah memindahkan suatu objek sepanjang garis lurus dari suatu lokasi koordinat tertentu ke lokasi yang lain. Translasi dilakukan dengan penam-bahan translasi pada suatu titik koordinatdengan translation vector atau shift vector, yaitu (tx, ty), dimana :
- tx : translasi vector sumbu x
- ty : translasi vector sumbu y
Koordinat baru titik yang ditranslasi
dapat diperoleh dengan menggunakan rumus :
x’ = x + tx
y’ = y + ty
Dimana (x, y) adalah
koordinat asal suatu objek sedangkan (x’, y’) koordinat baru objek setelah
ditranslasi.
Contoh :
Untuk menggambarkan translasi suatu objek yang berupa segitiga dengan koordinat A (10,10), B (30,10), dan C(10,30) dengan
translation vector (10,20), pertama tama dihitung koordinat hasil translasi
satu demi satu.
Diketahui :
- TVektor = (10,20)
- Titik B(30,10)
- Titik C (10,30)
Jawab :
Titik A (10,10)
x’= (10+10) = 20
y’= (10+20) = 30
Hasil translasi Titik A’ = (20,30)
Titik B(30,10)
x’= (30+10) = 40
y’= (10+20) = 30
Hasil translasi Titik B’ = (40,30)
Titik C (10,30)
x’= (10+10) = 20
y’= (30+20) = 50
Hasil translasi Titik C’ = (20,50)
Listing translasi yang digunakan dalam
program Processing :
void setup()
{
size(300,300);
background(255);
noStroke();
beginShape(TRIANGLES);
fill(220);
vertex(10,10);
vertex(30,10);
vertex(10,30);
fill(255);
vertex(10+10,10+20);
vertex(30+10,30+20);
vertex(10+10,30+20);
fill(128);
pushMatrix();
translate(10,20);
vertex(10,20);
vertex(30,10);
vertex(10,30);
popMatrix();
endShape();
}
Tampilan dari hasil listing translasi
diatas :
=SKALA=
sx
= skala factor untuk sumbu x
sy =
skala factor untuk sumbu y.
Koordinat
baru titik yang diskala dapat diperoleh dengan:
x’ = x . sx
y’ = y . sy
Skala factor sx dan sy dapat diberikan sembarang nilai positif. Nilai lebih dari 1
menandakan bahwa sebuah objek diper-besar sedang nilai nilai kurang dari 1
menunjukkan bahwa objek diperkecil.
Contoh :
Untuk menggambarkan skala suatu objek yang merupakan segi
empat dengan koordinat A(10,10), B(30,10), C(30,20) dan D (10,20)
diskala dengan skala factor (3,2), pertama-tama dihitung koordinat hasil
skala satu demi satu.
Diketahui :
- SVektor = (3,2)
- Titik A (10,10)
- Titik B (30,10)
- Titik C (30,20)
- Titik D (10,20)
Jawab :
Titik A
(10,10)
x’=
(10.3) = 30
y’=
(10.2) = 20
Hasil
skalaTitik A’ = (30,20)
Titik B
(30,10)
x’=
(30.3) = 90
y’=
(10.2) = 20
Hasil
skalaTitik B’ = (90,20)
Titik C
(30,20)
x’=
(30.3) = 90
y’=
(20.2) = 40
Hasil
skalaTitik C’ = (90,40)
Titik D
(10,20)
x’=
(10.3) = 30
y’=
(20.2) = 40
Hasil
skala titik C’ = (30,40)
Listing skala yang digunakan dalam program Processing :
void
setup()
{
size(400,400);
background(255);
stroke(128);
rect(10,
30, 30, 10);
stroke(0);
pushMatrix();
scale(3.2);
rect(10,
30, 30, 10);
popMatrix();
} Tampilan dari hasil listing skala
diatas :=ROTASI=
Rotasi dua dimensi pada suatu objek akan memindahkan objek tersebut menurut garis melingkar. Untuk melakukanrotasi diperlukan sudut rotasi θ dan pivot point (xp,yp). Nilai positif dari sudut rotasi menentukan arah rotasi berlawanan dengan arah jarum jam. Sedangkan sudut rotasi negative memutar objek searah dengan jarum jam.
Rotasi
suatu titik terhadap pivot point (xp, yp) menggunakan bentuk trigonemetri, sebagai
berikut:
x’ = xp
+ (x – xp) cos θ
– (y – yp) sin θ
y’ = yp + (x – xp) sin θ + (y – yp) cos θ
Contoh :
Untuk menggambarkan rotasi suatu objek yang merupakan segitiga dengan
koordinat A(10,10), B(30,10), dan C(10,30 dirotasi
dengan sudut rotasi 300, terhadap titik pusat koordinat
cartesian (10,10).
Listing yang digunakan pada program Processing:
Keterangan :
Untuk aplikasi Processing bisa didownload disini....
Nama : Rendy Rolyandely
Nim : 3101 09 02 1273
STMIK Banjarbaru
Diketahui:
- Xp=10
- Yp=10
- Rvektor= (10,15)
- Titik A = (10,10)
- Titik B = (30,10)
- Titik C = (10,30)
Jawab :
Titik A = (10,10)
x’= 10+(10-10)cos 300 – (10-10)sin 300
= 10+(0) . 0,9 – (0) . 0,5
= 10
y’= 10+(10-10)sin 300 + (10-10)cos 300
= 10+(0) . 0,5 – (0) .
0,9
= 10
Hasil dari rotasi titik
A’= (10,10)
Titik B = (30,10)
x’= 10+(30-10)cos 300 – (10-10)sin 300
= 10+(20) . 0,9 – (0) .
0,5
= 28
y’= 10+(30-10)sin 300 + (10-10)cos 300
= 10+(20) . 0,5 – (0) .
0,9
= 20
Hasil dari rotasi titik
B’= (28,20)
Titik C = (10,30)
x’= 10+(10-10)cos 300 – (30-10)sin 300
= 10+(0) . 0,9 – (20) .
0,5
= 0
y’= 10+(10-10)sin 300 + (30-10)cos 300
= 10+(0) . 0,5 – (20) .
0,9
= 28
Hasil dari rotasi titik
C’= (0 ,28)
Listing yang digunakan pada program Processing:
void
setup()
{
size(200,200);
background(255);
smooth();
fill(220);
noStroke();
beginShape(TRIANGLES);
vertex(10,10);
vertex(30,10);
vertex(10,30);
stroke(255,0,0);
vertex(10,10);
vertex(28,20);
vertex(0,28);
pushMatrix();
translate(10,10);
rotate(radians(30));
fill(0);
popMatrix();
endShape();
}
Tampilan dari hasil listing rotasi
diatas :
Keterangan :
Untuk aplikasi Processing bisa didownload disini....
Nama : Rendy Rolyandely
Nim : 3101 09 02 1273
STMIK Banjarbaru
0 komentar:
Posting Komentar