使用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中unittest模块做UT(单元测试)使用实例
Jun 12 Python
Python验证码识别处理实例
Dec 28 Python
在windows下快速搭建web.py开发框架方法
Apr 22 Python
python dict.get()和dict['key']的区别详解
Jun 30 Python
使用Python的Flask框架表单插件Flask-WTF实现Web登录验证
Jul 12 Python
基于python元祖与字典与集合的粗浅认识
Aug 23 Python
matplotlib实现热成像图colorbar和极坐标图的方法
Dec 13 Python
Python实现分段线性插值
Dec 17 Python
Python I/O与进程的详细讲解
Mar 08 Python
python爬虫开发之PyQuery模块详细使用方法与实例全解
Mar 09 Python
Django微信小程序后台开发教程的实现
Jun 03 Python
python 通过 pybind11 使用Eigen加速代码的步骤
Dec 07 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调用数据库的存贮过程!
2006/10/09 PHP
PHP 七大优势分析
2009/06/23 PHP
smarty模板中拼接字符串的方法
2014/02/14 PHP
thinkPHP5实现数据库添加内容的方法
2017/10/25 PHP
php实现生成PDF文件的方法示例【基于FPDF类库】
2018/07/21 PHP
PHP chop()函数讲解
2019/02/11 PHP
PHP7变量处理机制修改
2021/03/09 PHP
JScript的条件编译
2007/05/29 Javascript
JQuery Tips(2) 关于$()包装集你不知道的
2009/12/14 Javascript
EXT中xtype的含义分析
2010/01/07 Javascript
在JS中最常看到切最容易迷惑的语法(转)
2010/10/29 Javascript
Chosen 基于jquery的选择框插件使用方法
2012/05/30 Javascript
使用jQuery简单实现模拟浏览器搜索功能
2014/12/21 Javascript
深入理解JavaScript系列(36):设计模式之中介者模式详解
2015/03/04 Javascript
jquery.cookie.js实现用户登录保存密码功能的方法
2016/04/15 Javascript
Vue-cropper 图片裁剪的基本原理及思路讲解
2018/04/17 Javascript
JS中数组实现代码(倒序遍历数组,数组连接字符串)
2019/12/29 Javascript
JavaScript 事件代理需要注意的地方
2020/09/08 Javascript
解决Vue大括号字符换行踩的坑
2020/11/09 Javascript
[17:45]DOTA2 HEROES教学视频教你分分钟做大人-军团指挥官
2014/06/11 DOTA
python 每天如何定时启动爬虫任务(实现方法分享)
2018/05/21 Python
Linux下安装python3.6和第三方库的教程详解
2018/11/09 Python
python实现ip地址查询经纬度定位详解
2019/08/30 Python
Python Gluon参数和模块命名操作教程
2019/12/18 Python
Python制作简易版小工具之计算天数的实现思路
2020/02/13 Python
Python字符串格式化常用手段及注意事项
2020/06/17 Python
世界排名第一的万圣节服装店:Spirit Halloween
2018/10/16 全球购物
复古服装:RetroStage
2019/05/10 全球购物
Tessabit美国:集世界奢侈品和设计师品牌的意大利精品买手店
2020/06/29 全球购物
父亲八十大寿答谢词
2014/01/23 职场文书
超市采购员岗位职责
2014/02/01 职场文书
营销学习心得体会
2014/09/12 职场文书
公司员工体检通知
2015/04/21 职场文书
2015年社区科普工作总结
2015/05/13 职场文书
Java图书管理系统,课程设计必用(源码+文档)
2021/06/30 Java/Android
python 详解turtle画爱心代码
2022/02/15 Python