-1
내가 키 "E"로하고, 회전을 할 수있는 키보드에 입력Opengl - 이벤트 키보드를 사용하여 축 주위를 정사면체로 회전하는 방법은 무엇입니까?
if ((e != 0) && (e != 180)){
glTranslatef(0.4, 0, 0);
glRotatef(e, 0, 0,1);
glTranslatef(-0.4, 0, 0);
glRotatef(e, 0, 0, 1);
glTranslatef(0.4, 1, 0);
}else{
e = 0 ;
}
glBegin(GL_TRIANGLES);
//base left right
glColor3f(1, 0, 0);
glVertex3f(0.0f, 0.0f, 0.4*sqrt(3));
glVertex3f(-0.4f, -0.4*sqrt(3), 0.47);
glVertex3f(0.0f, -0.4*sqrt(3), 0.8*sqrt(3)-(0.14*sqrt(3)));
//base left right interna
glColor3f(0.0f, 0.0f, 1.0f);
glVertex3f(0.0f, 0.0f, 0.4*sqrt(3));
glVertex3f(0.0f, -0.4*sqrt(3), 0.8*sqrt(3)-(0.14*sqrt(3)));
glVertex3f(0.4f, -0.4*sqrt(3), 0.47);
//bottom
glColor3f(1.0f, 1.0f, 0.0f);
glVertex3f(0.4f, -0.4*sqrt(3), 0.47);
glVertex3f(0.0f, -0.4*sqrt(3), 0.8*sqrt(3)-(0.14*sqrt(3)));
glVertex3f(-0.4f, -0.4*sqrt(3), 0.47);
glEnd();
glPopMatrix();
}
아래에있는 내 코드를 따르십시오. 그러나 회전은 중심을 중심으로 회전하지 않습니다. "e"키를 입력 할 때마다 "e"값이 e + 60으로 증가합니다.