缩放坐标系。
默认情况下,形状以其原始比例绘制。一个宽度为 50 像素的矩形在 100 像素宽的画布上看起来占据了一半的宽度。 scale()
函数可以缩小或拉伸坐标系,使形状以不同的大小呈现。有两种方式可以使用参数来调用 scale()
,以设置缩放因子。
第一种调用 scale()
的方式使用数字来设置缩放量。第一个参数 s
设置每个轴的缩放量。例如,调用 scale(2)
将 x 轴、y 轴和 z 轴拉伸 2 倍。接下来的两个参数 y
和 z
是可选的。它们设置 y 轴和 z 轴的缩放量。例如,调用 scale(2, 0.5, 1)
将 x 轴拉伸 2 倍,y 轴缩小 0.5 倍,z 轴保持不变。
第二种调用 scale()
的方式使用一个 p5.Vector 对象来设置缩放因子。例如,调用 scale(myVector)
使用 myVector
的 x、y 和 z 分量来设置沿 x、y 和 z 轴的缩放量。这样做与调用 scale(myVector.x, myVector.y, myVector.z)
是一样的。
默认情况下,转换会累积。例如,连续两次调用 scale(1)
与调用一次 scale(2)
效果相同。可以使用 push() 和 pop() 函数将转换隔离到不同的绘图组中。
注意:转换会在绘制循环的开始处重置。在 draw() 函数中调用 scale(2)
不会导致形状持续增长。
示例
语法
scale(s, [y], [z])
scale(scales)
参数
s
数字|p5.Vector|数字[]:
沿着正 x 轴缩放的量。
y
数字:
沿着正 y 轴缩放的量。默认为 s
。
z
数字: 沿着正 z 轴缩放的量。默认为
y
。scales
p5.Vector|数字[]:
应使用其分量来进行缩放的向量。
Notice any errors or typos? Please let us know. Please feel free to edit src/core/transform.js and open a pull request!