在p5.js示例项目“歌曲”中,有一行代码
public class ClientThread implements Runnable {
@Override
public void run() {
try {
InetAddress serverAddr = InetAddress.getByName(SERVER_IP);
socket = new Socket(serverAddr, SERVERPORT);
setSocket(socket);
if(socket!=null){
Intent goToNextActivity = new Intent(getApplicationContext(), MainActivity.class);
startActivity(goToNextActivity);
}
} catch (UnknownHostException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
我不能为我的生活弄清楚这究竟是如何运作的。我知道那个楼层向下舍入到最近的int。不过,我认为Map是将数组转换为另一个数组,并且在此过程中会有一些变化。
目前,音符在按下时基于鼠标的x位置播放,但不是y位置,所以这就是我想要做的事情。任何人都可以帮助我了解这是做什么,它是如何工作的,以及我如何改变它?
答案 0 :(得分:0)
为什么不尝试将其分成多个步骤并检查每个步骤中发生的事情?
function mousePressed(){
var mappedValue = map(mouseX, 0, width, 0, notes.length);
console.log("mappedValue: " + mappedValue);
var key = floor(mappedValue);
console.log("key: " + key);
playNote(notes[key]);
}
您也可以尝试在the reference中查找map()
功能。