1. 程式人生 > 程式設計 >使用PyOpenGL繪製三維座標系例項

使用PyOpenGL繪製三維座標系例項

我就廢話不多說了,直接上程式碼吧!

def drawCoordinate():
  '''
  繪製三維的座標系,並繪製由座標軸構成的平面的網格,各個座標軸的顏色以及由座標軸所引出的網格線的顏色為:
  x: (1.0,0.0,0.0)
  y: (0.0,1.0,0.0)
  z: (0.0,1.0)
  :return:
  '''
  #設定網格線間的步長
  step = 0.2
  #設定網格線的數量、長度
  line_num = 15
  line_len = 4
  grid_color = [(1.0,0.0),(0.0,1.0)]

  glLineWidth(3)
  origin = [0.0,0.0]
  #畫出xyz軸
  for i in range(3):
    tmp = [0.0,0.0]
    tmp[i] = line_len*1.02
    glColor3f(*grid_color[i])
    glBegin(GL_LINES)
    glVertex3f(*origin)
    glVertex3f(*tmp)
    glEnd()


  # 畫出由座標軸構成的平面的網格
  glLineWidth(1)
  for i in range(3):
  	#每次把一個座標軸上引出的網格線都畫出來,所以起點都是一致的
    start = [0.0,0.0]
    glColor3f(*grid_color[i])
    for j in range(line_num):
      end = [0.0,0.0]
      glBegin(GL_LINES)
      start[i] = start[i] + step
      end[i] = start[i]
      for k in {0,1,2} - {i,}:
        end[k] = line_len
        glVertex3f(*start)
        glVertex3f(*end)
        end[k] = 0.0
      glEnd()

以上這篇使用PyOpenGL繪製三維座標系例項就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。