用Pygame Zero 画矩形
(空心、实心、多个矩形、多层同心矩形、彩虹条矩形、条纹相间、随机颜色矩形、特殊效果、渐变效果)
本文目录:
零、时光宝盒
一、绘制空心矩形
二、绘制实心矩形
三、画多个静止矩形
四、绘制多层同心矩形
4.1、绘制7层彩虹条矩形
4.2、绘制5层同心矩形
4.3、绘制20层同心随机彩色矩形
4.4、绘制条纹相间的矩形
4.5、绘制梯形扇形
4.6、绘制图形
4.7、绘制条纹相间的同心矩形
4.8、绘制随机颜色的同心填充矩形
五、绘制有渐变效果的填充矩形
零、时光宝盒
逆境清醒:https://blog.csdn.net/weixin_69553582
每个人都是独一无二的,都有自己独特优胜过别人的地方,谁都不可能完全替代另外一个人。谁都有属于自己的独特人生需要去经历。
如果真的关心一个人,有没有想过你给他(她)的是否他(她)心里最想要的?
你认为(或者你身边的人)认为某个人一定知道的事情,其实这个人可能并不知道,是真的不知道,这当中有不可估计的变故。在未了解100%真相前做任何结论都是不明智的。
逆境清醒
2025.1.13
此文地址:https://blog.csdn.net/weixin_69553582/article/details/145121515
一、绘制空心矩形
效果如下图所示:
代码如下:
import pgzrun
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH = 400
HEIGHT = 200
def draw():screen.fill('white')rect=Rect((50, 50), (300, 100))screen.draw.rect(rect,'black')
pgzrun.go()
运行效果为在窗口中画了一个矩形,
def draw():
表示定义了一个绘图函数,冒号后面的语句表示具体的绘制工作。
screen.fill('white')
screen.fill('white')语句中,screen表示屏幕,fill表示用括号里的颜色来填充整个背景画面。
代码表示显示背景是白色。
rect=Rect((50, 50), (300, 100))screen.draw.rect(rect,'black')
rect=Rect((50, 50), (300, 100))是描述所画的矩形
Rect(left, top, width, height) -> Rect
'black'表示圆的颜色为黑色。
二、绘制实心矩形
绘制实心矩形,效果如下:
代码如下:
import pgzrun
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH = 400
HEIGHT = 200
def draw():screen.fill('white')rect=Rect((50, 50), (300, 100))screen.draw.filled_rect(rect,'purple')
pgzrun.go()
运行代码,运行效果为在窗口中画了一个实心矩形,
这里使用了filled_rect函数,filled_rect就是填充矩形的意思。
rect=Rect((50, 50), (300, 100))screen.draw.filled_rect(rect,'purple')
其中screen表示屏幕,draw为绘制的英文单词,filled_rect表示填充矩形;
'purple'表示矩形的颜色为紫色。
三、画多个静止矩形
要画多个小球,我们需要了解一下zero坐标系,
Pygame Zero 的坐标系以左上角为原点 ( 0, 0 )
游戏窗口的绘制区域采用直角坐标系,左上角的坐标为(0,0)。
横轴方向由x坐标表示,取值范围为0到最大横坐标,例如x=800;
纵轴方向由y坐标表示,取值范围为0到最大纵坐标,例如y=600。
游戏窗口中任一点的位置可由其(x,y)坐标表示。
绘制多个静止实心矩形
绘制多个静止实心矩形,效果如下:
运行以下代码,即可在对应的坐标位置绘制出图所示的3个矩形:
import pgzrun
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH = 600
HEIGHT = 400
def draw():screen.fill('white')screen.draw.filled_rect(Rect((50, 50), (300, 100)), 'red')screen.draw.filled_rect(Rect((150, 150), (300, 100)), 'green')screen.draw.filled_rect(Rect((250, 250), (300, 100)), 'blue')
pgzrun.go()
四、绘制多层同心矩形
4.1、绘制7层彩虹条矩形
绘制7层彩虹条矩形,效果如下:
相关的代码如下:
import pgzrun
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH = 400
HEIGHT = 450
def draw():screen.fill('white')screen.draw.filled_rect(Rect((50, 50), (300, 50)), 'red')screen.draw.filled_rect(Rect((50, 100), (300, 50)), 'orange')screen.draw.filled_rect(Rect((50, 150), (300, 50)), 'yellow')screen.draw.filled_rect(Rect((50, 200), (300, 50)), 'green')screen.draw.filled_rect(Rect((50, 250), (300, 50)), 'cyan')screen.draw.filled_rect(Rect((50, 300), (300, 50)), 'blue')screen.draw.filled_rect(Rect((50, 350), (300, 50)), 'purple')
pgzrun.go()
4.2、绘制5层同心矩形
绘制5层同心矩形,效果如下:
相关的代码如下:
import pgzrun
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH = 600
HEIGHT = 600
def draw():screen.fill('white')i=0for r in range(400,0, -40):screen.draw.rect(Rect((100+(400-r),100+(400-r)), (r-i*40, r-i*40)), 'purple')screen.draw.rect(Rect((100+(400-r)+20,(100+(400-r)+20)), (r-(i+1)*40,r-(i+1)*40)), 'white')i=i+1
pgzrun.go()
4.3、绘制20层同心随机彩色矩形
绘制20层同心随机彩色矩形,效果如下图所示:
代码如下:
import pgzrun
import random
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH =360
HEIGHT = 360
def draw():screen.fill('white')i=0for r in range(30, 231, 10):rect = Rect((r, r), (300-i*20, 300-i*20))screen.draw.rect(rect, (random.randint(0, 255), random.randint(0, 255),random.randint(0, 255)))i=i+1
pgzrun.go()
4.4、绘制条纹相间的矩形
绘制条纹相间的矩形,效果如下图所示:
相关代码如下:
import pgzrun
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH = 400
HEIGHT = 400
def draw():screen.fill('white')for r in range(250, 0, -40):screen.draw.filled_rect(Rect((50, r), (300, 50)), 'purple')screen.draw.filled_rect(Rect((50, r - 20), (300, 50)), 'white')
pgzrun.go()
4.5、绘制梯形扇形
绘制梯形扇形,效果如下图所示:
相关代码如下:
import pgzrun
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH = 350
HEIGHT = 350
def draw():screen.fill('white')for r in range(300, 0, -30):screen.draw.filled_rect(Rect((30,30), (300-r, r)), 'purple')screen.draw.filled_rect(Rect((30, 30), (300-r, r - 30)), 'white')
pgzrun.go()
4.6、绘制图形
效果如下图所示:
相关代码如下:
import pgzrun
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH = 350
HEIGHT = 350
def draw():screen.fill('white')for r in range(300, 0, -30):screen.draw.filled_rect(Rect((30,30), (r,r)), 'purple')print( (r,r))print( (r- 30,r - 30))screen.draw.filled_rect(Rect((30, 30), (r- 15,r - 15)), 'white')
pgzrun.go()
4.7、绘制条纹相间的同心矩形
绘制绘制条纹相间的同心矩形,效果如下图所示:
相关代码如下:
#绘制同心多个填充矩形
import pgzrun
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH = 600
HEIGHT = 600
def draw():screen.fill('white')i=0for r in range(400,0, -40):screen.draw.filled_rect(Rect((100+(400-r),100+(400-r)), (r-i*40, r-i*40)), 'purple')screen.draw.filled_rect(Rect((100+(400-r)+20,(100+(400-r)+20)), (r-(i+1)*40,r-(i+1)*40)), 'white')i=i+1
pgzrun.go()
4.8、绘制随机颜色的同心填充矩形
效果如下图所示:
相关代码如下:
import pgzrun
import random
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH =350
HEIGHT = 350
def draw():screen.fill('white')i=0for r in range(1, 201, 10):rect = Rect((r, r), (300-i*20, 300-i*20))screen.draw.filled_rect(rect, (random.randint(0, 255), random.randint(0, 255),random.randint(0, 255)))i=i+1
pgzrun.go()
五、绘制有渐变效果的填充矩形
绘制有渐变效果的填充矩形,效果如下图所示:
实现的代码为:
import pgzrun
import random
TITLE = "逆境清醒编程用法示例pgzrun——画矩形"
WIDTH =350
HEIGHT = 350
def draw():screen.fill('white')i=0for r in range(1, 201, 10):rect = Rect((r, r), (300-i*20, 300-i*20))screen.draw.filled_rect(rect, (r, 0, r))i=i+1
pgzrun.go()
调整代码,我们还可以做出其他效果,例如实现有立体效果的矩形,如下图所示:
本系列Pygame Zero(pgzrun)文章:
1、Pygame Zero(pgzrun)详解(简介、使用方法、坐标系、目录结构、语法参数、安装、实例解释)
2、让我们一起用Pygame Zero 画圆形(空心圆圈、实心圆、多个小球、多层同心圆、随机颜色同心圆、有渐变效果填充圆)
3、用Pygame Zero 画矩形(空心、实心、多个矩形、多层同心矩形、彩虹条矩形、条纹相间、随机颜色矩形、特殊效果、渐变效果)
推荐阅读:
逆境清醒文章总目录表
| | |
给照片换底色(python+opencv) | 猫十二分类 | 基于大模型的虚拟数字人__虚拟主播实例 |
计算机视觉__基本图像操作(显示、读取、保存) | 直方图(颜色直方图、灰度直方图) | 直方图均衡化(调节图像亮度、对比度) |
语音识别实战(python代码)(一) | 人工智能基础篇 | 计算机视觉基础__图像特征 |
逆境清醒
matplotlib 自带绘图样式效果展示速查(28种,全) | PyCharm 社区版(2024.2.3)安装、配置、创建项目 | pycharm汉化插件无法使用也无法卸载的解决方法 |
Three.js实例详解___旋转的精灵女孩(附完整代码和资源)(一) | 开源数据科学平台Anaconda简介 | 最新版本Anaconda 2024.06-1安装设置 |
立体多层玫瑰绘图源码__玫瑰花python 绘图源码集锦 | Python 3D可视化(一) | 让你的作品更出色——词云Word Cloud的制作方法(基于python,WordCloud,stylecloud) |
python Format()函数的用法___实例详解(一)(全,例多)___各种格式化替换,format对齐打印 | 用代码写出浪漫__合集(python、matplotlib、Matlab、java绘制爱心、玫瑰花、前端特效玫瑰、爱心) | python爱心源代码集锦(18款) |
Python中Print()函数的用法___实例详解(全,例多) | Python函数方法实例详解全集(更新中...) | 《 Python List 列表全实例详解系列(一)》__系列总目录、列表概念 |
用代码过中秋,python海龟月饼你要不要尝一口? | python练习题目录 | |
草莓熊python turtle绘图(风车版)附源代码 | 草莓熊python turtle绘图代码(玫瑰花版)附源代码 | 草莓熊python绘图(春节版,圣诞倒数雪花版)附源代码 |
巴斯光年python turtle绘图__附源代码 | 皮卡丘python turtle海龟绘图(电力球版)附源代码 | 【中秋月饼系列】2024年立体月饼新鲜出炉----python画月饼(1)附完整代码 |
逆境清醒
Node.js (v19.1.0npm 8.19.3) vue.js安装配置教程(超详细) | 色彩颜色对照表(一)(16进制、RGB、CMYK、HSV、中英文名) | 2025年1月多家权威机构____编程语言排行榜__薪酬状况 |
| ||
手机屏幕坏了____怎么把里面的资料导出(18种方法) | 【CSDN云IDE】个人使用体验和建议(含超详细操作教程)(python、webGL方向) | 查看jdk安装路径,在windows上实现多个java jdk的共存解决办法,安装java19后终端乱码的解决 |
逆境清醒
用代码画万圣节南瓜(python,MATLAB,html css) |
| CSS @规则(At-rules)系列详解 | |
vue3 项目搭建教程(基于create-vue,vite,Vite + Vue) | 圣诞节系列代码专辑(目录) | Markdown 语法详解大全(超级版) | |
2023年春节祝福第二弹——送你一只守护兔,让它温暖每一个你【html5 css3】画会动的小兔子,炫酷充电,字体特 | 别具一格,原创唯美浪漫情人节表白专辑,(复制就可用)(html5,css3,svg)表白爱心代码(4套) | SVG实例详解系列(一)(svg概述、位图和矢量图区别(图解)、SVG应用实例) | |
| | ||
【程序人生】卡塔尔世界杯元素python海龟绘图(附源代码),世界杯主题前端特效5个(附源码) | HTML+CSS+svg绘制精美彩色闪灯圣诞树,HTML+CSS+Js实时新年时间倒数倒计时(附源代码) | 2023春节祝福系列第一弹(上)(放飞祈福孔明灯,祝福大家身体健康)(附完整源代码及资源免费下载) |
逆境清醒
| | |
tomcat11、tomcat10 安装配置(Windows环境)(详细图文) | Tomcat端口配置(详细) | Tomcat 启动闪退问题解决集(八大类详细) |
逆境清醒
信息系统项目管理师试题 | 云计算 | |