function getCoords(innerRadius, outerRadius) {
const coords = [];
const findCoordsInSlice = (startAngle, endAngle) => {
const steps = 20;
const rStep = (outerRadius - innerRadius) / steps;
const angleStep = 0.1;
let angle = startAngle;
while (angle < endAngle) {
for (let i = 0; i < steps; i++) {
const radius = innerRadius + i * rStep;
const arc = d3
.arc()
.innerRadius(innerRadius + i * rStep)
.outerRadius(innerRadius + (i + 1) * rStep)
.startAngle(angle + angleStep * 0.5)
.endAngle(angle - angleStep * 0.5);
const [x, y] = arc.centroid();
coords.push({ x, y });
}
angle += angleStep
}
};
pieData.forEach((d) => {
findCoordsInSlice(d.startAngle + 0.05, d.endAngle - 0.05);
});
return coords;
}