首页 > 解决方案 > 如何围绕中心点动态旋转多个点

问题描述

我希望能够围绕中心点旋转多个点。我正在尝试使它具有某种“动态性”,例如,当一个点被破坏时,其他点会更新,因此它仍然均匀地围绕中心点。

基本上是一些实验性的帆布东西。我尝试了很多数学组合,但无济于事

var spinner = undefined;
var angle = 0;
var z = 0;
function spinUser(){
  if(spinner) clearInterval(spinner);
  spinner = setInterval(function(){
    angle = z*(Math.PI/180);
    for(var i = 0; i < pointArray.length; i++){
      let px = central.x + 3 * Math.cos(angle+i*(pointArray.length-points)) * 9 / 16;
      let py = central.y + 3 * Math.sin(angle+i*(pointArray.length-points));
      updatePos(px,py,i);
    }
    z += 2.5;
    if(z >= 360) z = 0;
  },50);
}

3 = 半径 2.5 = 速度

说应该有5个点,不包括中心点。它应该做数学运算,取当前的点数并减去(?)应该有多少,然后像这样更新点的位置。

抱歉,如果这个问题没有达到应有的水平,我对这个问题有点陌生。

标签: javascriptmath

解决方案


推荐阅读