位置: 编程技术 - 正文

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)

  • 非居民个人利息所得个税税率
  • 金税啥意思
  • 汽车销售分期付款的账务处理
  • 偶然所得代扣代缴义务人
  • 专票上不小心印上字了,怎么去除
  • 个人收到利息要交增值税吗为什么
  • 营改增结束了吗
  • 企业销售矿产是否需要缴纳资源税呢?
  • 增值税 代销
  • 发票纳税人识别号错了能重新开吗
  • 行程单和发票的区别 报销
  • 适用增值税差额征税的小规模纳税人
  • 个人独资企业股权转让要交什么税
  • 企业销售产品的会计分录
  • 有未分配利润就有盈余返还吗?
  • 企业涉及预计负债的主要事项包括
  • 清算期间未申报债权
  • 超市收代金券如何处理
  • 合并报表实操视频
  • 现金流量表的计算公式原理
  • 质押已至票据到期日
  • 公司处理固定资产车辆怎么开发票
  • 税务检查所得税调整
  • 业务招待费和福利费不能抵扣增值税吗
  • saimon.exe - saimon进程有什么用 有何作用
  • 长期股权投资引入新投资者账务处理
  • 如何判定增值税发票真伪
  • php数组有哪几种类型
  • 成本结转的科目
  • 供水公司与用户合作协议
  • arthas常用命令
  • 企业实行股权激励的作用
  • 长期资产的减值和流动资产的减值的区别
  • 软件服务费应计入什么
  • 华硕11代笔记本装win10
  • 建筑行业现在还能斤不
  • autocut跟踪调节
  • java中的gui是什么
  • 员工辞退补偿金扣个税吗
  • 公司财务人员岗位职责
  • 农机销售免税政策
  • python字符串如何换行
  • 长投会计分录总结
  • 个体户开出的增值税发票丢失了怎么办?
  • 核定征收企业所得税的小型微利企业不得享受优惠政策
  • 收到境外企业顾问费
  • PostgreSQL中的OID和XID 说明
  • 跨境收入免增值税需做备案吗
  • 不反写会影响开票吗
  • 一般纳税人开具的普票可以抵扣吗
  • 存货增加使经营活动现金净流量减少该怎么办
  • 出口收汇业务基本原则
  • 融资租赁会计处理实例承租人
  • 固定资产计提完折旧残值怎么处理
  • 小企业会计准则2023电子版
  • 购进货物用于集体福利会计分录
  • 纳税人的住房租金专项
  • 什么是对公账户?
  • sql时间类型转换
  • 如何获取数据库的sid
  • sql动态表
  • Sqlserver timestamp数据类使用介绍
  • win8老是自动安装软件
  • shell下同时读取多个文件的方法
  • win8使用教程和技能
  • linux的web服务器
  • linux文本操作命令
  • opengl 2
  • wow 脚本开发
  • jquery常用的事件绑定函数有哪些
  • shell脚本 -ne 0
  • 怎么利用python爬虫爬数据
  • [置顶]游戏名:chivalry2
  • javascript的简介
  • js prev()
  • jquer选择器
  • android 材料设计
  • 购买服务合同模版
  • 关于进一步加强工作纪律改进工作作风的通知
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设