From 2af3ae119846a6b12cabdc28fb67329e122e39b5 Mon Sep 17 00:00:00 2001
From: duheng <2784771470@qq.com>
Date: 星期四, 24 十月 2024 16:19:27 +0800
Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/HStation/XHS.V1.0

---
 WinFrmUI/Yw.WinFrmUI.Phart.Core/01-perform/01-pump-chart/01-chart/01-perform/PumpPerformChart.cs |   57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 54 insertions(+), 3 deletions(-)

diff --git a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-perform/01-pump-chart/01-chart/01-perform/PumpPerformChart.cs b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-perform/01-pump-chart/01-chart/01-perform/PumpPerformChart.cs
index ff945f7..fa3881b 100644
--- a/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-perform/01-pump-chart/01-chart/01-perform/PumpPerformChart.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Phart.Core/01-perform/01-pump-chart/01-chart/01-perform/PumpPerformChart.cs
@@ -1,8 +1,14 @@
-锘縰sing DevExpress.Utils;
+锘縰sing DevExpress.Charts.Model;
+using DevExpress.Utils;
 using DevExpress.XtraCharts;
 using DevExpress.XtraEditors;
+using System.Drawing;
+using System.Drawing.Drawing2D;
+using System.Linq;
 using System.Text;
+using System.Windows.Forms;
 using Yw.Geometry;
+using static DevExpress.Utils.Drawing.Helpers.NativeMethods;
 
 namespace Yw.WinFrmUI.Phart
 {
@@ -134,6 +140,7 @@
             _series_qe = this.chartControl1.GetSeriesByName("SeriesCurveQE");
             _series_qe.SetCurveQEDisplay();
 
+             
             _series_qp = this.chartControl1.GetSeriesByName("SeriesCurveQP");
             _series_qp.SetCurveQPDisplay();
 
@@ -144,6 +151,7 @@
 
             _series_qe_pt = this.chartControl1.GetSeriesByName("SeriesPointQE");
             _series_qe_pt.SetPointQEDisplay();
+
 
             _series_qp_pt = this.chartControl1.GetSeriesByName("SeriesPointQP");
             _series_qp_pt.SetPointQPDisplay();
@@ -176,7 +184,46 @@
             this.chartControl1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.chartControl1_MouseDown);
             this.chartControl1.Resize += new System.EventHandler(this.chartControl1_Resize);
 
+           // this.chartControl1.CustomPaint += ChartControl1_CustomPaint; 
         }
+ 
+        private void ChartControl1_CustomPaint(object sender, CustomPaintEventArgs e)
+        {
+            if (!(e is DXCustomPaintEventArgs dxArgs))
+                return;
+
+            if (_qe == null)
+            {
+                return;
+            }
+
+            // 浣跨敤Graphics缁樺埗鏍锋潯绾�
+            using (var pen = new Pen(Color.Red, 2))
+            {
+                // dxArgs.Cache.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
+
+                // 鍒涘缓GraphicsPath瀵硅薄锛屽苟娣诲姞鏍锋潯绾�
+                using (var path = new System.Drawing.Drawing2D.GraphicsPath())
+                {
+                    var pts = _qe.GetPointList().Select(x => new PointF((float)x.X, (float)x.Y)).ToArray();
+                    var g_pts = new List<PointF>();
+                    foreach (var pt in pts)
+                    {
+                        var x = pt.X;
+                        var y = pt.Y;
+                        var c_pt = _main_chart_diagram.DiagramToPoint(x, y, _axisXQ, _axis_y_qe);
+                        g_pts.Add(new PointF(c_pt.Point.X, c_pt.Point.Y));
+                    }
+
+                    path.AddCurve(g_pts.ToArray());
+                    dxArgs.Cache.DrawPath(pen, path);
+                }
+            }
+
+
+        }
+
+
 
         /// <summary>
         /// 鍒濆鍖栧浘琛ㄦ暟鎹�
@@ -233,7 +280,7 @@
 
             if (qp != null)
                 qp_pt_list = qp.GetPointList(12);
-            SetBindingData(qh, qe, qp, qh_pt_list, qe_pt_list, qp_pt_list, null, null, null, coordinate_paras, calc_coordinate);
+            SetBindingData(qh, qe, qp, qh_pt_list, qe_pt_list, qp_pt_list, null, qe_pt_list, null, coordinate_paras, calc_coordinate);
         }
 
 
@@ -352,7 +399,11 @@
                 return;
             }
 
+             
             _coordinate_paras = PumpCoordinate.CalcCoordinate(_qh_pt_list, _qe_pt_list, _qp_pt_list);
+
+              
+
         }
 
         /// <summary>
@@ -550,7 +601,7 @@
             }
 
             if (_qe_pt_list != null && _qe_pt_list.Count > 3)
-            { 
+            {  
                 _series_qe.Visible = true;
                 _series_qe.Points.Clear();
                 foreach (var pt in _qe_pt_list)

--
Gitblit v1.9.3