本章我们将实现旋转的方块,如图所示。首先实现方块的绘制,学习坐标系的平移、旋转与缩放;接着实现一行方块的绘制,学习坐标系的保存与恢复;然后利用循环嵌套实现方块阵列的绘制;最后学习中文字符串的处理,实现文字表情包的制作。
知乎视频www.zhihu.com视频教程:
知乎视频www.zhihu.com最终代码:
def setup():
size(500, 500) # 设定画布大小
noFill() # 不要填充颜色
strokeWeight(2) # 制定边框线条粗细
stroke(50) # 设定线条颜色为淡灰色,0为纯黑、255为纯白
def draw():
background(255) # 纯白背景
speed = radians(frameCount)
for x in range(100,401,30): # 对x遍历
for y in range(100,401,30): # 对y遍历
rectMode(CENTER) # 矩形模式中心定位
pushMatrix() # 保存之前的坐标系
translate(x, y) # 将坐标系原点移动到画面中心位置
rotate(speed) # 绕着坐标系原点旋转
# 当前缩放比例
currentScale = map(sin(speed-x*49-y*2),-1,1,-35,35)
square(0, 0, 10*currentScale) # 在坐标系原点画一个矩形
popMatrix() # 恢复到之前保存的坐标系
进一步,也可以生成各种文字表情包:
知乎视频www.zhihu.com