我正在研究 OpenGL Superbible(第 4 版)。第 4 章有一个电子围绕原子核旋转的例子。(基本上是一个大球体的小球体)。
这是渲染函数的摘录,它在原子核(另一个球体)周围的特定位置绘制一个电子(一个球体)。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 轴上平移?这是否意味着电子有一种轨道,其中原子核不在其路径的中心?但是当我运行模拟时它看起来不像那样。