使用PyOpenGL绘制三维坐标系实例

时间:2021-05-22

我就废话不多说了,直接上代码吧!

def drawCoordinate(): ''' 绘制三维的坐标系,并绘制由坐标轴构成的平面的网格,各个坐标轴的颜色以及由坐标轴所引出的网格线的颜色为: x: (1.0, 0.0, 0.0) y: (0.0, 1.0, 0.0) z: (0.0, 0.0, 1.0) :return: ''' #设置网格线间的步长 step = 0.2 #设置网格线的数量、长度 line_num = 15 line_len = 4 grid_color = [(1.0, 0.0, 0.0), (0.0, 1.0, 0.0), (0.0, 0.0, 1.0)] glLineWidth(3) origin = [0.0, 0.0, 0.0] #画出xyz轴 for i in range(3): tmp = [0.0, 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, 0.0] glColor3f(*grid_color[i]) for j in range(line_num): end = [0.0, 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绘制三维坐标系实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章