位置: 编程技术 - 正文

Begin OpenGL with Python-1st Day,draw a simple sample.

编辑:rootadmin

推荐整理分享Begin OpenGL with Python-1st Day,draw a simple sample.,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

某个老板忽然有一天想到要画3D图,于是作者遭殃了……

OK,首先需要Python和pyopengl……

然后需要一块支持OpenGL的显卡,我不是开玩笑,我第一个程序夭折就是因为显卡不支持。

《OpenGL编程指南》这本书很&#;得参考。

初始化glut设置显示模式创建窗口要做的事情主循环

首先画一个点:

drawFunc里面显示的是画图的函数。

from OpenGL.GL import *from OpenGL.GLUT import *

def drawFunc():

Begin OpenGL with Python-1st Day,draw a simple sample.

glBegin(GL_POINTS)

glVertex2d(0,0)

glEnd()

glFlush()

glutInit()glutInitDisplayMode(GLUT_SINGLE|GLUT_RGBA)glutCreateWindow("second")glutDisplayFunc(drawFunc)glClearColor(0.0,0.0,0.0,1.0)glutMainLoop()

以下代码用手工画了球上的所有点:

两个函数drawFunc是用来画图get_param是用来抓行为并进行重绘的。我知道用全局变量不大好。这只是试验品。

事实上代码还没完成,但是我要睡觉了。嘿嘿。

import mathfrom OpenGL.GL import *from OpenGL.GLUT import *position=[]def init(): glClearColor(0.0,0.0,0.0,1.0)def drawFunc(theta_ref=0,phi_ref=0): number=0 glClear(GL_COLOR_BUFFER_BIT) glBegin(GL_POINTS) r=[1]* for theta in [x/*math.pi-theta_ref/*math.pi for x in range(0,,)]: z=r[number]*math.cos(theta) for phi in [x/*math.pi-phi_ref/*math.pi for x in range(0,,)]: x=r[number]*math.sin(theta)*math.cos(phi) y=r[number]*math.sin(theta)*math.sin(phi) glVertex3f(x,y,z) number&#;=1 glEnd() glFlush()def get_param(*arg,**args): print(globals()['position']) if len(arg)==4: if arg[1]==0 and globals()['position']==[]: globals()['position']=[arg[2],arg[3],arg[2],arg[3]] else: globals()['position'][2:]=[arg[2],arg[3]] if len(arg)==2: globals()['position'][0]=globals()['position'][0]&#;arg[0]-globals()['position'][2] globals()['position'][1]=globals()['position'][1]&#;arg[1]-globals()['position'][3] globals()['position'][2]=arg[0] globals()['position'][3]=arg[1] drawFunc(globals()['position'][0],globals()['position'][1])glutInit()glutInitDisplayMode(GLUT_SINGLE|GLUT_RGBA)glutInitWindowSize(,)glutCreateWindow("second")glutMouseFunc(get_param)glutMotionFunc(get_param)glutDisplayFunc(drawFunc)init()glutMainLoop()

OpenGL矩阵API的使用方法 在OpenGL1.x中包含了一系列的矩阵操作函数,下面我对这些函数的使用方式做个总结。在介绍这些函数之前,我先引入一些数学符号以便更简明的表达我

opengl shader 学习 随笔四 一个典型的shader程序,看完这个基本shader的流程就没有问题了。constchar*vShader={//Vertexshader#versioncorenuniformUniforms{vec3translation;floatscale;vec4rotation;boolenable

OpenGL基础图形编程 转载:

标签: Begin OpenGL with Python-1st Day,draw a simple sample.

本文链接地址:https://www.jiuchutong.com/biancheng/373175.html 转载请保留说明!

上一篇:opengl GLSL基本语法 学习 随笔二(opengl glbegin)

下一篇:OpenGL矩阵API的使用方法(opengl arb)

  • 小微企业免税销售额是按1%还是3%
  • 预收预付科目是否已经取消
  • 专利奖励金额
  • 发票专用章换了需要登记吗
  • 现金折扣的销售额
  • 收购别人的公司要具备什么条件
  • 按月计提短期借款利息12000元
  • 收到现金货款可以直接用吗
  • 专票当月抵扣后当月作废会被发现吗
  • 注册资金印花税是资金账簿吗
  • 运输发票交印花税吗
  • 旧发票专用章如何处理
  • 取得专用发票不交增值税
  • 个人从上市公司取得的分红个税怎么申报
  • 承包学校的食堂如何纳税
  • 分公司是独立法人企业吗
  • 合同是怎么影响企业纳税的?
  • 跨地区经营建筑企业预缴企业所得税
  • 长期股权投资账务处理
  • 存货跌价准备会影响利润总额吗
  • 开了发票未收款
  • 研发费用发票怎么入账
  • 保证金计入哪个会计科目
  • 受托加工金银首饰是否代征消费税
  • 非流动负债怎么巧记
  • 没有发票的怎么报账
  • 结转存货跌价准备冲减主营业务成本
  • 发票备注栏填写要求
  • 资产负债表的编制方法
  • 手游穿越火线怎么设置自动开火
  • 安卓系统详解
  • 鸿蒙系统怎么安装电脑
  • kb4580419更新
  • linux直接运行jar
  • 用php做计算
  • 商业企业积分赠商品如何计算企业所得税
  • 收取逾期包装物押金怎么算税
  • codecline
  • php代码规范七大原则
  • php字符串包含某个字符串
  • react js 教程
  • opencv讲解
  • php 微信公众号自定义菜单
  • 印花税申报一直显示办理中什么意思
  • 收到承兑汇票怎么操作
  • 土地增值税扣除率怎样计算
  • 原始投资额的现值
  • 报废车怎么上路
  • 织梦开发教程
  • 让渡资产使用权收入什么意思
  • 社保交费银行对账怎么办
  • 库存商品出库分类
  • sql server 附加
  • 企业长期零申报
  • 生产成本与管理企业经营实战感想
  • 顶账资产入账依据
  • 税务局退回来的附加税金怎么做账
  • 职工罚款的会计处理办法
  • 当月只有进项税额会计怎么做账
  • 基本建设费用的组成
  • 医院收费票据可以入账吗
  • 应收应付的意思
  • 赊销是什么意思 视频
  • ghost读取不到硬盘
  • 文件历史版本功能
  • iis支持什么后端语言
  • 笔记本xp系统怎么升级win7系统
  • 远程关机对话框怎么打开
  • window10如何解除密码
  • linuxmain函数
  • win7怎么安装网络驱动程序
  • Extjs中使用extend(js继承) 的代码
  • nodejs爬取数据
  • windows安装python pip
  • javascript parseInt 函数分析(转)
  • python 内置函数什么用来返回序列中的最大元素
  • 国税税控开票系统
  • 水产品企业所得税8行免税填税额还是利润
  • 领的增值税发票怎么读入?
  • 岗位练兵的作用
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设