in src/chordChart.ts [836:865]
function hasCollisions(
arrangeGrid: DataLabelArrangeGrid,
info: IDataLabelInfo,
position: IRect,
size: shapesInterfaces.ISize
) {
if (arrangeGrid.hasConflict(position)) {
return true;
}
let intersection = {
left: 0,
top: position.height / 2,
width: size.width,
height: size.height,
};
intersection = shapes.Rect.inflate(intersection, {
left: DataLabelManager.InflateAmount,
top: 0,
right: DataLabelManager.InflateAmount,
bottom: 0,
});
intersection = shapes.Rect.intersect(intersection, position);
if (shapes.Rect.isEmpty(intersection)) {
return true;
}
return lessWithPrecision(intersection.height, position.height / 2);
}