private void drawWideSegment(PieChartSegment segment)
{
if (!(segment.Percentage > 50))
{
return;
}
var triangleX1OnCircle = (float)(_circleCenterX0 + Radius * Math.Cos((_startAngle + 180) * Math.PI / 180));
var triangleY1OnCircle = (float)(_circleCenterY0 + Radius * Math.Sin((_startAngle + 180) * Math.PI / 180));
_endAngle += segment.Angle - 180;
var triangleX2OnCircle = (float)(_circleCenterX0 + Radius * Math.Cos(_endAngle * Math.PI / 180));
var triangleY2OnCircle = (float)(_circleCenterY0 + Radius * Math.Sin(_endAngle * Math.PI / 180));
_template.SetColorStroke(segment.Color);
_template.SetColorFill(segment.Color);
//draw the triangle within the circle
_template.MoveTo(_circleCenterX0, _circleCenterY0);
_template.LineTo(triangleX1OnCircle, triangleY1OnCircle);
_template.LineTo(triangleX2OnCircle, triangleY2OnCircle);
_template.LineTo(_circleCenterX0, _circleCenterY0);
_template.FillStroke();
//draw the arc
_template.Arc(_circleCenterX0 - Radius, _circleCenterY0 - Radius, _circleCenterX0 + Radius, _circleCenterY0 + Radius, _startAngle + 180, segment.Angle - 180);
_template.FillStroke();
}