Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

Computer Graphics (OpenGL) Ödevi


Öne çıkan mesajlar

Mesaj tarihi:

Selam patiler, bu çarşambaya teslim etmem gereken bir comp. graph ödevim var, ve aynı güne başka bir proje teslimim ve bir önceki gün ise festivaller'de konserimiz var bu ödeve ayıracak fazla vaktim yok o nedenle. OpenGL bilen birinden biraz yardım alabilir miyim?

ödev

The figure below shows a scene with several objects disposed at the corners of a cube, which itself has one corner at the origin. Seven objects appear at various corners at the cube, all drawn as wire frames. Initialize a 640-by-480 pixel screen window and set the viewport.


Mesaj tarihi:
GLUT kullanıyosanız çizeceğin şeylerin çoğunun fonksiyonu var sana kalan sadece kordinatları vermek, translate felan yapmak.
http://www.dei.isep.ipp.pt/~matos/cg/docs/manual/gluSphere.3G.html
http://www.genesim.co.il/gluTorus.htm
http://libsh.org/ref/online/onlinese2.html
gibi...
Viewport da çok karışık bi' şey değil
http://www.opengl.org/sdk/docs/man/xhtml/glViewport.xml

Bi kaç tutorial okuyarak 2 saatte felan yaparsın eğer hiç bilgim yok diyosan.
Mesaj tarihi:
Kemarlos yapılmayacak birşey değil aslında. Umarım yetiştirirsin. Cisimleri hazır bulup viewport'u set edip sadece konumlandırıp translate falan ediceksin sanırım. Yapabildiğin kadar yap bari. En azından boş proje verme. Computer Graphics'te projeler ağırlıklı olması lazım. Sınavlar sıkıntılı geçmişti ben aldığımda. Normalde kalırdık o notlarla, ama hoca projelere bakarak notlandırmıştı genel olarak.

Final projesi yok mu buarada? Mayısın ortasında ne projesi ki bu böyle?
Mesaj tarihi:
Ödev bu bildiğin. Projeyi de verdi final projemiz de var onu da koyarım yakında :) Ya bununla ilgili bi kod var elimde ama yarına başka bir projeyi yetiştirmeye çalıştığım için bununla uğraşamıyorum. Eğer openGL konusunda usta olan elimi sallasam ellesi bir arkadaş yardımcı olursa yetiştiricem bunu da :) Şöyle bir kod var elimde:


// Ekrani cizmek icin cagrilir
void RenderScene(void)
{
// Pencereyi temizle
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

//ana_küp
glPushMatrix();
glTranslatef(0,0,0);
glRotatef(25, 1.0f, 0.0f, 0.0f);
glRotatef(-16, 0.0f, 1.0f, 0.0f);
glutWireCube(2.1f);
glPopMatrix();

//simit
glPushMatrix();
glTranslatef(-0.7,1.5,0);
glRotatef(-70, 1.0f, 0.0f, 0.0f);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glutWireTorus(0.2f, 0.5f, 10, 10);
glPopMatrix();

//çaydanlık
glPushMatrix();
glTranslatef(0.7,0.4,0);
glRotatef(25, 1.0f, 0.0f, 0.0f);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glutWireTeapot(0.35f);
glPopMatrix();

//Daire
glPushMatrix();
glTranslatef(1.3,1.3,0);
glRotatef(60, 1.0f, 0.0f, 0.0f);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glutWireSphere(0.4f, 12, 12);
glPopMatrix();

//küp
glPushMatrix();
glTranslatef(-1.3,0.7,0);
glRotatef(22, 1.0f, 0.0f, 0.0f);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glutWireCube(0.5f);
glPopMatrix();

//küp
glPushMatrix();
glTranslatef(1.3,-0.5,0);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glScalef (0.3, 0.3, 0.3);
glutWireDodecahedron();
glPopMatrix();

//Cone
glPushMatrix();
glTranslatef(0.8,-1.4,0);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glutWireCone(0.30f, 0.9f, 10, 10);
glPopMatrix();

//Dönmeyen_Cone
glPushMatrix();
glTranslatef(0,-0.5,0);
glRotatef(30, 0.0f, 1.0f, 0.0f);
glRotatef(80, 0.0f, 1.0f, 0.0f);
glutWireCone(0.08f, 0.3f, 8, 6);
glPopMatrix();

//Dönmeyen_Cone
glPushMatrix();
glTranslatef(-0.72,0.2,0);
glRotatef(-80, 1.0f, 0.0f, 0.0f);
glRotatef(0, 0.0f, 1.0f, 0.0f);
glutWireCone(0.08f, 0.3f, 8, 6);
glPopMatrix();

//Dönmeyen_Cone
glPushMatrix();
glTranslatef(-0.82,-0.5,0);
glRotatef(80, 1.0f, 0.0f, 0.0f);
glRotatef(-28, 0.0f, 1.0f, 0.0f);
glutWireCone(0.08f, 0.3f, 8, 6);
glPopMatrix();

//gluCylinder(quadratic,1.0f,1.0f,3.0f,32,32);

glutSwapBuffers();
}
Mesaj tarihi:
Perfectionist said:

Tamam olmuş bu. İki ayar çek kaktır gitsin. Benimde microprocessor ödevim var. Pek yardımcı olamıycam. Olmak istesemde unuttum zaten openGL işlerini.

Glutamine tavsiye etsem? :D


microprocessor ' e yardımcı olalım . ödev neydi : )
Mesaj tarihi:

void reshape(int w, int h)
{
glViewport(0, 0, w, h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();

gluPerspective(50.0, w/h, 2, 100.0);
glMatrixMode(GL_MODELVIEW);
}

void main(int argc, char **argv)
{
glutInit(&argc, argv);

glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
glutInitWindowSize(500, 500);
glutCreateWindow("hede");

glutReshapeFunc(reshape);
glutDisplayFunc(RenderScene);
glutIdleFunc(NULL);
glutMouseFunc(mouse);
glutKeyboardFunc(keyboard);
glEnable(GL_DEPTH_TEST);

glutMainLoop();
}
Mesaj tarihi:

#include <GL/glut.h>
#include <stdio.h>
#include <math.h>

int yRot;
int w=640, h=800;



// Ekrani cizmek icin cagrilir
void RenderScene(void)
{
// Pencereyi temizle
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

//ana_küp
glPushMatrix();
glTranslatef(0,0,0);
glRotatef(25, 1.0f, 0.0f, 0.0f);
glRotatef(-16, 0.0f, 1.0f, 0.0f);
glutWireCube(2.1f);
glPopMatrix();

//simit
glPushMatrix();
glTranslatef(-0.7,1.5,0);
glRotatef(-70, 1.0f, 0.0f, 0.0f);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glutWireTorus(0.2f, 0.5f, 10, 10);
glPopMatrix();

//çaydanlık
glPushMatrix();
glTranslatef(0.7,0.4,0);
glRotatef(25, 1.0f, 0.0f, 0.0f);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glutWireTeapot(0.35f);
glPopMatrix();

//Daire
glPushMatrix();
glTranslatef(1.3,1.3,0);
glRotatef(60, 1.0f, 0.0f, 0.0f);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glutWireSphere(0.4f, 12, 12);
glPopMatrix();

//küp
glPushMatrix();
glTranslatef(-1.3,0.7,0);
glRotatef(22, 1.0f, 0.0f, 0.0f);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glutWireCube(0.5f);
glPopMatrix();

//küp
glPushMatrix();
glTranslatef(1.3,-0.5,0);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glScalef (0.3, 0.3, 0.3);
glutWireDodecahedron();
glPopMatrix();

//Cone
glPushMatrix();
glTranslatef(0.8,-1.4,0);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glutWireCone(0.30f, 0.9f, 10, 10);
glPopMatrix();

//Dönmeyen_Cone
glPushMatrix();
glTranslatef(0,-0.5,0);
glRotatef(30, 0.0f, 1.0f, 0.0f);
glRotatef(80, 0.0f, 1.0f, 0.0f);
glutWireCone(0.08f, 0.3f, 8, 6);
glPopMatrix();

//Dönmeyen_Cone
glPushMatrix();
glTranslatef(-0.72,0.2,0);
glRotatef(-80, 1.0f, 0.0f, 0.0f);
glRotatef(0, 0.0f, 1.0f, 0.0f);
glutWireCone(0.08f, 0.3f, 8, 6);
glPopMatrix();

//Dönmeyen_Cone
glPushMatrix();
glTranslatef(-0.82,-0.5,0);
glRotatef(80, 1.0f, 0.0f, 0.0f);
glRotatef(-28, 0.0f, 1.0f, 0.0f);
glutWireCone(0.08f, 0.3f, 8, 6);
glPopMatrix();

//gluCylinder(quadratic,1.0f,1.0f,3.0f,32,32);

glutSwapBuffers();
}

void reshape(int w, int h)
{
w= 600;
h= 800;
glViewport(0, 0, w, h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();

gluPerspective(50.0, w/h, 2, 100.0);
glMatrixMode(GL_MODELVIEW);
}

void main(int argc, char **argv)
{
glutInit(&argc, argv);

glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
glutInitWindowSize(800, 800);
glutCreateWindow("hede");

glutReshapeFunc(reshape);
glutDisplayFunc(RenderScene);
glutIdleFunc(NULL);
//glutMouseFunc(mouse);
//glutKeyboardFunc(keyboard);
glEnable(GL_DEPTH_TEST);

glutMainLoop();
}


abi saçma sapan bişi çiziyo olması gerken şeyler mevcut ama saykodelik bir şekilde dağılmışlar ekrana :D
Mesaj tarihi:
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(30, 30, -10, -50, -50, 10, 0, 1,0);

gibi bisey koyman lazim objeleri cizmeden once, rakamlari degistirip bak tam nasi gorunuyo.
×
×
  • Yeni Oluştur...