[英]how to add rotate to my 2D object
I draw a simple triangle and I want to learn how to rotate it and move in up and down and left and right . 我画了一个简单的三角形,我想学习如何旋转它以及如何上下左右移动。 I add gl.glRotatef(0.0f, 1.0f, 0.0f, 0.0f) but it does not rotate.
我添加了gl.glRotatef(0.0f,1.0f,0.0f,0.0f)但它不会旋转。
this is my code : 这是我的代码:
public class GLrenderer implements Renderer { public GLqueue tri; 公共类GLrenderer实现了Renderer {public GLqueue tri;
public GLrenderer() {
tri = new GLqueue();
}
@Override
public void onSurfaceCreated(GL10 gl, EGLConfig eglConfig) {
// TODO Auto-generated method stub
gl.glDisable(GL10.GL_DITHER);
gl.glHint(GL10.GL_PERSPECTIVE_CORRECTION_HINT, GL10.GL_FASTEST);
gl.glClearColor(.8f, .0f, .2f, 1);
gl.glClearDepthf(1f);
}
@Override
public void onDrawFrame(GL10 gl) {
// TODO Auto-generated method stub
gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_COLOR_BUFFER_BIT);
gl.glMatrixMode(GL10.GL_MODELVIEW);
gl.glLoadIdentity();
GLU.gluLookAt(gl, 0, 0, 10f , 0 , 0 , 0 , 0 ,2, 0);
tri.draw(gl);
}
@Override
public void onSurfaceChanged(GL10 gl, int width, int height) {
// TODO Auto-generated method stub
gl.glViewport(0, 0, width, height);
float ratio = (float) width/height;
gl.glMatrixMode(GL10.GL_PROJECTION);
gl.glLoadIdentity();
gl.glFrustumf(-ratio, ratio , -1, 1, 1, 25);
}
} }
旋转和运动的描述如下: http : //developer.android.com/resources/tutorials/opengl/opengl-es20.html希望对您有所帮助!
gl.glPushMatrix();
gl.Translatef(x,y,0)
gl.Rotatef(45,0,0,1)//rotate the object 45 degress in z axis
DrawObjuect();
gl.glPopMatrix();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.