public override void DrawLineRange(List <KChartEntry> list, int seriesIndex, KLineStyle lineStyle, SKColor color, Swipe pinchPan) { if (list.Count > 1) { using (var paint = new SKPaint { Style = SKPaintStyle.Fill, Color = color, IsAntialias = true, }) { var path = new SKPath(); KChartEntry entry0 = list[0]; SKPoint meanPoint0 = entry0.Ypoint[seriesIndex]; float range0 = entry0.YpointRange[seriesIndex]; path.MoveTo(pinchPan % new SKPoint(meanPoint0.X, meanPoint0.Y + range0)); path.LineTo(pinchPan % new SKPoint(meanPoint0.X, meanPoint0.Y - range0)); for (int i = 0; i < list.Count; i++) { KChartEntry entry = list[i]; SKPoint meanPoint = entry.Ypoint[seriesIndex]; float range = entry.YpointRange[seriesIndex]; path.LineTo(pinchPan % new SKPoint(meanPoint.X, meanPoint.Y - range)); } for (int i = list.Count - 1; i >= 0; i--) { KChartEntry entry = list[i]; SKPoint meanPoint = entry.Ypoint[seriesIndex]; float range = entry.YpointRange[seriesIndex]; path.LineTo(pinchPan % new SKPoint(meanPoint.X, meanPoint.Y + range)); } path.Close(); canvas.DrawPath(path, paint); } } }
public override void DrawLine(List <KChartEntry> list, int seriesIndex, KLineStyle lineStyle, SKColor color, Swipe pinchPan) { if (list.Count > 1) { using (var paint = new SKPaint { Style = SKPaintStyle.Stroke, Color = color, StrokeWidth = lineStyle == KLineStyle.Thick ? 6 : 2, IsAntialias = true, }) { var path = new SKPath(); path.MoveTo(pinchPan % list[0].Ypoint[seriesIndex]); for (int i = 0; i < list.Count; i++) { path.LineTo(pinchPan % list[i].Ypoint[seriesIndex]); } canvas.DrawPath(path, paint); } } }