美文网首页
day15 pygame

day15 pygame

作者: 我去买个橘子o | 来源:发表于2019-03-25 09:27 被阅读0次

    1. 创建窗口

    import pygame
    
    #初始化游戏相关硬件
    pygame.init()
    
    #.创建游戏窗口
    #set_mode(width, height) 设置窗口大小
    window = pygame.display.set_mode((600, 400))
    
    #游戏循环(保证游戏能够一直运行)
    while True:
        #4.检测事件
        for event in pygame.event.get():
            #判断事件类型,根据不同的事件做不同的事情
            if event.type == pygame.QUIT:
                exit()      #关闭程序
    
    

    2. 显示图片

    import pygame
    
    #初始化游戏相关硬件
    pygame.init()
    
    #创建游戏窗口
    #set_mode(width, height) 设置窗口大小
    window = pygame.display.set_mode((600, 400))
    
    #设置窗口标题
    pygame.display.set_caption('图片')
    
    #设置窗口背景颜色
    window.fill((0, 100, 0))
    
    #加载图片
    image1 = pygame.image.load('./files./luffy4.jpg')
    
    #图片的缩放  scale(图片对象, 大小)
    image1 = pygame.transform.scale(image1, (200, 200))
    
    #图片的旋转  rotozoom(图片对象, 旋转角度, 缩放比例)
    image1 = pygame.transform.rotozoom(image1, 45, 0.5)
    
    #获取图片大小
    img_w1, img_h1 = image1.get_size()
    print(img_w1, img_h1)
    
    #显示图片  bilt(显示对象, 位置)
    window.blit(image1, (0, 0))
    
    #刷新屏幕
    pygame.display.flip()
    
    
    
    #游戏循环(保证游戏能够一直运行)
    while True:
        #4.检测事件
        for event in pygame.event.get():
            #判断事件类型,根据不同的事件做不同的事情
            if event.type == pygame.QUIT:
                exit()      #关闭程序
    

    3. 显示字体

    import pygame
    
    #初始化游戏相关硬件
    pygame.init()
    
    #创建游戏窗口
    #set_mode(width, height) 设置窗口大小
    window = pygame.display.set_mode((600, 400))
    
    #设置窗口标题
    pygame.display.set_caption('图片')
    
    #设置窗口背景颜色
    window.fill((0, 100, 0))
    
    
    #创建字体对象
    #1.系统字体  SysFont(字体名字, 字体大小, 是否加粗=False, 是否倾斜=Flase)
    #2.自定义字体  Font(字体文件路径, 字体大小)
    font1 = pygame.font.Font('./files/aa.ttf', 50)
    
    #创建字体对象  render(文字, 是否平滑, 文字颜色, 背景颜色=None)
    text = font1.render('hello pygame 你好', True, (0, 0, 0), (255, 255, 0))
    
    #获取文字对象大小
    t_w, t_h = text.get_size()
    
    #旋转文字
    text = pygame.transform.rotozoom(text, 45, 1)
    
    #显示文字对象
    window.blit(text, (0, 0))
    
    #加载图片
    image1 = pygame.image.load('./files./luffy4.jpg')
    
    #图片的缩放  scale(图片对象, 大小)
    image1 = pygame.transform.scale(image1, (200, 200))
    
    #图片的旋转  rotozoom(图片对象, 旋转角度, 缩放比例)
    image1 = pygame.transform.rotozoom(image1, 45, 0.5)
    
    #获取图片大小
    img_w1, img_h1 = image1.get_size()
    print(img_w1, img_h1)
    
    #显示图片  bilt(显示对象, 位置)
    window.blit(image1, (0, 0))
    
    #刷新屏幕
    pygame.display.flip()
    
    
    
    #游戏循环(保证游戏能够一直运行)
    while True:
        #4.检测事件
        for event in pygame.event.get():
            #判断事件类型,根据不同的事件做不同的事情
            if event.type == pygame.QUIT:
                exit()      #关闭程序
    
    

    4. 显示图形

    import pygame
    
    #初始化游戏相关硬件
    pygame.init()
    
    #创建游戏窗口
    #set_mode(width, height) 设置窗口大小
    window = pygame.display.set_mode((600, 400))
    window.fill((255, 255, 255))
    
    #画直线  line(画在哪里, 颜色, 起点, 终点, 线宽=1)
    pygame.draw.line(window, (255, 0, 0), (10, 10), (10, 100), 5)
    #def lines(Surface, color, closed, pointlist, width=1)
    
    points = [(20, 20), (300, 200), (200, 400), (120, 100), (500, 50)]
    pygame.draw.lines(window, (0, 255, 0), True, points)
    
    
    #画圆  def circle(Surface, color, pos, redius, width=0)
    #圆环
    pygame.draw.circle(window, (0, 0, 255), (100, 100), 50, 2)
    #实心圆
    pygame.draw.circle(window, (255,255, 0), (100, 200), 50, 0)
    
    #画椭圆  def ellipse(Surface, color, Rect, width=0)
    pygame.draw.ellipse(window, (0, 23, 200), (300, 200, 200, 100))
    
    #画弧线  def arc(Surface, color, Rect, start_angle, stop_angle, width=1)
    # start_angle, stop_angle  弧度(0~2pi)
    pi = 3.1415926
    pygame.draw.arc(window, (0, 0, 0), (20, 250, 100, 100), pi/4, 3*pi/4, 5)
    
    #画多边形  def polygon(Surface, color, pointlist, width=0)
    points2 = [(100, 100), (120, 200), (80, 200)]
    pygame.draw.polygon(window, (20, 200, 100), points2)
    
    
    
    pygame.display.flip()
    #3.游戏循环(保证游戏能够一直运行)
    while True:
        #4.检测事件
        for event in pygame.event.get():
            #判断事件类型,根据不同的事件做不同的事情
            if event.type == pygame.QUIT:
                exit()      #关闭程序
    
    

    5. 动画

    import pygame
    from random import randint
    
    #初始化游戏相关硬件
    pygame.init()
    
    #创建游戏窗口
    #set_mode(width, height) 设置窗口大小
    window = pygame.display.set_mode((600, 400))
    window.fill((255, 255, 255))
    
    text = pygame.font.SysFont('Times', 50).render('hello', True, (255, 0, 255))
    window.blit(text, (100, 200))  #blit()显示图片或者字体
    
    pygame.draw.circle(window, (255, 0, 0), (100, 100), 50)#画圆
    
    c_x = 100   #圆心的横坐标
    c_y = 100   #圆心的纵坐标
    
    #第一次刷新
    pygame.display.flip()
    
    num = 0
    speed = 3       #圆的移动速度
    r = 50
    speed2 = 1  #圆的半径的变化单位
    #3.游戏循环(保证游戏能够一直运行)
    while True:
        pygame.time.delay(10)
        pygame.draw.circle(window, (255, 255, 255), (c_x, c_y), r)
        r += speed2
        if r> 100:
            r = 100
            speed2 *= -1
        elif r < 10:
            speed2 *= -1
    
        #移动
        c_y += speed
        if c_y >= 550:
            c_y = 550
            speed *= -1
        elif c_y <50:
            c_y = 50
            speed *= -1
    
        pygame.draw.circle(window, (randint(0, 255), randint(0, 255), randint(0, 255)), (c_x, c_y), r)
        pygame.display.flip()
        window.blit(text, (100, 200))
        for event in pygame.event.get():
            #判断事件类型,根据不同的事件做不同的事情
            if event.type == pygame.QUIT:
                exit()      #关闭程序
    
    

    6. 事件

    import pygame
    
    from random import randint
    
    
    #初始化游戏相关硬件
    pygame.init()
    
    #2.创建游戏窗口
    #set_mode(width, height) 设置窗口大小
    window = pygame.display.set_mode((600, 400))
    window.fill((255, 255, 255))
    
    pygame.draw.circle(window, (255, 255, 0), (100, 100), 50)
    pygame.display.flip()
    
    is_blink = False
    #3.游戏循环(保证游戏能够一直运行)
    while True:
        if is_blink:
            window.fill((255, 255, 255))
            pygame.draw.circle(window, (randint(0, 255), randint(0, 255), randint(0, 255)), (100, 100), 50)
            pygame.display.update()
    
        for event in pygame.event.get():
            #判断事件类型,根据不同的事件做不同的事情
            if event.type == pygame.QUIT:
                exit()      #关闭程序
            elif event.type == pygame.MOUSEBUTTONDOWN:
                print('鼠标按下', event.pos)
                is_blink = not is_blink
    
            elif event.type == pygame.MOUSEBUTTONUP:
                print('鼠标弹起', event.pos)
    
            elif event.type == pygame.MOUSEMOTION:
                print('动', event.pos)
                pygame.draw.circle(window, (randint(0, 255), randint(0, 255), randint(0, 255)), event.pos, 100)
                pygame.display.update()
    
            elif event.type == pygame.KEYDOWN:
                print('键盘按下', event.key, chr(event.key))
    
            elif event.type == pygame.KEYUP:
                print('键盘弹起', event.key, chr(event.key))件
    

    相关文章

      网友评论

          本文标题:day15 pygame

          本文链接:https://www.haomeiwen.com/subject/lwwmvqtx.html