From b0c978129ba55cf81e8470b6c9326745a5dbc7d1 Mon Sep 17 00:00:00 2001 From: Shuxia Ning <NingShuxia0927@outlook.com> Date: 星期四, 19 十二月 2024 15:26:30 +0800 Subject: [PATCH] 曲线修改 --- WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/00-core/02-extensions/PhartVmoExtensions.cs | 76 +++++++++++++++++++++++++------------ 1 files changed, 51 insertions(+), 25 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/00-core/02-extensions/PhartVmoExtensions.cs b/WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/00-core/02-extensions/PhartVmoExtensions.cs index 2f2d4d8..5af4e75 100644 --- a/WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/00-core/02-extensions/PhartVmoExtensions.cs +++ b/WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/00-core/02-extensions/PhartVmoExtensions.cs @@ -35,7 +35,7 @@ /// <summary> /// 鑾峰彇榛樿鐨勬车鏇茬嚎 /// </summary> - public static PumpCurveViewModel GetDefaultPumpCurveViewMdoel(this List<HStation.Vmo.PhartGraphVmo> vmo_list) + public static PumpCurveViewModel GetDefaultPumpCurveViewMdoel(this List<Yw.Vmo.PhartGraphVmo> vmo_list) { if (vmo_list == null || !vmo_list.Any()) { @@ -53,41 +53,65 @@ /// <summary> /// 鑾峰彇娉垫洸绾垮垪琛� /// </summary> - public static List<PumpCurveViewModel> GetPumpCurveViewMdoelList(this List<HStation.Vmo.PhartGraphVmo> vmo_list) + public static List<PumpCurveViewModel> GetPumpCurveViewMdoelList(this HStation.Vmo.PhartDiagramRelationExtensionsVmo vmo) + { + + if (vmo == null) + { + return default; + } + var diagram = vmo.Diagram; + if (diagram == null) + { + return default; + } + var graph_list = diagram.GraphList; + if (graph_list == null || !graph_list.Any()) + { + return default; + } + + return graph_list.GetPumpCurveViewMdoelList(); + } + + /// <summary> + /// 鑾峰彇娉垫洸绾垮垪琛� + /// </summary> + public static List<PumpCurveViewModel> GetPumpCurveViewMdoelList(this List<Yw.Vmo.PhartGraphVmo> vmo_list) { if (vmo_list == null || !vmo_list.Any()) { return default; } - var filter_list = new List<(double, double, Yw.Ahart.PerformCurveBase)>(); + var filter_list = new List<(double, double, Yw.Ahart.eCurveType, object)>(); foreach (var vmo in vmo_list) { - if (vmo.GraphType == HStation.PhartRelation.eGraphType.QH) + if (vmo.GraphType == (int)HStation.PhartRelation.eGraphType.QH) { var paras = HStation.Model.QHGraphParasModel.ToModel(vmo.GraphParas); if (paras != null) { - var curve = vmo.GetPerformCurve(); - filter_list.Add((paras.Hz, paras.N, curve)); + var curve = Yw.Pump.CurveQHHelper.ToModel(vmo.GeometryInfo); + filter_list.Add((paras.Hz, paras.N, Yw.Ahart.eCurveType.QH, curve)); } } - else if (vmo.GraphType == HStation.PhartRelation.eGraphType.QE) + else if (vmo.GraphType == (int)HStation.PhartRelation.eGraphType.QE) { var paras = HStation.Model.QEGraphParasModel.ToModel(vmo.GraphParas); if (paras != null) { - var curve = vmo.GetPerformCurve(); - filter_list.Add((paras.Hz, paras.N, curve)); + var curve = Yw.Pump.CurveQEHelper.ToModel(vmo.GeometryInfo); + filter_list.Add((paras.Hz, paras.N, Yw.Ahart.eCurveType.QE, curve)); } } - else if (vmo.GraphType == HStation.PhartRelation.eGraphType.QP) + else if (vmo.GraphType == (int)HStation.PhartRelation.eGraphType.QP) { var paras = HStation.Model.QPGraphParasModel.ToModel(vmo.GraphParas); if (paras != null) { - var curve = vmo.GetPerformCurve(); - filter_list.Add((paras.Hz, paras.N, curve)); + var curve = Yw.Pump.CurveQPHelper.ToModel(vmo.GeometryInfo); + filter_list.Add((paras.Hz, paras.N, Yw.Ahart.eCurveType.QP, curve)); } } } @@ -103,11 +127,11 @@ { var hz = item_list.Key.Item1; var n = item_list.Key.Item2; - var curve_list = item_list.Select(x => x.Item3).ToList(); + var curve_list = item_list.Select(x => x.Item4).ToList(); - var qh = curve_list.Find(x => x is Yw.Pump.CurveQH) as Yw.Pump.CurveQH; - var qe = curve_list.Find(x => x is Yw.Pump.CurveQE) as Yw.Pump.CurveQE; - var qp = curve_list.Find(x => x is Yw.Pump.CurveQP) as Yw.Pump.CurveQP; + var qh = (Yw.Pump.CurveQH)curve_list.Find(x => x is Yw.Pump.CurveQH); + var qe = (Yw.Pump.CurveQE)curve_list.Find(x => x is Yw.Pump.CurveQE); + var qp = (Yw.Pump.CurveQP)curve_list.Find(x => x is Yw.Pump.CurveQP); if (qh == null) continue; @@ -159,9 +183,9 @@ /// <summary> /// 鑾峰彇绛夋晥绾垮垪琛� /// </summary> - public static List<CurveEqualEViewModel> GetCurveEqualEViewMdoelList(this List<HStation.Vmo.PhartGraphVmo> vmo_list) + public static List<CurveEqualEViewModel> GetCurveEqualEViewMdoelList(this List<Yw.Vmo.PhartGraphVmo> vmo_list) { - vmo_list = vmo_list?.Where(x => x.GraphType == HStation.PhartRelation.eGraphType.EqualE).ToList(); + vmo_list = vmo_list?.Where(x => x.GraphType == (int)HStation.PhartRelation.eGraphType.EqualE).ToList(); if (vmo_list == null || !vmo_list.Any()) { return default; @@ -211,9 +235,9 @@ /// <summary> /// 鑾峰彇绛夊姛绾垮垪琛� /// </summary> - public static List<CurveEqualPViewModel> GetCurveEqualPViewMdoelList(this List<HStation.Vmo.PhartGraphVmo> vmo_list) + public static List<CurveEqualPViewModel> GetCurveEqualPViewMdoelList(this List<Yw.Vmo.PhartGraphVmo> vmo_list) { - vmo_list = vmo_list?.Where(x => x.GraphType == HStation.PhartRelation.eGraphType.EqualP).ToList(); + vmo_list = vmo_list?.Where(x => x.GraphType == (int)HStation.PhartRelation.eGraphType.EqualP).ToList(); if (vmo_list == null || !vmo_list.Any()) { return default; @@ -242,29 +266,31 @@ /// <summary> /// 鑾峰彇鐗规�ф洸绾� /// </summary> - public static Yw.Ahart.PerformCurveBase GetPerformCurve(this HStation.Vmo.PhartGraphVmo vmo) + public static Yw.Ahart.PerformCurveBase GetPerformCurve(this Yw.Vmo.PhartGraphVmo vmo) { if (vmo == null) return default; - var performCurve = HStation.Service.PhartRelation.PhartGraphHelper.GetPerformCurve(vmo.GeometryStyle, vmo.GeometryInfo); + var performCurve = HStation.Service.PhartRelation.PhartGraphHelper.GetPerformCurve( (HStation.PhartRelation.eGeometryStyle) vmo.GeometryStyle, vmo.GeometryInfo); return performCurve; } /// <summary> /// 鑾峰彇鎬ц兘鐐瑰垪琛� /// </summary> - public static List<Yw.Geometry.Point2d> GetFeatPointList(this HStation.Vmo.PhartGraphVmo vmo, int point_number = 12, double min_space = 0.0001) + public static List<Yw.Geometry.Point2d> GetFeatPointList(this Yw.Vmo.PhartGraphVmo vmo, int point_number = 12, double min_space = 0.0001) { if (vmo == null) return default; var graph_type = vmo.GraphType; var geometry_info = vmo.GeometryInfo; - var pts = HStation.Service.PhartRelation.PhartGraphHelper.GetFeatPointList(graph_type, geometry_info, point_number, min_space); + var pts = HStation.Service.PhartRelation.PhartGraphHelper.GetFeatPointList((HStation.PhartRelation.eGraphType)graph_type, geometry_info, point_number, min_space); return pts?.ToList(); } + + #endregion - + } } -- Gitblit v1.9.3