代码之家  ›  专栏  ›  技术社区  ›  James

p5.js和物质。js命运之轮检测哪个元素在顶部

  •  1
  • James  · 技术社区  · 8 年前

    你好,我正在做一个幸运轮。我有动画工作,但试图找出如何检测每个椭圆的位置,这样我就可以检测它在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() 
    }
    

    提前感谢

    1 回复  |  直到 8 年前
        1
  •  1
  •   Kevin Workman    8 年前

    revolve

    你也许可以通过取消旋转点并检查它来解决这个问题,但这听起来很复杂。相反,如果我是你,我会停止使用 旋转 函数来旋转整个画布,我用它来计算每个椭圆的位置。

    一旦你得到了每个椭圆的实际位置,你就可以知道哪个椭圆在顶部。或者你可以使用 dist() 函数来计算哪一个最接近指针。

    推荐文章