A. Latar Belakang Grafkom
Grafik Komputer adalah suatu ilmu komputer yang berkaitan dengan pembuatan dan manipulasi gambar dengan cara digital. Bentuk sederhana nya ada grafik Komputer 2D dan berkembang menjadi grafik komputer 3D.
Pengolahan citra ialah salah satu cabang ilmu informatika, pengolahan citra suatu usaha untuk melakukan transformasi citra atau gambar menjadi citra lain dengan suatu teknik tertentu.
Jadi menurut saya Grafik Komputer dan Pengolahan Citra, salah satu ilmu komputer yang menjelaskan tentang manipulasi gambar dengan cara digital, grafik 2D dan 3D, juga mengolah suatu citra atau gambar, menjadi citra lain dengan teknik tertentu.
Jadi menurut saya Grafik Komputer dan Pengolahan Citra, salah satu ilmu komputer yang menjelaskan tentang manipulasi gambar dengan cara digital, grafik 2D dan 3D, juga mengolah suatu citra atau gambar, menjadi citra lain dengan teknik tertentu.
A. Manfaat
Contoh Grafik Komputer :
1. Hiburan , seperti film animasi dengan grafik komputer yang bagus.
2. Pendidikan, permainan untuk pendidikan mengunakan grafik computer yang menarik di lihat.
3. karya seni, Hasil dapat berupa kartun, animasi, logo, lukisan abstrak, dsketsa dan lain sebagainya.
B. Tujuan
1. Menyelesaikan Ujian Akhir Semester matakuliah Grafika Komputer semester 2.
2. Mahasiswa mampu mengimplementasikan fungsi dari project tersebut dengan menggunakan bahasa pemrograman Java Neatbeans.
C. Tentang Program
Penulis membuat Segitiga 3D dengan OpenGL menggunakan aplikasi Java Neatbeans, dalam program ini penulis menggunakan OpenGL yang mana dalam program ini user harus menginputkan sofware openGl-nya agar nantinya program bisa dijalankan. Atau bisa juga menggunakan software 3D dengan menambahkan di libraries-nya.
D. Source Code Program
package org.yourorghere;
import com.sun.opengl.util.Animator;
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.media.opengl.GL;
import javax.media.opengl.GLAutoDrawable;
import javax.media.opengl.GLCanvas;
import javax.media.opengl.GLEventListener;
import javax.media.opengl.glu.GLU;
import java.awt.color.*;
/**
* SimpleJOGL.java <BR>
* author: Brian Paul (converted to Java by Ron Cemer and Sven Goethel) <P>
*
* This version is equal to Brian Paul's version 1.2 1999/10/21
*/
public class SimpleJOGL implements GLEventListener {
public static void main(String[] args) {
Frame frame = new Frame("SAHRUL GUNAWAN 130403010045");
GLCanvas canvas = new GLCanvas();
canvas.addGLEventListener(new SimpleJOGL());
frame.add(canvas);
frame.setSize(500, 350);
final Animator animator = new Animator(canvas);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
// Run this on another thread than the AWT event queue to
// make sure the call to Animator.stop() completes before
// exiting
new Thread(new Runnable() {
public void run() {
animator.stop();
System.exit(0);
}
}).start();
}
});
// Center frame
frame.setLocationRelativeTo(null);
frame.setVisible(true);
animator.start();
}
private float r;
public void init(GLAutoDrawable drawable) {
// Use debug pipeline
// drawable.setGL(new DebugGL(drawable.getGL()));
GL gl = drawable.getGL();
System.err.println("INIT GL IS: " + gl.getClass().getName());
// Enable VSync
gl.setSwapInterval(1);
// Setup the drawing area and shading mode
gl.glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
gl.glShadeModel(GL.GL_SMOOTH); // try setting this to GL_FLAT and see what happens.
}
public void reshape(GLAutoDrawable drawable, int x, int y, int width, int height) {
GL gl = drawable.getGL();
GLU glu = new GLU();
if (height <= 0) { // avoid a divide by zero error!
height = 1;
}
final float h = (float) width / (float) height;
gl.glViewport(0, 0, width, height);
gl.glMatrixMode(GL.GL_PROJECTION);
gl.glLoadIdentity();
glu.gluPerspective(45.0f, h, 1.0, 20.0);
gl.glMatrixMode(GL.GL_MODELVIEW);
gl.glLoadIdentity();
}
public void display(GLAutoDrawable drawable) {
GL gl = drawable.getGL();
// Clear the drawing area
gl.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
// Reset the current matrix to the "identity"
gl.glLoadIdentity();
// Move the "drawing cursor" around
gl.glTranslatef(-1.5f, 0.0f, -5.0f);
// Drawing Using Triangles
/*gl.glBegin(GL.GL_TRIANGLES);
gl.glColor3f(1.0f, 0.0f, 0.0f); // Set the current drawing color to red
gl.glVertex3f(0.0f, 1.0f, 0.0f); // Top
gl.glColor3f(0.0f, 1.0f, 0.0f); // Set the current drawing color to green
gl.glVertex3f(-1.0f, -1.0f, 0.0f); // Bottom Left
gl.glColor3f(0.0f, 0.0f, 1.0f); // Set the current drawing color to blue
gl.glVertex3f(1.0f, -1.0f, 0.0f); // Bottom Right
// Finished Drawing The Triangle
gl.glEnd();
// Move the "drawing cursor" to another position
gl.glTranslatef(3.0f, 0.0f, 0.0f);
// Draw A Quad
gl.glBegin(GL.GL_QUADS);
gl.glColor3f(0.5f, 0.5f, 1.0f); // Set the current drawing color to light blue
gl.glVertex3f(-1.0f, 1.0f, 0.0f); // Top Left
gl.glVertex3f(1.0f, 1.0f, 0.0f); // Top Right
gl.glVertex3f(1.0f, -1.0f, 0.0f); // Bottom Right
gl.glVertex3f(-1.0f, -1.0f, 0.0f); // Bottom Left
// Done Drawing The Quad
gl.glEnd();*/
gl.glRotatef(r,0.0f, 0.0f, 0.1f);
gl.glBegin (GL.GL_QUADS);
gl.glColor3f (0.0f, 0.1f, 0.0f);
gl.glVertex3f (0.0f, 0.5f, 0.0f);
gl.glVertex3f (0.4f, 0.5f, 0.0f);
gl.glVertex3f (0.4f, 0.5f, 0.4f);
gl.glVertex3f (0.0f, 0.5f, 0.4f);
gl.glEnd();
gl.glBegin (GL.GL_TRIANGLES) ;
gl.glColor3f(1.0f, 0.0f, 0.0f); //r
gl.glVertex3f (0.0f, 0.5f, 0.0f);
gl.glColor3f(0.0f, 0.0f, 1.0f); //b
gl.glVertex3f (0.4f, 0.5f, 0.0f);
gl.glColor3f(0.0f, 1.0f, 0.0f); //g
gl.glVertex3f (0.2f, 0.0f, 0.2f);
gl.glColor3f(1.0f, 0.0f, 0.0f); //r
gl.glVertex3f (0.4f, 0.5f, 0.0f);
gl.glColor3f(0.0f, 0.0f, 1.0f); //b
gl.glVertex3f (0.4f, 0.5f, 0.4f);
gl.glColor3f(0.0f, 1.0f, 0.0f); //g
gl.glVertex3f (0.2f, 0.0f, 0.2f);
gl.glColor3f(1.0f, 0.0f, 0.0f); //r
gl.glVertex3f (0.4f, 0.5f, 0.4f);
gl.glColor3f(0.0f, 0.0f, 1.0f); //b
gl.glVertex3f (0.0f, 0.5f, 0.4f);
gl.glColor3f(0.0f, 1.0f, 0.0f); //g
gl.glVertex3f (0.2f, 0.0f, 0.2f);
gl.glColor3f(1.0f, 0.0f, 0.0f); //r
gl.glVertex3f (0.0f, 0.5f, 0.4f);
gl.glColor3f(0.0f, 0.0f, 1.0f); //b
gl.glVertex3f (0.0f, 0.5f, 0.0f);
gl.glColor3f(0.0f, 1.0f, 0.0f); //g
gl.glVertex3f (0.2f, 0.0f,0.2f);
gl.glEnd ();
r++;
// Flush all drawing operations to the graphics card
gl.glFlush();
}
public void displayChanged(GLAutoDrawable drawable, boolean modeChanged, boolean deviceChanged) {
}
}
- Tampilan Setelah Di Run
0 comments:
Post a Comment
Jadilah Orang yang Bermanfaat Bagi Orang Lain.