python--pygame库窗口绘制图形实例

pygame窗口绘制图形:pygame.draw.circle()、pygame.draw.rect()、pygame.draw.line()、pygame.draw.arc()实例。

目录

使用版本说明与pip安装

绘制图形(圆形与矩形)

绘制图形(线段与弧线)


使用版本说明与pip安装

python3.10.5

pygame2.1.2

安装pygame库,使用pip模块帮助下载安装,win+r打开控制台,输入cmd然后安装

python -m pip install pygame


绘制图形(圆形与矩形)

直接上代码:

#PYGAME库基础
#绘制图形

import pygame                                   #导入pygame库
from pygame.locals import *                     #导入该库中的常量
import sys
#-------------基本窗口信息-----------------------------------------------------------
pygame.init()                                   #初始化pygame
screen = pygame.display.set_mode((600,500))     #获取显示系统访问,创建600*500窗口
pygame.display.set_caption("Drawing shape")   #窗口的名字


#------------------画圆形-----------------------------
class draw:                                     #定义一个类
    def event_circle(self):                     #定义一个事件
        #Python在类中定义方法的时候,方法会被传进一个参数,即当前对象的地址,
        #所以一般在类中定义方法的时候,必须在方法中至少定义一个参数。一般情况下我们将其命名为"self"
        while True:
            for event in pygame.event.get():
                if event.type == pygame.QUIT:
                    sys.exit()

            screen.fill((0,0,200))  #填充窗口背景色


            color = 255,255,0
            position = 300,250
            radius = 100
            width = 10
            pygame.draw.circle(screen,color,position,radius,width)
            #调用画圆的函数(背景色、颜色、位置、半径、线宽度)

            pygame.display.update()

#------------------画矩形-----------------------------

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

            screen.fill((0,0,200))  #填充窗口背景色

            color = 255,255,0
            width = 0  #实线
            position = 300, 250, 100,  100
            pygame.draw.rect(screen,color,position,width)
            #调用矩形的函数(背景色、颜色、位置、线宽度)

            pygame.display.update()


#-------------主运行函数----------------------------------------------
if __name__ == '__main__':
    ai = draw()
    #ai.event_circle()                    #画圆
    ai.event_rectangles()                 #画矩形   

这里定义了一个类以及两个事件用于绘制不同图形,要绘制直接在最后的主运行函数部分使用就可以

效果图如下:

 

绘制图形(线段与弧线)

直接上代码:

#PYGAME库基础
#绘制线条与弧线
import math                                     #导入数学计算相关库
import pygame                                   #导入pygame库
from pygame.locals import *                     #导入该库中的常量
import sys
#-------------基本窗口信息-----------------------------------------------------------
pygame.init()                                   #初始化pygame
screen = pygame.display.set_mode((600,500))     #获取显示系统访问,创建600*500窗口
pygame.display.set_caption("Drawing shape2")   #窗口的名字


#------------------画线-----------------------------
class draw:                                     #定义一个类
    def event_line(self):                     #定义一个事件
        #Python在类中定义方法的时候,方法会被传进一个参数,即当前对象的地址,
        #所以一般在类中定义方法的时候,必须在方法中至少定义一个参数。一般情况下我们将其命名为"self"
        while True:
            for event in pygame.event.get():
                if event.type == pygame.QUIT:
                    sys.exit()

            screen.fill((0,81,0))  #填充窗口背景色

            color = 100,255,201
            width = 9
            pygame.draw.line(screen,color,(100,100),(500,400),width)
            #调用画线的函数(背景色、颜色、位置(起始与结束)、线宽度)

            pygame.display.update()

#------------------画弧线-----------------------------

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

            screen.fill((0,0,200))  #填充窗口背景色

            color = 255,0,200
            width = 9  #实线
            position = 300, 250, 100,  100
            start_angle = math.radians(0)   
            end_angle = math.radians(180)
            pygame.draw.arc(screen,color,position,start_angle,end_angle,width)
            #调用弧线的函数(背景色、颜色、位置、起始角度、终止角度、线宽度)

            pygame.display.update()


#-------------主运行函数----------------------------------------------
if __name__ == '__main__':
    ai = draw()
    #ai.event_line()
    ai.event_arc()

效果图:

 

 

(tip:有一个问题就是循环内的sys.exit()不能使程序退出,不知道有没有人解决一下这个问题...)

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值