Programação em JOGL  XML
Índice dos Fóruns » Outras Linguagens
Autor Mensagem
lucionunes
Smalltalk
[Avatar]

Membro desde: 30/11/2010 18:41:39
Mensagens: 2
Localização: Belo Horizonte
Offline

Senhores, boa noite.

Estou tentando elaborar um trabalho de faculdade de programação 3D em JOGL cujo objetivo é fazer com que uma esfera se movimente dentro de um cubo num eixo X do plano cartesiano, de forma que a esfera toque as paredes do cubo. Consegui construir tais figuras mas consigo fazer movimentar a esfera apenas para um lado.

Gostaria que me ajudassem a fazer com que a esfera fique se movendo de um lado para outro constantemente. Segue o código a baixo do método display:

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(0.0f, 0.0f, -6.0f);


h2 = (float)a/(float)b;

gl.glPopMatrix();

gl.glViewport(0, 0, a, b);
gl.glMatrixMode(GL.GL_PROJECTION);
gl.glLoadIdentity();
glu.gluPerspective(45.0f, h2, 0.5, 500.0);
//gl.glOrtho(-65.0, 65.0, -65, 65, -400, 400);
gl.glMatrixMode(GL.GL_MODELVIEW);
gl.glLoadIdentity();

glu.gluLookAt(10, 10, 100, 0, 0, 0, 0, 2, 0);
gl.glColor3f(1.0f, 1.0f, 1.0f);

// gl.glTranslatef(cx, 0.0f, -6.0f); //translate do cubo
glut.glutWireCube(50);
cx+=25;

gl.glTranslatef(tr_cilind, 0.0f, -6.0f);
glut.glutWireCylinder(2, 2, 100, 5);


if (tr_cilind<25) {
d=1;
}
if(tr_cilind>-30){
d=0;
}
if(d==1){
tr_cilind++;
}
if(d==0){
tr_cilind--;

}
}


Agradeço antecipadamente,

Lucio Nunes



Lucio Nunes
Estudante de Análise e Des. Sistemas
 
Índice dos Fóruns » Outras Linguagens
Ir para:   
Powered by JForum 2.1.8 © JForum Team