Processing 安排画廊展览中的草图

Processing 安排画廊展览中的草图,processing,Processing,我正在策划一个画廊展览,以处理学生作品,所以我有大约100个草图,我想随着时间的推移,在大约10个IMAC中循环 我可以导出草图,通过IDE运行草图,或者通过处理java工具运行草图。我真的很渴望从一个草图到下一个草图的无缝过渡(可能是渐变到黑色过渡)。如果有必要,我甚至可以确保草图中都包含某些代码/钩子以提供帮助 有什么好办法吗?选项1:从处理开始 您可以创建一个巨大的处理草图,该草图使用millis()函数来确定经过了多少时间,然后从学生草图中调用正确的绘图代码。您可能必须编辑学员草图,以确

我正在策划一个画廊展览,以处理学生作品,所以我有大约100个草图,我想随着时间的推移,在大约10个IMAC中循环

我可以导出草图,通过IDE运行草图,或者通过
处理java
工具运行草图。我真的很渴望从一个草图到下一个草图的无缝过渡(可能是渐变到黑色过渡)。如果有必要,我甚至可以确保草图中都包含某些代码/钩子以提供帮助


有什么好办法吗?

选项1:从处理开始

您可以创建一个巨大的处理草图,该草图使用
millis()
函数来确定经过了多少时间,然后从学生草图中调用正确的绘图代码。您可能必须编辑学员草图,以确保变量名和函数不会冲突。这是最简单的选项,但可能需要大量手动工作才能使学生的草图兼容

选项2:从Java执行此操作

这可能是我的选择

您可以将学生草图导出为Java应用程序,然后将生成的
.Java
文件导入到新的Java项目中。该Java应用程序只需调用
PApplet.runSketch()
即可运行每个学生的草图。类似于这样,可能需要更多的代码来进行转换:

for(PApplet studentSketch : studentSketches){
   PApplet.runSketch(studentSketch new String[]{"StudentSketchTitle"});
   waitTenMinutes();
   studentSketch.exit();
}
选项3:从shell脚本执行此操作


我对shell脚本了解较少,但基本思想是一样的:编写一个运行草图的shell脚本,然后等待一定的时间。这与调度任何其他应用程序没有任何区别,而且谷歌上可能有大量资源用于此方法。不过,您可能必须将转换代码写入草图本身。

选项1:从处理开始执行此操作

您可以创建一个巨大的处理草图,该草图使用
millis()
函数来确定经过了多少时间,然后从学生草图中调用正确的绘图代码。您可能必须编辑学员草图,以确保变量名和函数不会冲突。这是最简单的选项,但可能需要大量手动工作才能使学生的草图兼容

选项2:从Java执行此操作

这可能是我的选择

您可以将学生草图导出为Java应用程序,然后将生成的
.Java
文件导入到新的Java项目中。该Java应用程序只需调用
PApplet.runSketch()
即可运行每个学生的草图。类似于这样,可能需要更多的代码来进行转换:

for(PApplet studentSketch : studentSketches){
   PApplet.runSketch(studentSketch new String[]{"StudentSketchTitle"});
   waitTenMinutes();
   studentSketch.exit();
}
选项3:从shell脚本执行此操作


我对shell脚本了解较少,但基本思想是一样的:编写一个运行草图的shell脚本,然后等待一定的时间。这与调度任何其他应用程序没有任何区别,而且谷歌上可能有大量资源用于此方法。不过,您可能需要将转换代码写入草图本身。

好的,谢谢。我同意选项2看起来最好——我甚至可以编写一个小clojure工具来完成它。我知道Processing 3.0中的已更改,但我将查看文档。@Ben Yeah,
PApplet
不再扩展
Applet
,因此您不能像以前那样将其作为组件嵌入。如果需要,您可以尝试返回到Processing 2,但更好的选择是使用
runSketch()
函数,该函数与框中所述内容基本相同。感谢您的帮助@Kevin Workman。还有一个问题-导出草图是否是从每个草图(即从文件夹中的一堆.pde文件)获取PApplet的最佳方式?或者我可以直接用文件夹的路径调用
PApplet.main()
?好的,谢谢。我同意选项2看起来最好——我甚至可以编写一个小clojure工具来完成它。我知道Processing 3.0中的已更改,但我将查看文档。@Ben Yeah,
PApplet
不再扩展
Applet
,因此您不能像以前那样将其作为组件嵌入。如果需要,您可以尝试返回到Processing 2,但更好的选择是使用
runSketch()
函数,该函数与框中所述内容基本相同。感谢您的帮助@Kevin Workman。还有一个问题-导出草图是否是从每个草图(即从文件夹中的一堆.pde文件)获取PApplet的最佳方式?或者我可以直接用文件夹的路径调用
PApplet.main()