轉動車子
step01:jsyeh.org/3dcg10 下載 windows.zip data.zip
step02:解壓縮 下載\windows\Transformation.exe
step03:解壓縮 下載\windows\data\模型
glTranslatef( 0.8, 0.0, 0.0);車子會向右轉
2.對特定軸轉動練習https://120.125.80.50/GL/opengl_TRT_demo.html
step01:把glRatated(angle,0,0,1);移到glPushMatrix();上面 按空白鍵旋轉
step02:myDrawObject(0);移到glTranslatef(0,0,0),
使用glTranslatef(0,0,0);移動位置
---------------------------------------------------------------------------------------------------------------------------------
#include <GL/glut.h>
float angle=0;
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glPushMatrix();
glRotatef(angle,0,0,1);///旋轉
glTranslatef(0.4,-0.07,0);///旋轉
glutSolidTeapot(0.3);///往右下移動(手把移動中心)
glPopMatrix();
glutSwapBuffers();
angle+=0.1;
}
int main(int argc,char**argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("Week12_TRT");
glutIdleFunc(display);
glutDisplayFunc(display);
glutMainLoop();
}
---------------------------------------------------------------------------------------------------------------------------------
#include <GL/glut.h>
float angle=0;
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glColor3f(1,1,1);///白色
glutSolidTeapot(0.3);///大茶壺
glPushMatrix();
glTranslatef(0.3,0,0);///把下面的東西掛在某處
glRotatef(angle,0,0,1);///旋轉
glTranslatef(0.2,0,0);
glColor3f(1,0,0);///紅色
glutSolidTeapot(0.2);///茶壺
glPushMatrix();
glTranslatef(0.2,0,0);///把下面的東西掛在某處
glRotatef(angle,0,0,1);///旋轉
glTranslatef(0.2,0,0);
glColor3f(1,0,0);///紅色
glutSolidTeapot(0.2);///茶壺
glPopMatrix();
glPopMatrix();
glutSwapBuffers();
angle+=0.03;
}
int main(int argc,char**argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("Week12_TRT_TRT");
glutIdleFunc(display);
glutDisplayFunc(display);
glutMainLoop();
}
沒有留言:
張貼留言