多语言展示
当前在线:172今日阅读:23今日分享:25

Processing 3:创建后台画布(PGraphics)

介绍如何在Processing中使用createGraphics函数创建后台画布,以及PGraphics对象的使用方法。
工具/原料

Processing 3

方法/步骤
1

createGraphics函数和size用法有不少相似。size用于创建窗口显示的画布,createGraphics则用来创建存储在后台的画布,返回的是PGraphics对象。一切绘图代码和设置代码应该放在beginDraw和endDraw之间。

2

PGraphics对象和size创建的前台画布一样,有一个像素缓存(图片)以及背后的设置,图元信息等等。因此,可以使用image函数将PGraphics对象的像素缓存像图片一样呈递出来。

3

PGraphics对象与size创建的前台画布相比有一不同:通过createGraphics创建的画布支持半透明背景,而size创建的窗口画布背景不透明。因此要导出半透明图片如png,就必须使用PGraphics对象。

4

在后台的PGraphics画布上绘制,很多技巧与在前台窗口绘制是通用的。比如可以拆分多个beginDraw和endDraw段,把设置代码和绘图代码分开,减少不必要的重复执行。

5

createGraphics函数如果指定渲染器类型,则需要与size中的渲染器设置兼容。比如,如果要使用P2D/P3D,则size中也必须指定P2D/P3D

6

使用createGraphics还可以创建PDF,并将渲染结果输出到PDF文档。注意需要使用dispose成员函数。

注意事项
1

如果要设置一个PGraphics对象的smooth,colorMode等,官方文档指出也需要放在beginDraw和endDraw中。

2

请勿在反复执行的draw函数中调用createGraphics或者进行PDF输出。这类操作通常放在setup/事件函数/其它调用频率低的地方

推荐信息