欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

python小歡喜(六)動畫 (2) 移動的笑臉

系統 1990 0

在前一篇文章《python小歡喜(六)動畫 (1) pygame的安裝與初步使用》中介紹了如何安裝pygame。接下來咱們用pygame做一些有趣的動畫效果

顯示笑臉圖片

python小歡喜(六)動畫 (2) 移動的笑臉_第1張圖片
python代碼如下:

            
              
                # -*- coding:utf-8 -*- 
              
              
                # showPic.py
              
              
                # 顯示笑臉圖處
              
              
                import
              
               pygame        
              
                # 導入pygame模塊
              
              
pygame
              
                .
              
              init
              
                (
              
              
                )
              
              
screen 
              
                =
              
               pygame
              
                .
              
              display
              
                .
              
              set_mode
              
                (
              
              
                [
              
              
                800
              
              
                ,
              
              
                600
              
              
                ]
              
              
                )
              
              
keep_going 
              
                =
              
              
                True
              
              
pic 
              
                =
              
               pygame
              
                .
              
              image
              
                .
              
              load
              
                (
              
              
                "CrazySmile.bmp"
              
              
                )
              
              
                #加載當前目錄下的圖片文件 CrazySmile.bmp
              
              
                while
              
               keep_going
              
                :
              
              
                # 事件處理循環
              
              
                for
              
               event 
              
                in
              
               pygame
              
                .
              
              event
              
                .
              
              get
              
                (
              
              
                )
              
              
                :
              
              
                if
              
               event
              
                .
              
              
                type
              
              
                ==
              
               pygame
              
                .
              
              QUIT
              
                :
              
               
            keep_going 
              
                =
              
              
                False
              
              
    screen
              
                .
              
              blit
              
                (
              
              pic
              
                ,
              
              
                (
              
              
                100
              
              
                ,
              
              
                100
              
              
                )
              
              
                )
              
              
    pygame
              
                .
              
              display
              
                .
              
              update
              
                (
              
              
                )
              
              
   
pygame
              
                .
              
              quit
              
                (
              
              
                )
              
              
                # 退出
              
            
          

從源碼可知,該程序要能夠正確執行,當前目錄下需要有一個圖片文件 CrazySmile.bmp
在這里插入圖片描述

以上只是顯示了一副靜止的圖片,接下要讓圖片動起來

彈跳的笑臉

實現效果如下:
python小歡喜(六)動畫 (2) 移動的笑臉_第2張圖片

python代碼如下:

            
              
                # -*- coding:utf-8 -*- 
              
              
                # 移動的笑臉
              
              
                import
              
               pygame       
              
                # 導入pygame模塊
              
              
pygame
              
                .
              
              init
              
                (
              
              
                )
              
              
screen 
              
                =
              
               pygame
              
                .
              
              display
              
                .
              
              set_mode
              
                (
              
              
                [
              
              
                600
              
              
                ,
              
              
                600
              
              
                ]
              
              
                )
              
              
keep_going 
              
                =
              
              
                True
              
              
pic 
              
                =
              
               pygame
              
                .
              
              image
              
                .
              
              load
              
                (
              
              
                "CrazySmile.bmp"
              
              
                )
              
              
                #加載當前目錄下的圖片文件 CrazySmile.bmp
              
              
colorkey 
              
                =
              
               pic
              
                .
              
              get_at
              
                (
              
              
                (
              
              
                0
              
              
                ,
              
              
                0
              
              
                )
              
              
                )
              
              
pic
              
                .
              
              set_colorkey
              
                (
              
              colorkey
              
                )
              
              
picx 
              
                =
              
              
                0
              
              
picy 
              
                =
              
              
                0
              
              
BLACK 
              
                =
              
              
                (
              
              
                0
              
              
                ,
              
              
                0
              
              
                ,
              
              
                0
              
              
                )
              
              
timer 
              
                =
              
               pygame
              
                .
              
              time
              
                .
              
              Clock
              
                (
              
              
                )
              
              
speed 
              
                =
              
              
                5
              
              
                while
              
               keep_going
              
                :
              
              
                # 事件處理循環
              
              
                for
              
               event 
              
                in
              
               pygame
              
                .
              
              event
              
                .
              
              get
              
                (
              
              
                )
              
              
                :
              
              
                if
              
               event
              
                .
              
              
                type
              
              
                ==
              
               pygame
              
                .
              
              QUIT
              
                :
              
               
            keep_going 
              
                =
              
              
                False
              
              
    picx 
              
                +=
              
               speed  
              
                # 當speed大于0時,增加圖片的X坐標值,否則減少
              
              
    picy 
              
                +=
              
               speed  
              
                # 當speed大于0時,增加圖片的Y坐標值,否則減少
              
              
                if
              
               picx 
              
                <=
              
              
                0
              
              
                or
              
               picx 
              
                +
              
               pic
              
                .
              
              get_width
              
                (
              
              
                )
              
              
                >=
              
              
                600
              
              
                :
              
              
        speed 
              
                =
              
              
                -
              
              speed 
              
                #當到達窗口邊緣時,速度取反
              
              
    screen
              
                .
              
              fill
              
                (
              
              BLACK
              
                )
              
                  
    screen
              
                .
              
              blit
              
                (
              
              pic
              
                ,
              
              
                (
              
              picx
              
                ,
              
              picy
              
                )
              
              
                )
              
              
    pygame
              
                .
              
              display
              
                .
              
              update
              
                (
              
              
                )
              
              
    timer
              
                .
              
              tick
              
                (
              
              
                60
              
              
                )
              
              
    
pygame
              
                .
              
              quit
              
                (
              
              
                )
              
              
                # 退出
              
            
          

帶尾巴的移動的笑臉

實現效果如下:

python代碼如下:

            
              
                # -*- coding:utf-8 -*- 
              
              
                # 帶尾巴的移動的笑臉
              
              
                import
              
               pygame        
              
                # 導入pygame模塊
              
              
pygame
              
                .
              
              init
              
                (
              
              
                )
              
              
screen 
              
                =
              
               pygame
              
                .
              
              display
              
                .
              
              set_mode
              
                (
              
              
                [
              
              
                800
              
              
                ,
              
              
                600
              
              
                ]
              
              
                )
              
              
keep_going 
              
                =
              
              
                True
              
              
pic 
              
                =
              
               pygame
              
                .
              
              image
              
                .
              
              load
              
                (
              
              
                "CrazySmile.bmp"
              
              
                )
              
              
                #加載當前目錄下的圖片文件 CrazySmile.bmp
              
              
colorkey 
              
                =
              
               pic
              
                .
              
              get_at
              
                (
              
              
                (
              
              
                0
              
              
                ,
              
              
                0
              
              
                )
              
              
                )
              
              
pic
              
                .
              
              set_colorkey
              
                (
              
              colorkey
              
                )
              
              
picx 
              
                =
              
              
                0
              
              
picy 
              
                =
              
              
                0
              
              
BLACK 
              
                =
              
              
                (
              
              
                0
              
              
                ,
              
              
                0
              
              
                ,
              
              
                0
              
              
                )
              
              
timer 
              
                =
              
               pygame
              
                .
              
              time
              
                .
              
              Clock
              
                (
              
              
                )
              
              
speedx 
              
                =
              
              
                5
              
              
speedy 
              
                =
              
              
                5
              
              
                while
              
               keep_going
              
                :
              
              
                # 事件處理循環
              
              
                for
              
               event 
              
                in
              
               pygame
              
                .
              
              event
              
                .
              
              get
              
                (
              
              
                )
              
              
                :
              
              
                if
              
               event
              
                .
              
              
                type
              
              
                ==
              
               pygame
              
                .
              
              QUIT
              
                :
              
               
            keep_going 
              
                =
              
              
                False
              
              
    picx 
              
                +=
              
               speedx 
              
                # 當speedx大于0時,增加圖片的X坐標值,否則減少
              
              
    picy 
              
                +=
              
               speedy 
              
                # 當speedy大于0時,增加圖片的Y坐標值,否則減少
              
              
                if
              
               picx 
              
                <=
              
              
                0
              
              
                or
              
               picx 
              
                +
              
               pic
              
                .
              
              get_width
              
                (
              
              
                )
              
              
                >=
              
              
                800
              
              
                :
              
              
        speedx 
              
                =
              
              
                -
              
              speedx 
              
                #當到達窗口邊緣時,速度取反
              
              
                if
              
               picy 
              
                <=
              
              
                0
              
              
                or
              
               picy 
              
                +
              
               pic
              
                .
              
              get_height
              
                (
              
              
                )
              
              
                >=
              
              
                600
              
              
                :
              
              
        speedy 
              
                =
              
              
                -
              
              speedy 
              
                #當到達窗口邊緣時,速度取反
              
              
                #screen.fill(BLACK) # 不做"擦黑板"的操作,達到累加效果,顯示出尾巴 
              
              
    screen
              
                .
              
              blit
              
                (
              
              pic
              
                ,
              
              
                (
              
              picx
              
                ,
              
               picy
              
                )
              
              
                )
              
              
    pygame
              
                .
              
              display
              
                .
              
              update
              
                (
              
              
                )
              
              
    timer
              
                .
              
              tick
              
                (
              
              
                60
              
              
                )
              
              
    
pygame
              
                .
              
              quit
              
                (
              
              
                )
              
              
                # Exit
              
            
          

以上動畫效果的實現原理,請查看源碼及注釋,應該不難理解。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产精品一区二区免费 | 亚洲韩精品欧美一区二区三区 | 久久精品小短片 | 91精品国产爱久久久久 | 国内精品视频区在线2021 | 一a一级片 | 久久激情av | 欧美精品 在线观看 | A片扒开双腿猛进入免费 | 浮力影院在线观看 | 精品国产不卡一区二区三区 | 一级毛片国产真人永久在线 | 毛片网站大全 | 欧美亚洲国产第一页草草 | 四虎永久 | 999精品国产人妻无码系列久久 | 午夜视频在线免费观看 | 国产在线观看91一区二区三区 | 国产精品色在线网站 | 特黄免费 | 日韩欧美亚洲 | 四虎4hutv永久在线影院 | 日本私人色多多 | 久久精品国产久精国产 | 妞干网在线观看 | saoav| 免费国产在线视频 | 奇米网在线观看 | 欧美视频在线一区 | 男女午夜性爽快免费视频不卡 | 欧美精品 在线播放 | 日本高清乱理伦片中文字幕啊 | 波多野结衣中文丝袜字幕 | 国内精品小视频福利网址 | 波多野结衣免费视频观看 | 韩国一级免费视频 | 国产在线精品区 | 91激情网 | 欧美成人a∨高清免费观看 毛片特级 | 日韩欧美一区二区三区免费观看 | 国产二区三区在线播放 |