spinTo(angle) {
      const {hubContext} = this;
      const r = maxCusps - this.cusps;
      hubContext.transform({
        pos: [-maxCusps + r * Math.cos(angle), r * Math.sin(angle)],
        rot: -(maxCusps / this.cusps - 1) * angle,
      });
    }
// Spin the hub inside the largest epicycloid's hub
Spin the hub inside the largest epicycloid's hub
Spin the hub inside the largest epicycloid ' s hub
spinTo(angle) {
      const {hubContext} = this;
      const r = maxCusps - this.cusps;
      hubContext.transform({
        pos: [-maxCusps + r * Math.cos(angle), r * Math.sin(angle)],
        rot: -(maxCusps / this.cusps - 1) * angle,
      });
    }
spinTo ( angle ) { const { hubContext } = this ; const r = maxCusps - this . cusps ; hubContext . transform ( { pos : [ - maxCusps + r * Math . cos ( angle ) , r * Math . sin ( angle ) ] , rot : - ( maxCusps / this . cusps - 1 ) * angle , } ) ; }
Spin the hub inside the largest epicycloid's hub
Spin the hub inside the largest epicycloid ' s hub