首页 > 其他分享 >绘制图元:线段、三角形、四边形

绘制图元:线段、三角形、四边形

时间:2023-01-10 21:00:11浏览次数:35  
标签:1.0 glVertex3f 绘制图 0.0 线段 0.5 run 四边形 绘制

技术

PyOpenGL

 

run函数请见上一篇。

 

绘制线段

代码(py)

def drawAxis():
    glTranslatef(-2.0,-2.0,-6.0)   # 偏左下,是为了看清楚蓝色的Z轴
    glBegin(GL_LINES)               # 开始绘制
    # x轴
    glColor4f(1.0, 0.0, 0.0, 1.0)   # 红色不透明
    glVertex3f(-0.5, 0.0, 0.0)      # 设置x轴起始点 +
    glVertex3f(0.5, 0.0, 0.0)       # 设置x轴结束点  -
    
    # y轴
    glColor4f(0.0, 1.0, 0.0, 1.0)   # 绿色不透明
    glVertex3f(0.0, -0.5, 0.0)      # 设置x轴起始点 +
    glVertex3f(0.0, 0.5, 0.0)       # 设置x轴结束点  -
    
    # z轴
    glColor4f(0.0, 0.0, 1.0, 1.0)   # 蓝色不透明
    glVertex3f(0.0, 0.0, -0.5)      # 设置x轴起始点 +
    glVertex3f(0.0, 0.0, 0.5)       # 设置x轴结束点  -
    
    glEnd()                         # 结束绘制
 
run(drawAxis)

 

 

绘制三角形

代码(py)

def drawTriangle():
    # 移动位置(下面是两种移动位置的情况)
    # 大约三分之一宽,二分之一高
    # glTranslatef(0.0, 0.0, -5.0)
    # 高度已经超出了窗体高度,可视部分的宽度差一点
    # glTranslatef(0.0, 0.0, -2.0)
    # 绘制三角形
    glBegin(GL_POLYGON)
    glVertex3f(0.0, 1.0, 0.0)
    glVertex3f(1.0, -1.0, 0.0)
    glVertex3f(-1.0, -1.0, 0.0)
    glEnd()


run(drawTriangle)

 


绘制四边形
代码(py)

def drawObject():
    glTranslatef(0.0,0.0,-6.0)
    glBegin(GL_QUADS)
    glVertex3f(-1.0, 1.0, 0.0)
    glVertex3f(1.0, 1.0, 0.0)
    glVertex3f(1.0, -1.0, 0.0)
    glVertex3f(-1.0, -1.0, 0.0)
    glEnd()

run(drawObject)

 

标签:1.0,glVertex3f,绘制图,0.0,线段,0.5,run,四边形,绘制
From: https://www.cnblogs.com/lusonixs/p/17041365.html

相关文章

  • 【CF802O】April Fools' Problem (hard) 题解 (线段树模拟费用流)
    线段树模拟费用流。LG传送门。SolutionPart1根据题面,显然想到此题是费用流。建图方式亦是显然:\(S\rightarrowi\),流量为\(1\),费用为\(a_i\);\(i\rightarrowT_0\)......
  • 【开源代码】运动模糊时准确检测和定位线段,通用的帧事件特征融合网络
    以下内容来自从零开始机器人SLAM知识星球每日更新内容点击领取学习资料→机器人SLAM学习资料大礼包论文##开源代码#DetectingLineSegmentsinMotion-blurredImag......
  • 如何用线段树维护一些数学公式
    1.维护等差数列例1:洛谷P1438无聊的数列(插入等差数列,单点查询)这题有两个做法,第一个做法是用线段树维护等差数列,不过这里不多赘述,在下一个例子再详细介绍;第二个做法是用......
  • hdu:张煊的金箍棒(2)(线段树)
    ProblemDescription张煊的金箍棒升级了!升级后的金箍棒是由几根相同长度的金属棒连接而成(最开始都是铜棒,从1到N编号);张煊作为金箍棒的主人,可以对金箍棒施以任意的变换,每......
  • hdu:张煊的金箍棒(3)(线段树)
    ProblemDescription张煊的金箍棒升级了!升级后的金箍棒是由N段相同长度的金属棒连接而成(最开始每段金属棒的价值都是1,从1到N编号);张煊作为金箍棒的主人,可以对金箍棒任意......
  • 【学习笔记 / 数据结构】线段树进阶
    扫描线【洛谷模板题传送门】思想以一条法线从下往上扫描整个图形,图形面积并即为\(\sum\limits_{i=1}^{n-1}len_i\times\left(h_{i+1}-h_i\right)\),其中\(len_i\)......
  • 【Unity TIL】6. 如何判断两条线段是否相交
    AABB碰撞检测,也就是轴对齐碰撞检测,用平行于x,y轴的矩形表示物体。如何判断两个矩形是否相撞,可以通过分别判断x,y轴上的线段是否相交。假设线段分别为(s1,e1),(s2,e2),判......
  • 线段树
    概述线段树通过在原数组上建一棵二叉树,高效地处理各种结合性问题。线段树的生命就在于pushup和pushdown,更具体地,就在于结合性和差分性。操作线段树什么都支......
  • 吉老师线段树
    概述所谓吉老师线段树,指的其实是吉如一发明/整理的线段树上区间最值操作和区间历史最值的维护方式。操作区间最值操作\(\foralli\in[l,r],a_i=\min/\max(a_i,v)\)......
  • 某个被洛谷 ban 掉的吉老师线段树
    概述所谓吉老师线段树,指的其实是吉如一发明/整理的线段树上区间最值操作和区间历史最值的维护方式。操作区间最值操作\(\foralli\in[l,r],a_i=\min/\max(a_i,v)\)......