pygame.draw--绘图

  

 

复制代码
import pygame

pygame.init()
screen = pygame.display.set_mode((960, 600))
background = pygame.image.load('2.jpg').convert_alpha()
rect=pygame.Rect(10,10,200,100)
x=pygame.draw.rect(background, (0,0,255), rect,5)  #绘制矩形
#参数1:Surface对象,在此对象上绘制
#参数2:颜色
#参数3:矩形区域
#参数4:线条的粗细,单位为像素;默认值为0,表示填充矩形内部
#返回值就是参数3的矩形  <rect(10, 10, 200, 100)>

print(x)

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit()

    screen.blit(background,(0,0))
    pygame.display.update()
复制代码

 

L=[(10,10),(110,10),(110,50),(10,50)]
x=pygame.draw.polygon(background, (0,0,255), L,5)  #绘制多边形【封闭的】
#参数1:Surface对象,在此对象上绘制
#参数2:颜色
#参数3:列表--多边形各顶点坐标
#参数4:线条的粗细,单位为像素;默认值为0,表示填充多边形内部
#返回值:能够包含整个多边形的最小矩形  <rect(10, 10, 101, 41)>

 

复制代码
background = pygame.image.load('2.jpg').convert_alpha()
x=pygame.draw.circle(background, (0,0,255), (400,400),100,5)  #绘制圆
#参数1:Surface对象,在此对象上绘制
#参数2:颜色
#参数3:圆心坐标
#参数4:半径
#参数5:线条的粗细,单位为像素;默认值为0,表示填充圆内部
#返回值:能够包含整个圆的最小矩形    <rect(300, 300, 200, 200)>
复制代码

 

复制代码
rect=pygame.Rect(10,10,200,100)
background = pygame.image.load('2.jpg').convert_alpha()
x=pygame.draw.ellipse(background, (0,0,255), rect,5)  #绘制椭圆
#参数1:Surface对象,在此对象上绘制
#参数2:颜色
#参数3:矩形--在这个矩形类绘制椭圆
#参数4:线条的粗细,单位为像素;默认值为0,表示填充圆内部
#返回值:能够包含整个椭圆的最小矩形    <rect(10, 10, 200, 100)>
复制代码

 

复制代码
x=pygame.draw.arc(background, (0,0,255), rect,0,3.14,5)  #绘制圆弧
#参数1:Surface对象,在此对象上绘制
#参数2:颜色
#参数3:矩形--圆弧就是椭圆的一部分
#参数4:起始角度--弧度为单位
#参数5:终止角度--弧度为单位
#参数6:线条的粗细,单位为像素
#返回值:就是参数3的矩形    <rect(10, 10, 200, 100)>
复制代码

 

x=pygame.draw.line(background, (0,0,255), (10,10),(100,100),5)  #绘制直线
#参数1:Surface对象,在此对象上绘制
#参数2:颜色
#参数3:起点坐标
#参数4:终点坐标
#参数5:线条的粗细,单位为像素
#返回值:一个矩形

 

复制代码
L=[(10,10),(100,10),(50,100)]
x=pygame.draw.lines(background, (0,0,255),False,L,5)  #绘制多条连续直线
#参数1:Surface对象,在此对象上绘制
#参数2:颜色
#参数3:布尔值,为真表示需要把第一点和最后一点连接起来
#参数4:列表--直线点坐标
#参数5:线条的粗细,单位为像素
#返回值:一个矩形
复制代码

 

x=pygame.draw.aaline(background, (0,0,255),(10,10),(200,200),5)  #绘制一条平滑的(消除锯齿)直线段
#参数1:Surface对象,在此对象上绘制
#参数2:颜色
#参数3:起点坐标
#参数4:终点坐标
#参数5:线条的粗细,单位为像素
#返回值:一个矩形

 

 

复制代码
L=[(10,10),(100,10),(50,100)]
x=pygame.draw.aalines(background, (0,0,255),False,L,5)  #绘制连续的抗锯齿线段
#参数1:Surface对象,在此对象上绘制
#参数2:颜色
#参数3:布尔值,为真表示需要把第一点和最后一点连接起来
#参数4:列表--直线点坐标
#参数5:线条的粗细,单位为像素
#返回值:一个矩形
复制代码

 

 

 

posted @   天子骄龙  阅读(638)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
历史上的今天:
2019-06-12 分压电路
2019-06-12 滑块QAbstractSlider
点击右上角即可分享
微信分享提示