Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
TRANSFORMASI
2
Transformasi Translasi objek dipindah kelokasi baru tanpa mengubah bentuk ukuran atau orientasinya. Skala objek diperbesar/diperkecil. Rotasi/Putar objek diputar terhadap titik tertentu tanpa mengubah bentuk dan ukurannya.
3
contoh skala translasi before rotasi after
4
Pengenalan Konsep yang terpenting dalam grafika komputer adalah Transformasi Affine. Pada dasarnya, transformasi ini adalah memindahkan objek tanpa merusak bentuk.
5
Transformasi Affine Transformasi Affine mempertahankan garis dan bidang. – Mempertahankan keliniearan dan kedatarannya Garis tetap sebagai garis Bidang tetap datar
6
. . . Transformasi Affine mempertahankan garis dan bidang. – Jika 2 garis paralel dikenakan transformasi yang sama maka hasil setelah transformasi tetap juga paralel. – Demikian juga untuk bidang
7
glTranslated Akan ditranslasikan bangunan persegi dengan glTranslated( x, y, z) dan warnanya diganti dengan warna biru void myDisplay(void) { glColor3f (0.0, 1.0, 0.0); glRectf (300.0, 200.0, 400.0, 300.0); glColor3f (0.0, 0.0, 1.0); glPushMatrix(); glTranslated(150,150,0); glRectf (300.0, 200.0, 400.0, 300.0); glPopMatrix(); glFlush (); }
8
Coding : #include <windows.h> #include <gl/Gl.h> #include <gl/glut.h> void myInit(void) { gluOrtho2D(0.0, 640.0, 0.0, 480.0); } void myDisplay(void) glColor3f (0.0, 1.0, 0.0); glRectf (300.0, 200.0, 400.0, 300.0); glColor3f (0.0, 0.0, 1.0); glPushMatrix(); glTranslated(150,150,0); glPopMatrix(); glFlush (); void main(int argc, char** argv) glutInit(&argc, argv); glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); glutInitWindowSize(640,480); glutInitWindowPosition(100, 150); glutCreateWindow("transformasi"); glutDisplayFunc(myDisplay); myInit(); glutMainLoop();
10
glRotate Bangun persegi diputar glRotate(degrees, x, y, z); , warnanya diganti dengan warna merah. void myDisplay(void) { glColor3f (0.0, 0.0, 1.0); glRectf (300.0, 200.0, 400.0, 300.0); glColor3f (1.0, 0.0, 0.0); glPushMatrix(); glRotatef(30.0f, 0.0f, 0.0f, 1.0f); glRectf (300.0, 200.0, 400.0, 300.0); glPopMatrix(); glFlush (); }
11
Coding : #include "stdafx.h" #include <windows.h> #include <gl/Gl.h> #include <gl/glut.h> void myInit(void) { gluOrtho2D(0.0, 640.0, 0.0, 480.0); } void myDisplay(void) glColor3f (0.0, 0.0, 1.0); glRectf (300.0, 200.0, 400.0, 300.0); glColor3f (1.0, 0.0, 0.0); glPushMatrix(); glRotatef(30.0f, 0.0f, 0.0f, 1.0f); glPopMatrix(); glFlush (); void main(int argc, char** argv) glutInit(&argc, argv); glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); glutInitWindowSize(640,480); glutInitWindowPosition(100, 150); glutCreateWindow("transformasi"); glutDisplayFunc(myDisplay); myInit(); glutMainLoop();
13
glScaled Atau diskala glScaled(x, y, z); dan warnanya diganti dengan kuning. void myDisplay(void) { glColor3f (0.0, 0.0, 1.0); glRectf (300.0, 200.0, 400.0, 300.0); glColor3f (1.0, 1.0, 0.0); glPushMatrix(); glScalef(0.5f, 0.5f, 1.0f); glRectf (300.0, 200.0, 400.0, 300.0); glPopMatrix(); glFlush (); }
14
Coding : #include "stdafx.h" #include <windows.h> #include <gl/Gl.h> #include <gl/glut.h> void myInit(void) { gluOrtho2D(0.0, 640.0, 0.0, 480.0); } void myDisplay(void) glColor3f (0.0, 0.0, 1.0); glRectf (300.0, 200.0, 400.0, 300.0); glColor3f (1.0, 1.0, 0.0); glPushMatrix(); glScalef(0.5f, 0.5f, 1.0f); glPopMatrix(); glFlush (); void main(int argc, char** argv) glutInit(&argc, argv); glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); glutInitWindowSize(640,480); glutInitWindowPosition(100, 150); glutCreateWindow("transformasi"); glutDisplayFunc(myDisplay); myInit(); glutMainLoop();
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.