From 1bf6b7a300e21e9b8996f9ebeeb55a1eccda7a02 Mon Sep 17 00:00:00 2001 From: Shuxia Ning <NingShuxia0927@outlook.com> Date: 星期五, 20 十二月 2024 10:50:36 +0800 Subject: [PATCH] 排除bug --- WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/00-core/02-extensions/PhartVmoExtensions.cs | 29 +++++++++++++++++++++-------- 1 files changed, 21 insertions(+), 8 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 2544cfb..3535f4e 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 @@ -267,25 +267,38 @@ return pts?.ToList(); } - #endregion - - - /// <summary> /// 鑾峰彇鐗规�ф洸绾� /// </summary> - public static (Yw.Ahart.eCurveType, Yw.Ahart.eFeatType, List<Yw.Geometry.Point2d>) GetCurveInfo(this Yw.Vmo.PhartGraphVmo vmo) + public static (Yw.Ahart.eCurveType curve_type, Yw.Ahart.eFeatType feat_type, List<Yw.Geometry.Point2d> define_pt_list, List<Yw.Geometry.Point2d> line_pt_list) GetCurveInfo(this Yw.Vmo.PhartGraphVmo vmo) { if (vmo == null) return default; + var paras = vmo.GeometryParasModel(); + var define_pt_list = paras.DefinePoints; var performCurve = HStation.Service.PhartRelation.PhartGraphHelper.GetPerformCurve((HStation.PhartRelation.eGeometryStyle)vmo.GeometryStyle, vmo.GeometryInfo); var curve_type = (Yw.Ahart.eCurveType)vmo.GraphType; var feat_type = performCurve.FeatType; - var pt_list = performCurve.FeatCurve.GetPointList(30); - return new(curve_type, feat_type, pt_list); - + var line_pt_list = performCurve.FeatCurve.GetPointList(30); + return new(curve_type, feat_type, define_pt_list, line_pt_list); } + #endregion + + /// <summary> + /// 鑾峰彇鐗规�ф洸绾� + /// </summary> + public static HStation.Model.FeatCurveGeometryParasModel GeometryParasModel(this Yw.Vmo.PhartGraphVmo vmo) + { + if (vmo == null) + return default; + if (string.IsNullOrEmpty(vmo.GeometryParas)) + return default; + if (vmo.GeometryStyle != (int)HStation.PhartRelation.eGeometryStyle.FeatCurve) + return default; + return HStation.Model.FeatCurveGeometryParasModel.ToModel(vmo.GeometryInfo); + } + } } -- Gitblit v1.9.3