If you're seeing this message, it means we're having trouble loading external resources on our website.

如果你被网页过滤器挡住,请确保域名*.kastatic.org*.kasandbox.org 没有被阻止.

主要内容

缩放

最后要学习的坐标系转换就是缩放了。这个操作会改变网格的大小。让我们看看下面这个程序,它先画了一个正方形,接着将坐标系放大了两倍,接着又画了一遍。
首先,你可以看到正方形似乎动了。但是其实它并没有。它的左上角仍然在放大的坐标系中的 (20, 20),但该点现在距离原点的距离却是原始坐标系中的两倍。
如果你想要大正方形的顶角与小正方形一样,那你应该先平移一下,再进行缩放:
你可能也会从两个程序中注意到,大正方形的边框线也更加粗了。这并不是错觉——边框线确实也变成了原来的两倍粗,这是因为坐标系已经被缩放到原来的两倍打消了。你也可以更改 strokeWeight() 来说明这一点,或避免与 scale() 一起使用。
scale() 命令可选择接受两个参数,而不是仅接受一个参数,因此你可以分别缩放 x 轴和 y 轴。尝试在上述程序中使用 scale(3.0, 0.5) 来使得 x 轴变为原来的三倍,而y 轴变为原来的一半。

本文改编自 J David Eisenberg 的 2D Transformations,在 Creative Commons Attribution-NonCommercial-ShareAlike 许可证下使用。

想加入讨论吗?

尚无帖子。
你会英语吗?单击此处查看更多可汗学院英文版的讨论.