你好,我正在做一个幸运轮。我有动画工作,但试图找出如何检测每个椭圆的位置,这样我就可以检测它在90度,指针指向它。我用来制作轮子的数据是一系列十六进制颜色。这是 codpen
下面是构建轮子的函数
function prizes(revolve,xPosition,yPosition,data,radius,size){ var j = 0; // translate(x,y); push() rotate(revolve) for(i = 0 ; i < TWO_PI ; i+=TWO_PI/data.length) { let x = radius * cos(i); let y = radius * sin(i); fill(data[j]) textSize(32); ellipse(x,y,size) j++; } pop() }
提前感谢
revolve
你也许可以通过取消旋转点并检查它来解决这个问题,但这听起来很复杂。相反,如果我是你,我会停止使用 旋转 函数来旋转整个画布,我用它来计算每个椭圆的位置。
旋转
一旦你得到了每个椭圆的实际位置,你就可以知道哪个椭圆在顶部。或者你可以使用 dist() 函数来计算哪一个最接近指针。
dist()