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


Posted in Python onDecember 24, 2019

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

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绘制三维坐标系实例

以上这篇使用PyOpenGL绘制三维坐标系实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python对字典进行排序实例
Sep 25 Python
Windows下安装python MySQLdb遇到的问题及解决方法
Mar 16 Python
Python matplotlib画图实例之绘制拥有彩条的图表
Dec 28 Python
Python cookbook(数据结构与算法)保存最后N个元素的方法
Feb 13 Python
Python中pandas dataframe删除一行或一列:drop函数详解
Jul 03 Python
Python中 map()函数的用法详解
Jul 10 Python
python将list转为matrix的方法
Dec 12 Python
Python下简易的单例模式详解
Apr 08 Python
Django实现发送邮件找回密码功能
Aug 12 Python
python 日志模块 日志等级设置失效的解决方案
May 26 Python
Python+unittest+requests+excel实现接口自动化测试框架
Dec 23 Python
用 Python 元类的特性实现 ORM 框架
May 19 Python
Python 限定函数参数的类型及默认值方式
Dec 24 #Python
python+opencv实现车牌定位功能(实例代码)
Dec 24 #Python
Python scrapy增量爬取实例及实现过程解析
Dec 24 #Python
Python 元组拆包示例(Tuple Unpacking)
Dec 24 #Python
Python 余弦相似度与皮尔逊相关系数 计算实例
Dec 23 #Python
Python编译成.so文件进行加密后调用的实现
Dec 23 #Python
Cython编译python为so 代码加密示例
Dec 23 #Python
You might like
在PHP中使用XML
2006/10/09 PHP
PHP+Tidy-完美的XHTML纠错+过滤
2007/04/10 PHP
FirePHP 推荐一款PHP调试工具
2011/04/23 PHP
PHP中集成PayPal标准支付的实现方法分享
2012/02/06 PHP
PHP命名空间(namespace)的使用基础及示例
2014/08/18 PHP
详解php中反射的应用
2016/03/15 PHP
线路分流自动智能跳转代码,自动选择最快镜像网站(js)
2011/10/31 Javascript
Node.js异步I/O学习笔记
2014/11/04 Javascript
js鼠标悬浮出现遮罩层的方法
2015/01/28 Javascript
javascript实现全局匹配并替换的方法
2015/04/27 Javascript
基于jquery实现简单的分页控件
2016/03/17 Javascript
深入理解JavaScript中为什么string可以拥有方法
2016/05/24 Javascript
js实现数组和对象的深浅拷贝
2017/09/30 Javascript
vue的一个分页组件的示例代码
2017/12/25 Javascript
JavaScript实现PC端横向轮播图
2020/02/07 Javascript
[04:27]DOTA2官方论坛水友赛集锦
2013/09/16 DOTA
python多进程共享变量
2016/04/06 Python
详解Python3中字符串中的数字提取方法
2017/01/14 Python
python如何读取bin文件并下发串口
2019/07/05 Python
win7下 python3.6 安装opencv 和 opencv-contrib-python解决 cv2.xfeatures2d.SIFT_create() 的问题
2019/10/24 Python
python中dict()的高级用法实现
2019/11/13 Python
python常用数据重复项处理方法
2019/11/22 Python
TensorFlow tensor的拼接实例
2020/01/19 Python
Python3如何在服务器打印资产信息
2020/08/27 Python
python实现经典排序算法的示例代码
2021/02/07 Python
英国女士家居服网站:hush
2017/08/09 全球购物
幼儿园优秀教师事迹
2014/02/13 职场文书
C++程序员求职信
2014/05/07 职场文书
作风建设演讲稿
2014/05/23 职场文书
搞笑婚前保证书
2015/02/28 职场文书
会计专业自荐信范文
2019/05/22 职场文书
使用css样式设计一个简单的html登陆界面的实现
2021/03/30 HTML / CSS
深入理解redis中multi与pipeline
2021/06/02 Redis
Java基础之this关键字的使用
2021/06/30 Java/Android
springboot中的pom文件 project报错问题
2022/01/18 Java/Android
使用CSS定位HTML元素的实现方法
2022/07/07 HTML / CSS