计算机图形学作业
来源:互联网 发布:云计算企业投融资政策 编辑:程序博客网 时间:2024/05/29 16:18
2017/04/18
惊奇的发现使用不同的显卡取色数值竟然不同……
请在Intel集显下运行这段代码。
使用GTX 870M运行该段代码则无法正常填色,原因是getpixel()得到的数值和使用Intel集显时的不同!
第二次图形学作业,使用Python的PyOpenGL库,运用区域填充的递归算法(种子填充)绘制“明”字
用了三个小时,踏遍无数坑终于搞定(PyOpenGL相关资料实在太少)
from OpenGL.GL import * from OpenGL.GLU import * from OpenGL.GLUT import * a=0 #Timesimport syssys.setrecursionlimit(1000000) #Crack recursion limitdef draw(): glClear(GL_COLOR_BUFFER_BIT) glBegin(GL_LINE_LOOP) glColor3f(1.0,0.0,0.0) glVertex2i(-30,-20) glVertex2i(-30,30) glVertex2i(0,30) glVertex2i(0,-20) glEnd() glBegin(GL_LINE_LOOP) glColor3f(1.0, 0.0, 0.0) glVertex2i(-10,10) glVertex2i(-10,20) glVertex2i(-20,20) glVertex2i(-20,10) glEnd() glBegin(GL_LINE_LOOP) glColor3f(1.0, 0.0, 0.0) glVertex2i(-10, 0) glVertex2i(-20, 0) glVertex2i(-20, -10) glVertex2i(-10, -10) glEnd() glBegin(GL_LINE_LOOP) glColor3f(1.0, 0.0, 0.0) glVertex2i(10, 40) glVertex2i(40, 40) glVertex2i(40, -40) glVertex2i(30, -40) glVertex2i(30, -10) glVertex2i(20, -10) glVertex2i(20, -40) glVertex2i(10, -40) glEnd() glBegin(GL_LINE_LOOP) glColor3f(1.0, 0.0, 0.0) glVertex2i(20, 20) glVertex2i(20, 30) glVertex2i(30, 30) glVertex2i(30, 20) glEnd() glBegin(GL_LINE_LOOP) glColor3f(1.0, 0.0, 0.0) glVertex2i(20, 10) glVertex2i(30, 10) glVertex2i(30, 0) glVertex2i(20, 0) glEnd() fill(-5,20,255) fill(10,10,255)def fill(x,y,boundaryvalue): global a a=a+1 print a if getpixel(x,y)!=boundaryvalue: setpixel(x,y) fill(x,y-1,boundaryvalue) fill(x,y+1,boundaryvalue) fill(x-1,y,boundaryvalue) fill(x+1,y,boundaryvalue)def setpixel(x,y): glBegin(GL_POINTS) glColor3f(1.0, 0.0, 0.0) glVertex2i(x,y) glEnd() glFlush()def getpixel(x,y): a = (GLuint * 1)(0) glReadPixels(x+100, y+100, 1, 1, GL_RGB, GL_UNSIGNED_BYTE, a) return int(a[0])glutInit()glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB)glutInitWindowSize(200,200)glutCreateWindow("HiddenStrawberry")glLoadIdentity()gluOrtho2D(-100,100,-100,100)glutDisplayFunc(draw)glutMainLoop()
0 0
- 计算机图形学作业
- 计算机图形学作业
- 计算机图形学的课程设计作业
- 计算机图形学 程序代码作业【首发】
- 《高级计算机图形学》大作业的报告
- 计算机图形学作业——DDA算法实现
- 计算机图形学
- 计算机图形学
- 计算机图形学
- 计算机图形学
- 计算机图形学
- 计算机图形学
- 计算机图形学
- 计算机图形学
- 计算机图形学
- 计算机图形学
- 计算机图形学
- 计算机图形学
- tp+layer.js的ajax例子
- Linux Platform总线+SPI总线分析-SPI驱动
- Web基础之与Servlet的邂逅
- Beaglebone black安装FreeBSD
- AliSQL开源功能特性
- 计算机图形学作业
- 求一个递增序列的二叉搜索树的数量。
- 十八JdbcTemplate具名参数的使用
- 使用朴素贝叶斯进行文本的分类
- Linux代码性能检测利器(二)--OProfile之代码分析示例
- 移动开发技术新趋向(二)
- C++中的作用域
- textview下划线
- SVN解除项目的版本控制