當前位置:編程學習大全網 - 編程軟體 - Qt+OpenGl 如何實現三維點的 平移旋轉操作

Qt+OpenGl 如何實現三維點的 平移旋轉操作

平移操作 調 函數 glTranslatef

glTranslatef(12.3,0.,0.); -- 沿x 平移12.3

glTranslatef(0., 34.5,,0.); -- 沿y 平移34.5

glTranslatef(0. , 0.0, 67.8); -- 沿z 平移67.8

旋轉操作調 函數 glRotated 或 glRotatef ,前者參數1是角度值 整型,後者是 float型。

glRotated(3,1,0,0); -- 繞 x 軸 轉 3 度

glRotated(3,0,1,0); -- 繞 y 軸 轉 3 度

glRotated(3,0,0,1); -- 繞 z 軸 轉 3 度

這段程序畫 三維空間的 NN 個點,每個點用壹個邊長c1的立方塊表示,顏色由z值決定。

for (i = 0; i< NN ; i++)

{

glPushMatrix();

glTranslatef(x[i],y[i],z[i]);

(void) my_color(z_color(z[i]));

(void) glutSolidCube(c1);

glPopMatrix();

}; // end for i

-----------------

註意 平移和轉動的順序,順序不同,最終結果的位置和狀態可能不能同。

必要時,加 glPushMatrix(); glPopMatrix(); 保證它是自己所要的位置轉換。

  • 上一篇:速騰防盜模塊在哪
  • 下一篇:c語言從零開始 怎麽學 要求是什麽
  • copyright 2024編程學習大全網