Untuk tugas 5 kali ini saya mempostingkan tentang Pembuatan Kubus Dengan Fungsi Translasi Rotasi & Transformasi yang dapat bergerak. Untuk kali ini saya coding tersebut menggunakan aplikasi basic4gl. Dibawah ini coding tersebut :
sub KUBUS1()
glBegin(Gl_quads)
glcolor3f(1,1,0)
glVertex3f(-1,-1,-1)
glVertex3f( 1,-1,-1)
glVertex3f( 1, 1,-1)
glVertex3f(-1, 1,-1)
glcolor3f(1,0,1)
glVertex3f(-1,-1,-1)
glVertex3f(-1,-1, 1)
glVertex3f(-1, 1, 1)
glVertex3f(-1, 1,-1)
glcolor3f(1,1,1)
glVertex3f( 1,-1, 1)
glVertex3f( 1,-1,-1)
glVertex3f( 1, 1,-1)
glVertex3f( 1, 1, 1)
glcolor3f(0,0,1)
glVertex3f(-1,-1,-1)
glVertex3f( 1,-1,-1)
glVertex3f( 1,-1, 1)
glVertex3f(-1,-1, 1)
glcolor3f(0,1,0)
glVertex3f(-1,-1, 1)
glVertex3f( 1,-1, 1)
glVertex3f( 1, 1, 1)
glVertex3f(-1, 1, 1)
glColor3f(0,1,1)
glVertex3f(-1, 1, 1)
glVertex3f(-1, 1,-1)
glVertex3f( 1, 1,-1)
glVertex3f( 1, 1, 1)
glend()
end sub
sub KUBUS2()
glBegin(Gl_quads)
glcolor3f(0,1,1)
glVertex3f(-1,-1,-1)
glVertex3f( 1,-1,-1)
glVertex3f( 1, 1,-1)
glVertex3f(-1, 1,-1)
glcolor3f(1,1,1)
glVertex3f(-1,-1,-1)
glVertex3f(-1,-1, 1)
glVertex3f(-1, 1, 1)
glVertex3f(-1, 1,-1)
glcolor3f(0,1,0)
glVertex3f( 1,-1, 1)
glVertex3f( 1,-1,-1)
glVertex3f( 1, 1,-1)
glVertex3f( 1, 1, 1)
glcolor3f(1,0,1)
glVertex3f(-1,-1,-1)
glVertex3f( 1,-1,-1)
glVertex3f( 1,-1, 1)
glVertex3f(-1,-1, 1)
glcolor3f(0,0,1)
glVertex3f(-1,-1, 1)
glVertex3f( 1,-1, 1)
glVertex3f( 1, 1, 1)
glVertex3f(-1, 1, 1)
glColor3f(1,0,0)
glVertex3f(-1, 1, 1)
glVertex3f(-1, 1,-1)
glVertex3f( 1, 1,-1)
glVertex3f( 1, 1, 1)
glend()
end sub
sub KUBUS3()
glBegin(Gl_quads)
glcolor3f(1,1,0)
glVertex3f(-1,-1,-1)
glVertex3f( 1,-1,-1)
glVertex3f( 1, 1,-1)
glVertex3f(-1, 1,-1)
glcolor3f(1,0,0)
glVertex3f(-1,-1,-1)
glVertex3f(-1,-1, 1)
glVertex3f(-1, 1, 1)
glVertex3f(-1, 1,-1)
glcolor3f(1,0,0)
glVertex3f( 1,-1, 1)
glVertex3f( 1,-1,-1)
glVertex3f( 1, 1,-1)
glVertex3f( 1, 1, 1)
glcolor3f(1,0,1)
glVertex3f(-1,-1,-1)
glVertex3f( 1,-1,-1)
glVertex3f( 1,-1, 1)
glVertex3f(-1,-1, 1)
glcolor3f(0,1,0)
glVertex3f(-1,-1, 1)
glVertex3f( 1,-1, 1)
glVertex3f( 1, 1, 1)
glVertex3f(-1, 1, 1)
glColor3f(0,0,1)
glVertex3f(-1, 1, 1)
glVertex3f(-1, 1,-1)
glVertex3f( 1, 1,-1)
glVertex3f( 1, 1, 1)
glend()
end sub
sub KUBUS4()
glBegin(Gl_quads)
glcolor3f(1,0,1)
glVertex3f(-1,-1,-1)
glVertex3f( 1,-1,-1)
glVertex3f( 1, 1,-1)
glVertex3f(-1, 1,-1)
glcolor3f(1,0,0)
glVertex3f(-1,-1,-1)
glVertex3f(-1,-1, 1)
glVertex3f(-1, 1, 1)
glVertex3f(-1, 1,-1)
glcolor3f(1,1,1)
glVertex3f( 1,-1, 1)
glVertex3f( 1,-1,-1)
glVertex3f( 1, 1,-1)
glVertex3f( 1, 1, 1)
glcolor3f(0,0,1)
glVertex3f(-1,-1,-1)
glVertex3f( 1,-1,-1)
glVertex3f( 1,-1, 1)
glVertex3f(-1,-1, 1)
glcolor3f(1,0,1)
glVertex3f(-1,-1, 1)
glVertex3f( 1,-1, 1)
glVertex3f( 1, 1, 1)
glVertex3f(-1, 1, 1)
glColor3f(0,1,0)
glVertex3f(-1, 1, 1)
glVertex3f(-1, 1,-1)
glVertex3f( 1, 1,-1)
glVertex3f( 1, 1, 1)
glend()
end sub
dim a#
while true
glClear(gl_color_buffer_bit or gl_depth_buffer_bit)
glLoadIdentity()
glTranslatef(0,0,-15)
glTranslatef(0,0,-5)
glrotatef(a#,a#,a#,a#)
KUBUS1()
glTranslatef(1,0,-5)
glrotatef(a#,a#,a#,a#)
KUBUS2()
glTranslatef(1,0,-5)
glrotatef(a#,a#,a#,a#)
KUBUS3()
glTranslatef(1,0,-5)
glrotatef(a#,a#,a#,a#)
KUBUS4()
SwapBuffers()
a# = a# + 0.1
wend
maka jika menggunakan coding tersebut maka akan muncul gambar seperti di bawah ini :
Jika ingin mendownload ciding tersebut silahkan anda download disini.
Minggu, 30 Juni 2013
Tugas 4 kali ini saya postingkan tentang Membuat Lingkaran Yang Berawal Dari Pixel Titik
Kali ini saya mempostingkan tentang Membuat Lingkaran Yang Berawal Dari Pixel Titik tetapi kali ini saya membuatnya melalui aplikasi basic4gl.
Dibawah ini lah source kodenya :
glMatrixMode(gl_Projection)
glPushMatrix()
glLoadIdentity()
glOrtho(0,WindowWidth(),WindowHeight(),0,-1,1)
glMatrixMode(gl_ModelView)
glPushMatrix()
glLoadIdentity()
glDisable(gl_depth_test)
dim Angle#
dim Radius#
dim CircleX#
dim CircleY#
dim X#
dim Y#
CircleX#=200
CircleY#=200
Radius#=100
for Angle# = 1 to 380
X# = CircleX# + CosD(Angle#) * Radius#
Y# = CircleY# + SinD(Angle#) * Radius#
glBegin(GL_POINTS)
glVertex2f(X#, Y#)
glEnd()
next
SwapBuffers()
maka akan muncul gambar seperti ini :
Jika ingin mendownload souce kodenya silahkan download disini.
Dibawah ini lah source kodenya :
glMatrixMode(gl_Projection)
glPushMatrix()
glLoadIdentity()
glOrtho(0,WindowWidth(),WindowHeight(),0,-1,1)
glMatrixMode(gl_ModelView)
glPushMatrix()
glLoadIdentity()
glDisable(gl_depth_test)
dim Angle#
dim Radius#
dim CircleX#
dim CircleY#
dim X#
dim Y#
CircleX#=200
CircleY#=200
Radius#=100
for Angle# = 1 to 380
X# = CircleX# + CosD(Angle#) * Radius#
Y# = CircleY# + SinD(Angle#) * Radius#
glBegin(GL_POINTS)
glVertex2f(X#, Y#)
glEnd()
next
SwapBuffers()
maka akan muncul gambar seperti ini :
Jika ingin mendownload souce kodenya silahkan download disini.
PKG Tugas 3 Tentang Flowchart 4 Bentuk Pembangkitan Pixels Dengan Algoritma DDA
Untuk tugas 3 kali ini saya mempostingkan tentang Flowchart 4 bentuk Pembangkitan Pixels Dengan Algoritma DDA. Di bawah ini adalah flowchartnya :
Method DADA:
Method DADA DOT :
Method DADA SRET :
Method DADA DOT SRET :
Seperti itulah flowchart tersebut anda juga bisa mendownloadnya disini.
Method DADA:
Method DADA DOT :
Method DADA SRET :
Method DADA DOT SRET :
Seperti itulah flowchart tersebut anda juga bisa mendownloadnya disini.
PKG Tugas2 Tentang pembuatan garis > Sret Titik & Garis Sret Yang di Buat Dengan Membangkitkan Pixels Titik Dengan Menggunakan Algoritma Bresenham.
Untuk tugas 2 kali ini saya postingkan tentang Pembuatan garis > Sret Titik & Garis Sret Yang di Buat Dengan Membangkitkan Pixels Titik Dengan Menggunakan Algoritma Bresenham. Tapi dalam Tugas kali ini kami membuatnya melalui dengan menggunak aplikasi c++. Berikut postingan saya kali ini :
Seperti ini isi codingnya :
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
#include <glut.h>
#include <math.h>
void layar(void)
{
glClearColor (0.0 ,0.0, 0.0, 0.0);
glMatrixMode (GL_PROJECTION);
gluOrtho2D (0.0, 300.0, 0.0, 300.0);
}
void titik (int x, int y)
{
glBegin(GL_POINTS);
glVertex2f (x, y);
glEnd();
glFlush();
}
void bresenham(int x1, int y1, int x2, int y2)
{
int dy = y2 - y1;
int dx = x2 - x1;
int stepx, stepy;
if(dy < 0) {
dy = -dy; stepy = -1;
}
else {
stepy = 1;
}
if(dx < 0) {
dx = -dx;
stepx = -1;
}
else {
stepx = 1;
}
dy <<= 1;
dx <<= 1;
titik(x1,y1);
if (dx > dy){
int fraction = dy - (dx >> 1);
while (x1 != x2){
if(fraction >= 0){
y1 += stepy;
fraction -= dx;
}
x1 += stepx;
fraction += dy;
titik(x1,y1);
}
}
else {
int fraction = dx - (dy >> 1);
while (y1 != y2){
if(fraction >= 0){
x1 += stepx;
fraction -= dy;
}
y1 += stepy;
fraction += dx;
titik(x1,y1);
}
}
}
void Garisku(void)
{
glClear (GL_COLOR_BUFFER_BIT);
glColor3f (1.0, 1.0, 1.0);
glPointSize (2.0);
//Garis Lurus
bresenham (10, 10, 165, 10);
//Garis Titik Sret Bawah
bresenham (10, 20, 20, 20);
bresenham (25, 20, 25, 20);
bresenham (30, 20, 40, 20);
bresenham (45, 20, 45, 20);
bresenham (50, 20, 60, 20);
bresenham (65, 20, 65, 20);
bresenham (70, 20, 80, 20);
bresenham (85, 20, 85, 20);
bresenham (90, 20, 100, 20);
bresenham (105, 20, 105, 20);
bresenham (110, 20, 120, 20);
bresenham (125, 20, 125, 20);
bresenham (130, 20, 140, 20);
bresenham (145, 20, 145, 20);
bresenham (150, 20, 160, 20);
//Garis Titik Sret Atas
bresenham (10, 100, 20, 95);
bresenham (25, 92, 25, 92);
bresenham (30, 90, 40, 85);
bresenham (45, 82, 45, 82);
bresenham (50, 80, 60, 75);
bresenham (65, 72, 65, 72);
bresenham (70, 70, 80, 65);
bresenham (85, 62, 85, 62);
bresenham (90, 60, 100, 55);
bresenham (105, 52, 105, 52);
bresenham (110, 50, 120, 45);
bresenham (125, 42, 125, 42);
bresenham (130, 40, 140, 35);
bresenham (145, 32, 145, 32);
bresenham (150, 30, 160, 25);
bresenham (165, 20, 165, 20);
}
int main (int argc, char** argv)
{
glutInit (&argc, argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize (640, 420);
glutInitWindowPosition (0, 0);
glutCreateWindow ("Tugas Algoritma Bresenham");
layar();
glutDisplayFunc (Garisku);
glutMainLoop();
return 0;
}
Nah seperti itu l;ah kemunculan pada aplikasi c++ yang telah di running. Mohon maaf jika ada kesalahan kata dari sang pembuat :) mohon di maklumi .... :)
Gak perlu khawatir anda juga bisa download algoritma tersebut disini.
Seperti ini isi codingnya :
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
#include <glut.h>
#include <math.h>
void layar(void)
{
glClearColor (0.0 ,0.0, 0.0, 0.0);
glMatrixMode (GL_PROJECTION);
gluOrtho2D (0.0, 300.0, 0.0, 300.0);
}
void titik (int x, int y)
{
glBegin(GL_POINTS);
glVertex2f (x, y);
glEnd();
glFlush();
}
void bresenham(int x1, int y1, int x2, int y2)
{
int dy = y2 - y1;
int dx = x2 - x1;
int stepx, stepy;
if(dy < 0) {
dy = -dy; stepy = -1;
}
else {
stepy = 1;
}
if(dx < 0) {
dx = -dx;
stepx = -1;
}
else {
stepx = 1;
}
dy <<= 1;
dx <<= 1;
titik(x1,y1);
if (dx > dy){
int fraction = dy - (dx >> 1);
while (x1 != x2){
if(fraction >= 0){
y1 += stepy;
fraction -= dx;
}
x1 += stepx;
fraction += dy;
titik(x1,y1);
}
}
else {
int fraction = dx - (dy >> 1);
while (y1 != y2){
if(fraction >= 0){
x1 += stepx;
fraction -= dy;
}
y1 += stepy;
fraction += dx;
titik(x1,y1);
}
}
}
void Garisku(void)
{
glClear (GL_COLOR_BUFFER_BIT);
glColor3f (1.0, 1.0, 1.0);
glPointSize (2.0);
//Garis Lurus
bresenham (10, 10, 165, 10);
//Garis Titik Sret Bawah
bresenham (10, 20, 20, 20);
bresenham (25, 20, 25, 20);
bresenham (30, 20, 40, 20);
bresenham (45, 20, 45, 20);
bresenham (50, 20, 60, 20);
bresenham (65, 20, 65, 20);
bresenham (70, 20, 80, 20);
bresenham (85, 20, 85, 20);
bresenham (90, 20, 100, 20);
bresenham (105, 20, 105, 20);
bresenham (110, 20, 120, 20);
bresenham (125, 20, 125, 20);
bresenham (130, 20, 140, 20);
bresenham (145, 20, 145, 20);
bresenham (150, 20, 160, 20);
//Garis Titik Sret Atas
bresenham (10, 100, 20, 95);
bresenham (25, 92, 25, 92);
bresenham (30, 90, 40, 85);
bresenham (45, 82, 45, 82);
bresenham (50, 80, 60, 75);
bresenham (65, 72, 65, 72);
bresenham (70, 70, 80, 65);
bresenham (85, 62, 85, 62);
bresenham (90, 60, 100, 55);
bresenham (105, 52, 105, 52);
bresenham (110, 50, 120, 45);
bresenham (125, 42, 125, 42);
bresenham (130, 40, 140, 35);
bresenham (145, 32, 145, 32);
bresenham (150, 30, 160, 25);
bresenham (165, 20, 165, 20);
}
int main (int argc, char** argv)
{
glutInit (&argc, argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize (640, 420);
glutInitWindowPosition (0, 0);
glutCreateWindow ("Tugas Algoritma Bresenham");
layar();
glutDisplayFunc (Garisku);
glutMainLoop();
return 0;
}
Nah seperti itu l;ah kemunculan pada aplikasi c++ yang telah di running. Mohon maaf jika ada kesalahan kata dari sang pembuat :) mohon di maklumi .... :)
Gak perlu khawatir anda juga bisa download algoritma tersebut disini.
Langganan:
Postingan (Atom)