我确信它很简单,但我不知道该怎么做。 如何将矢量数组作为参数从处理转换为我的代码的fisrt行中的p5.js。 非常感谢大卫
int inPolyCheck(PVector v, PVector [] p) {
float a = 0;
for (int i =0; i<p.length-1; ++i) {
PVector v1 = p[i].get();
PVector v2 = p[i+1].get();
a += vAtan2cent180(v, v1, v2);
}
PVector v1 = p[p.length-1].get();
PVector v2 = p[0].get();
a += vAtan2cent180(v, v1, v2);
if (abs(abs(a) - TWO_PI) < 0.01) return 1;
else return 0;
}
float vAtan2cent180(PVector cent, PVector v2, PVector v1) {
PVector vA = v1.get();
PVector vB = v2.get();
vA.sub(cent);
vB.sub(cent);
vB.mult(-1);
float ang = atan2(vB.x, vB.y) - atan2(vA.x, vA.y);
if (ang < 0) ang = TWO_PI + ang;
ang-=PI;
return ang;
}
答案 0 :(得分:1)
Javascript 动态类型,与静态类型的Java不同。
这意味着您不必担心声明变量的数据类型(在本例中为参数)。根据存储在其中的数据类型自动配置变量的数据类型。我认为这足以让你弄清楚你需要做什么,如果没有,那么我建议你在学习如何在Javascript中复制处理代码之前学习Javascript。