addDonutSlice (startAngle, percent, color) {
    const size = Math.PI * 2 * percent;
    const slice = new THREE.RingGeometry(this.innerRadius, this.radius, 30, 8, startAngle, size);
    const mat = new THREE.MeshBasicMaterial({
      color: new THREE.Color(color.r, color.g, color.b), side: THREE.DoubleSide, transparent: true, opacity: color.a
    });
    const mesh = new THREE.Mesh(slice, mat);
    mesh.position.set(0, 0, this.surfaceDepth + 2);
    mesh.rotation.y = Math.PI;
    mesh.userData.defaultOpacity = color.a;

    this.donutGraphSegments.push(mesh);
    this.container.add(mesh);

    return startAngle + size;
  }
Add a new slice to the donut graph

@param {number} startAngle The angle (in radians) to start drawing the donut slice
@param {number} percent The percent of the donut to fill with this new donut slice
@param {string} color A string representation of the color to make this slice