in src/services/dataRenderService.ts [196:228]
public renderArcs(slicesElement: Selection<any>, isHighlighted: boolean) {
let arc: AsterArcDescriptor = this.arcSvg,
classSelector: ClassAndSelector = this.getClassAndSelector(isHighlighted);
let selection = slicesElement
.selectAll(classSelector.selectorName)
.data(isHighlighted ? this.highlightedDataPoints : this.dataPoints, (d: AsterArcDescriptor, i: number) => {
return d.data
? (<powerbi.visuals.ISelectionId>d.data.identity).getKey()
: <any>i;
});
selection
.exit()
.remove();
selection = selection.merge(selection
.enter()
.append("path")
.classed(classSelector.className, true));
selection
.attr("fill", d => d.data.fillColor)
.attr("stroke", d => d.data.strokeColor)
.attr("stroke-width", d => d.data.strokeWidth)
.call(selection => {
return Helpers.needToSetTransition(this.layout.viewportChanged)
? Helpers.setAttr(selection, "d", arc)
: Helpers.setTransition(selection, DataRenderService.AnimationDuration, "d", arc);
});
this.applyTooltipToSelection(selection);
}