【发布时间】:2021-08-08 08:41:21
【问题描述】:
我目前正在尝试制作一个程序,当手机使用 P5.JS deviceMoved() 函数移动每几个值时,文本会发生变化。 (下面的 gif 显示了我希望文本在设备移动时最终如何改变)
如下面的代码所示,我已将所有文本放入数组中,并且每次说移动值广告 30 时,我都想将索引更改为 +1,然后重复直到所有文本消失。
let button;
let permissionGranted = false;
let nonios13device = false;
let cx, cy
let value = 0;
var myMessages = ["The", "Quick", "Brown", "Fox", "Jumped", "Over", "The", "Lazy", "Dog"];
var index = 0;
function setup() {
createCanvas(windowWidth, windowHeight);
}
function draw() {
background(255)
text(myMessages[index], width / 2, height / 2);
fill(value);
text(value, width / 3, height / 3);
textSize(30)
}
function deviceMoved() {
value = value + 5;
if (value > 255) {
value = 0;
}
}
function onMove() {
var currentValue = value + 30;
if (value = currentValue) {
index++;
return;
}
if (index >= myMessages.length) {
index = 0;
}
}
<script src="https://cdn.jsdelivr.net/npm/p5@1.3.1/lib/p5.js"></script>
我认为我的问题出在 onMove 函数中,我需要在其中定义当前值以及哪些值可以更改文本,我对此还很陌生,因此非常感谢任何对此的见解/解决方案 :)
谢谢!
【问题讨论】:
-
为了将来参考,最好包含一个最小的可重现的问题示例。在这种情况下,由于传感器的使用和移动设备的兼容性,最好的方法是提供一个托管在其他地方的示例。正如您在我的回答中看到的那样,我使用 Glitch.com 完成了此操作。
标签: javascript ios mobile processing p5.js