使用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实现比较两个文件夹中代码变化的方法
Jul 10 Python
Python单链表简单实现代码
Apr 27 Python
python实现获取Ip归属地等信息
Aug 27 Python
python读取excel指定列数据并写入到新的excel方法
Jul 10 Python
Python 利用scrapy爬虫通过短短50行代码下载整站短视频
Oct 29 Python
python+opencv打开摄像头,保存视频、拍照功能的实现方法
Jan 08 Python
python使用Plotly绘图工具绘制水平条形图
Mar 25 Python
Django 创建/删除用户的示例代码
Jul 24 Python
python中pandas库中DataFrame对行和列的操作使用方法示例
Jun 14 Python
Python 在 VSCode 中使用 IPython Kernel 的方法详解
Sep 05 Python
python 多线程爬取壁纸网站的示例
Feb 20 Python
Python如何加载模型并查看网络
Jul 15 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
去掉destoon资讯内容页keywords关键字自带的文章标题的方法
2014/08/21 PHP
字符串长度函数strlen和mb_strlen的区别示例介绍
2014/09/09 PHP
set_exception_handler函数在ThinkPHP中的用法
2014/10/31 PHP
php遍历目录方法小结
2015/03/10 PHP
PHP的openssl加密扩展使用小结(推荐)
2016/07/18 PHP
PHP实现微信商户支付企业付款到零钱功能
2018/09/30 PHP
关于PHP虚拟主机概念及如何选择稳定的PHP虚拟主机
2018/11/20 PHP
laravel5.1框架model类查询的实现方法
2019/10/08 PHP
基于jquery的bankInput银行卡账号格式化
2012/08/22 Javascript
input输入框的自动匹配(原生代码)
2013/03/19 Javascript
jQuery中live()方法用法实例
2015/01/19 Javascript
jquery实现表格本地排序的方法
2015/03/11 Javascript
jQuery中bind(),live(),delegate(),on()绑定事件方法实例详解
2016/01/19 Javascript
总结jQuery插件开发中的一些要点
2016/05/16 Javascript
javascript面向对象程序设计高级特性经典教程(值得收藏)
2016/05/19 Javascript
js实现精确到毫秒的倒计时效果
2016/08/05 Javascript
详解jQuery中ajax.load()方法
2017/01/25 Javascript
手把手搭建安装基于windows的Vue.js运行环境
2017/06/12 Javascript
详解Vue-Cli 异步加载数据的一些注意点
2017/08/12 Javascript
javascript实现Java中的Map对象功能的实例详解
2017/08/21 Javascript
详解vue-loader在项目中是如何配置的
2018/06/04 Javascript
小程序转发探索示例
2019/02/19 Javascript
vue父子组件通信的高级用法示例
2019/08/29 Javascript
VUE 自定义组件模板的方法详解
2019/08/30 Javascript
调试Python程序代码的几种方法总结
2015/04/28 Python
Solid & Striped官网:美国泳装品牌
2019/06/19 全球购物
德国网上超市:myTime.de
2019/08/26 全球购物
编写类String 的构造函数、析构函数和赋值函数
2012/09/09 面试题
简述安装Slackware Linux系统的过程
2012/01/12 面试题
审核会计岗位职责
2013/11/08 职场文书
外语专业毕业生个人的自荐信
2013/11/19 职场文书
公关活动策划方案
2014/05/25 职场文书
优秀大学生事迹材料
2014/12/24 职场文书
校长一岗双责责任书
2015/05/09 职场文书
房屋所有权证明
2015/06/19 职场文书
MySQL8.0 Undo Tablespace管理详解
2022/06/16 MySQL