docs: function quadraticBezierCurve(fromX, fromY, cpX, cpY, toX, toY, out = [])
  {
      const n = 20;
      const points = out;
  
      let xa = 0;
      let ya = 0;
      let xb = 0;
      let yb = 0;
      let x = 0;
      let y = 0;
  
      for (let i = 0, j = 0; i <= n; ++i)
      {
          j = i / n;
  
          // The Green Line
          xa = getPt(fromX, cpX, j);
          ya = getPt(fromY, cpY, j);
          xb = getPt(cpX, toX, j);
          yb = getPt(cpY, toY, j);
  
          // The Black Dot
          x = getPt(xa, xb, j);
          y = getPt(ya, yb, j);
  
          points.push(x, y);
      }
  
      return points;
  }