Artifact
b78b56c28e50dcc3866c88c30930f8de4230b70f14b5ea979194dc189bb16883:
'use strict';
let math = require('../util/math');
export default {
  create: (type) => {
    return document.createElementNS('http://www.w3.org/2000/svg', type);
  },
  arc: (x, y, radius, startAngle, endAngle) => {
    var start = math.toCartesian(radius, endAngle);
    var end = math.toCartesian(radius, startAngle);
    var largeArcFlag = endAngle - startAngle <= 180 ? '0' : '1';
    var d = [
        'M', start.x+x, start.y+y,
        'A', radius, radius, 0, largeArcFlag, 0, end.x+x, end.y+y
    ].join(' ');
    return d;
  },
  radialGradient: (defs,numberOfStops) => {
    let id = 'gradient' + math.ri(100000000000);
    let stops = [];
    let gradient = document.createElementNS('http://www.w3.org/2000/svg', 'radialGradient');
    gradient.setAttribute('id', id);
    gradient.setAttribute('cx', '50%');
    gradient.setAttribute('cy', '50%');
    gradient.setAttribute('r', '50%');
    defs.appendChild(gradient);
    for (let i=0;i<numberOfStops;i++) {
      let stop = document.createElementNS('http://www.w3.org/2000/svg', 'stop');
      stop.setAttribute('id', 'stop'+i);
      //stop.setAttribute('offset', '70%');
      //stop.setAttribute('stop-color', 'White');
      gradient.appendChild(stop);
      stops.push(stop);
    }
    return {
      id: id,
      stops: stops,
      element: gradient
    };
  }
};