用PYOPENGL绘制三维坐标系

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()

在这里插入图片描述

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值