function projectionOn(_ref22, _ref23, _ref24) {
        var _ref25 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_4___default()(_ref22, 2),
            x0 = _ref25[0],
            y0 = _ref25[1];

        var _ref26 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_4___default()(_ref23, 2),
            x1 = _ref26[0],
            y1 = _ref26[1];

        var _ref27 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_4___default()(_ref24, 2),
            x2 = _ref27[0],
            y2 = _ref27[1];

        var v2x = x2 - x1;
        var v2y = y2 - y1;
        var p = ((x0 - x1) * v2x + (y0 - y1) * v2y) / (Math.pow(v2x, 2) + Math.pow(v2y, 2));
        return p >= 0 && p <= 1;
      }
vector: [x0, y0, r0, x1, y1, r1],
      colors: [{offset:0, color}, {offset:1, color}, ...],