OpenGL Superbible (4th Edition)을 통해 작업하고 있습니다. 4 장은 핵에 대해 전자를 회전시키는 예를 보여줍니다. (하나의 큰 구체에 대한 기본적으로 작은 구체).OpenGL의 번역 및 회전?
여기는 핵 (다른 구)에 대한 특정 위치에 전자 (구)를 그려주는 렌더링 함수의 추출물입니다. fElect1
은 렌더링 할 각 호출에서 10 도씩 증가하는 각도입니다.
glPushMatrix();
glRotatef(360.0f-45.0f,0.0f, 0.0f, 1.0f);
glRotatef(fElect1, 0.0f, 1.0f, 0.0f);
glTranslatef(0.0f, 0.0f, 60.0f);
glColor3ub(56,136,21);
glutSolidSphere(6.0f, 15, 15);
glPopMatrix()
그래서 그는 z 축을 중심으로 315도 회전시킵니다. 그런 다음 새로 회전 한 y 축에 대한 뷰를 각도 fElect1
만큼 회전 한 다음 구를 그립니다. 즉 그는 y- 축을 중심으로 전자의 궤도를 시뮬레이션하려고합니다. 결과는 전자가 구에 대한 '기울어 진'궤도 (x 축이 315도 기울어 져 있기 때문에 기울어 짐)에서 움직이는 것처럼 보입니다.
하지만 제 질문은 - 왜 그는 z 축을 번역합니까? 이것은 전자가 핵이 경로의 중심에 있지 않는 일종의 궤도를 가지고 있다는 것을 의미하지 않을까요? 그러나 시뮬레이션을 실행할 때 그렇게 보이지 않습니다.
변형이 적용되는 순서에 대해 그가 말한 부분을 놓쳐 버렸을 것입니다. 이것은 훨씬 더 의미가 있습니다. – BeeBand