本章要点如下
- 顶点图形
- 常规曲线
- 贝塞尔曲线
- 基本函数图形
顶点图形
在第2章中已经讲了基本图形的绘制,但是这些图形都是规则图形,如果我们要绘制不规则的图形怎么办,我们就想根据已知的几个坐标绘制图形怎么办。对于这种比较高级的自定义的绘图需求Processing也提供了相应的解决方案,那就是使用:
beginShape()、endShape()、vertex()这几个函数来完成指定坐标的图形绘制。需要注意的是beginShape()、endShape()必须成对出现,就想左括号和右括号一样,vertex()表示指定的顶点坐标。
代码清单3.1
noFill();
beginShape();
vertex(30, 20);
vertex(85, 20);
vertex(85, 75);
vertex(30, 75);
endShape();
代码3.1的效果图如下
![d7080e4340d2796696557c86725eb980.png](https://i-blog.csdnimg.cn/blog_migrate/e7bcb2147609b3fe7b0b058ba78698f9.png)
代码3.1是beginShape()和endShap()的基础应用,在3.1的效果图中我们可以发现四个点画了三条线段,与我们预料的似乎有点差别,我们想的是四个点构成一个封闭的矩形。如果仅仅是这种绘图,远远达不到我们的需求。这一点Processing的开发人员自然也想到了,要想绘制封闭的图形,我们只需要给endShape()加个参数CLOSE就可以了。
![5deb8b33436411882850981feaaa9bc8.png](https://i-blog.csdnimg.cn/blog_migrate/3aecc0e0f2e4476b3dee8b1efbcb5a08.png)
其实我们只是画了四个点,beginShap()默认就帮我们把点连成线,那我们如果只想画四个点作为图形可不可以,你说什么,可以用point()。我现在就想用beginShape(),能不能画四个点,没问题,当然也是可以的。beginShape()也是有很多可选参数的。
只是描点可以用beginShap