From b23c581b63d0590e373836ab4ecb09efe2ec340a Mon Sep 17 00:00:00 2001 From: monitor1394 Date: Mon, 7 Apr 2025 11:16:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D`GridCoord`=E5=9C=A8=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E8=83=8C=E6=99=AF=E8=89=B2=E4=B8=94Serie=E5=BC=80?= =?UTF-8?q?=E5=90=AFClip=E6=97=B6=E4=BC=9A=E8=A6=86=E7=9B=96=E5=9B=BE?= =?UTF-8?q?=E8=A1=A8=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation~/zh/changelog.md | 1 + Runtime/Coord/Grid/GridCoordHandler.cs | 10 ++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Documentation~/zh/changelog.md b/Documentation~/zh/changelog.md index a986e4f7..a505c119 100644 --- a/Documentation~/zh/changelog.md +++ b/Documentation~/zh/changelog.md @@ -80,6 +80,7 @@ slug: /changelog ## master +* (2025.04.07) 修复`GridCoord`在设置背景色且Serie开启Clip时会覆盖图表的问题 * (2025.04.07) 修复`Gantt`甘特图年份大于2038时显示异常的问题 * (2025.04.07) 修复`Axis`的`Time`时间轴无法显示大于2038的年份的问题 * (2025.04.06) 修复`Axis`的`Time`时间轴在有`DataZoom`缩放时文本显示异常的问题 diff --git a/Runtime/Coord/Grid/GridCoordHandler.cs b/Runtime/Coord/Grid/GridCoordHandler.cs index b38b769e..8b3f73b4 100644 --- a/Runtime/Coord/Grid/GridCoordHandler.cs +++ b/Runtime/Coord/Grid/GridCoordHandler.cs @@ -12,7 +12,7 @@ namespace XCharts.Runtime { var grid = component; grid.painter = chart.painter; - grid.refreshComponent = delegate() + grid.refreshComponent = delegate () { grid.UpdateRuntimeData(chart); chart.OnCoordinateChanged(); @@ -51,6 +51,7 @@ namespace XCharts.Runtime public override void DrawBase(VertexHelper vh) { + DrawBackground(vh, component); if (!SeriesHelper.IsAnyClipSerie(chart.series)) { DrawCoord(vh, component); @@ -64,7 +65,7 @@ namespace XCharts.Runtime } } - private void DrawCoord(VertexHelper vh, GridCoord grid) + private void DrawBackground(VertexHelper vh, GridCoord grid) { if (!grid.show) return; if (!ChartHelper.IsClearColor(grid.backgroundColor)) @@ -75,6 +76,11 @@ namespace XCharts.Runtime var p4 = new Vector2(grid.context.x + grid.context.width, grid.context.y); UGL.DrawQuadrilateral(vh, p1, p2, p3, p4, grid.backgroundColor); } + } + + private void DrawCoord(VertexHelper vh, GridCoord grid) + { + if (!grid.show) return; if (grid.showBorder) { var borderWidth = grid.borderWidth == 0 ? chart.theme.axis.lineWidth * 2 : grid.borderWidth;