我是 processing.js 的初学者,我的项目是这样的:
在 Test.html 中我有:
<html>
<head>
<meta charset="utf-8">
<title>Test</title>
</head>
<style>
body {
margin: none;
padding: none;
}
</style>
<body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/processing.js/1.6.3/processing.min.js"></script>
<canvas data-processing-sources="Test.pde"></canvas>
</body>
</html>
在 Test.pde 中我有:
void setup()
{
size(600,600);
PFont fontA = loadFont("sans-serif");
textFont(fontA, 14);
};
println(width);
void draw(){
background(20, 20, 20);
};
width
应该是600,因为我把&#34; 600加600&#34;在设置中的size
功能中。我在Firefox浏览器上运行它,但我在Safari上也得到了相同的结果。
答案 0 :(得分:0)
考虑println()
语句何时发生。想想何时调用setup()
函数。
首次阅读代码时,您定义 setup()
函数,但您实际上尚未运行它。然后您打印出来width
变量尚未设置。然后定义draw()
函数。
之后,Processing框架为您调用setup()
函数,并开始每秒调用draw()
函数60次。
换句话说,您的代码的行为与它的行为完全相同。
如果您想使用width
变量,则必须在 size()
函数调用setup()
函数后执行。