Yw.WinFrmUI.Hydro.L3d2.Core/EditerL3d2.cs
@@ -517,6 +517,68 @@ #endregion #region 水流方向 /// <summary> /// 显示水流方向 /// </summary> public void ShowFlowDirection() { _wpfViewer?.ShowFlowDirection(); } /// <summary> /// 隐藏水流方向 /// </summary> public void HideFlowDirection() { _wpfViewer?.HideFlowDirection(); } /// <summary> /// 水流方向可见性 /// </summary> public bool FlowDirectionVisible { get { return _wpfViewer == null ? false : _wpfViewer.FlowDirectionVisible; } set { if (_wpfViewer != null) { _wpfViewer.FlowDirectionVisible = value; } } } /// <summary> /// 设置水流方向 /// </summary> public void SetFlowDirection(FlowDirectionL3d item) { _wpfViewer.SetFlowDirection(item); } /// <summary> /// 设置水流方向 /// </summary> public void SetFlowDirection(List<FlowDirectionL3d> items) { _wpfViewer.SetFlowDirection(items); } /// <summary> /// 清理水流方向 /// </summary> public void ClearFlowDirection() { _wpfViewer.ClearFlowDirection(); } #endregion #region 添加模式 /// <summary> Yw.WinFrmUI.Hydro.L3d2.Core/Properties/PublishProfiles/FolderProfile.pubxml.user
@@ -2,7 +2,7 @@ <!-- https://go.microsoft.com/fwlink/?LinkID=208121. --> <Project> <PropertyGroup> <History>True|2025-05-06T04:25:07.7448966Z||;True|2025-05-06T12:20:11.7083540+08:00||;True|2025-05-06T12:20:05.9513514+08:00||;True|2025-05-06T10:51:28.7337521+08:00||;True|2025-05-06T10:51:06.6456811+08:00||;True|2025-05-06T10:50:58.8911173+08:00||;True|2025-05-06T10:34:44.8136252+08:00||;True|2025-05-06T10:34:27.7212544+08:00||;True|2025-05-06T10:16:30.5074881+08:00||;True|2025-05-06T09:07:27.2170966+08:00||;True|2025-04-22T15:50:06.4794535+08:00||;True|2025-04-03T15:07:50.7868897+08:00||;True|2025-04-03T14:53:27.6125391+08:00||;True|2025-04-03T14:09:06.0738035+08:00||;</History> <History>True|2025-05-06T06:03:10.9343885Z||;True|2025-05-06T12:25:07.7448966+08:00||;True|2025-05-06T12:20:11.7083540+08:00||;True|2025-05-06T12:20:05.9513514+08:00||;True|2025-05-06T10:51:28.7337521+08:00||;True|2025-05-06T10:51:06.6456811+08:00||;True|2025-05-06T10:50:58.8911173+08:00||;True|2025-05-06T10:34:44.8136252+08:00||;True|2025-05-06T10:34:27.7212544+08:00||;True|2025-05-06T10:16:30.5074881+08:00||;True|2025-05-06T09:07:27.2170966+08:00||;True|2025-04-22T15:50:06.4794535+08:00||;True|2025-04-03T15:07:50.7868897+08:00||;True|2025-04-03T14:53:27.6125391+08:00||;True|2025-04-03T14:09:06.0738035+08:00||;</History> <LastFailureDetails /> </PropertyGroup> </Project> Yw.WinFrmUI.Hydro.L3d2.Core/ViewerL3d2.cs
@@ -518,5 +518,67 @@ #endregion #region 水流方向 /// <summary> /// 显示水流方向 /// </summary> public void ShowFlowDirection() { _wpfViewer?.ShowFlowDirection(); } /// <summary> /// 隐藏水流方向 /// </summary> public void HideFlowDirection() { _wpfViewer?.HideFlowDirection(); } /// <summary> /// 水流方向可见性 /// </summary> public bool FlowDirectionVisible { get { return _wpfViewer == null ? false : _wpfViewer.FlowDirectionVisible; } set { if (_wpfViewer != null) { _wpfViewer.FlowDirectionVisible = value; } } } /// <summary> /// 设置水流方向 /// </summary> public void SetFlowDirection(FlowDirectionL3d item) { _wpfViewer.SetFlowDirection(item); } /// <summary> /// 设置水流方向 /// </summary> public void SetFlowDirection(List<FlowDirectionL3d> items) { _wpfViewer.SetFlowDirection(items); } /// <summary> /// 清理水流方向 /// </summary> public void ClearFlowDirection() { _wpfViewer.ClearFlowDirection(); } #endregion } } Yw.WinFrmUI.Hydro.L3d2.Core/Yw.WinFrmUI.Hydro.L3d2.Core.csproj
@@ -8,11 +8,11 @@ <OutputType>Library</OutputType> <UseWPF>True</UseWPF> <GeneratePackageOnBuild>True</GeneratePackageOnBuild> <Version>1.1.0</Version> <Version>1.1.1</Version> </PropertyGroup> <ItemGroup> <PackageReference Include="Yw.WpfUI.Hydro.L3d.Core" Version="1.1.0" /> <PackageReference Include="Yw.WpfUI.Hydro.L3d.Core" Version="1.1.1" /> </ItemGroup> <ItemGroup> Yw.WpfUI.Hydro.L3d.Core/03-draw/00-core/01-initial/DrawInitialHelper.cs
@@ -142,6 +142,18 @@ } /// <summary> /// 获取Link3D /// </summary> public List<LinkDraw3D> GetLink3D() { if (!Initialized) { return default; } return _allVisual3dDict.Values.Where(x => x is LinkDraw3D).Select(x => x as LinkDraw3D).ToList(); } /// <summary> /// 添加Visual3D /// </summary> public bool AddVisual3D(VisualDraw3D visual3d) Yw.WpfUI.Hydro.L3d.Core/03-draw/00-core/11-billboard-text/BillboardTextDraw3D.cs
@@ -11,7 +11,7 @@ public BillboardTextDraw3D(VisualDraw3D visual3d) { _visual3d = visual3d; _visual3d.Visual3DChangedEvent += Update; Attach(); Update(); } @@ -30,12 +30,24 @@ this.Position = new Point3D(center.X, center.Y, center.Z + size.Z / 2); } //附加 private void Attach() { _visual3d.Visual3DChangedEvent += Update; } //分离 private void Detach() { _visual3d.Visual3DChangedEvent -= Update; } /// <summary> /// 释放 /// </summary> public void Dispose() { _visual3d.Visual3DChangedEvent -= Update; Detach(); } Yw.WpfUI.Hydro.L3d.Core/03-draw/00-core/12-flow-direction/DrawFlowDirectionHelper.cs
@@ -5,34 +5,59 @@ /// </summary> internal class DrawFlowDirectionHelper { /// <summary> /// /// </summary> public DrawFlowDirectionHelper(HelixViewport3D viewport) public DrawFlowDirectionHelper ( HelixViewport3D viewport, DrawInitialHelper initialHelper ) { _viewport = viewport; _group3d = new FlowDirectionGroupDraw3D(); _initialHelper = initialHelper; _group = new FlowDirectionGroupDraw3D(viewport, initialHelper); } private readonly HelixViewport3D _viewport = null;//三维组件 private readonly FlowDirectionGroupDraw3D _group3d = null;//组 private readonly Dictionary<string, FlowDirectionDraw3D> _cache = new();//缓存 private readonly DrawInitialHelper _initialHelper = null;//绘制辅助类 private readonly FlowDirectionGroupDraw3D _group = null;//组 /// <summary> /// 可见性 /// </summary> public bool Visible { get { return _visible; } set { if (value) { Show(); } else { Hide(); } } } private bool _visible = false; /// <summary> /// 显示 /// </summary> public void Show() { var group3d = _viewport.Children.OfType<FlowDirectionGroupDraw3D>().FirstOrDefault(); if (group3d == null) var group = _viewport.Children.OfType<FlowDirectionGroupDraw3D>().FirstOrDefault(); if (group == null) { _viewport.Children.Add(_group3d); _viewport.Children.Add(_group); } //if (_cache.Count < 1) //{ // var all = GetAll(); // Set(all); //} _visible = true; } /// <summary> @@ -40,11 +65,20 @@ /// </summary> public void Hide() { var textGroup3d = _viewport.Children.OfType<FlowDirectionGroupDraw3D>().FirstOrDefault(); if (textGroup3d != null) var group = _viewport.Children.OfType<FlowDirectionGroupDraw3D>().FirstOrDefault(); if (group != null) { _viewport.Children.Remove(textGroup3d); _viewport.Children.Remove(group); } _visible = false; } /// <summary> /// 设置 /// </summary> public void Set(FlowDirectionL3d item) { _group.Set(item); } /// <summary> @@ -52,8 +86,7 @@ /// </summary> public void Set(List<FlowDirectionL3d> items) { Clear(); items?.ForEach(x => Add(x)); _group.Set(items); } /// <summary> @@ -61,90 +94,25 @@ /// </summary> public void Clear() { if (_cache.Count > 0) { foreach (var item in _cache.Values) { item.Dispose(); } _cache.Clear(); _group3d.Children.Clear(); } _group.Clear(); } /// <summary> /// 更新 /// 释放 /// </summary> public void Update(FlowDirectionL3d item) public void Dispose() { if (item == null) { return; } if (_cache.ContainsKey(item.Id)) { var flowDirectionItem = _cache[item.Id]; if (flowDirectionItem != null) { flowDirectionItem.Positive = item.Positive; flowDirectionItem.UpdateVisual(); } } else { Add(item); } _group.Dispose(); } /// <summary> /// 更新 /// </summary> public void Update(List<FlowDirectionL3d> items) { items?.ForEach(x => Update(x)); } //添加 private void Add(FlowDirectionL3d item) { if (item == null) { return; } if (!_cache.ContainsKey(item.Id)) { var flowDirectionItem = Create(item); if (flowDirectionItem != null) { _cache.Add(item.Id, flowDirectionItem); _group3d.Children.Add(flowDirectionItem); } } } //创建 private FlowDirectionDraw3D Create(FlowDirectionL3d item) { if (item == null) { return default; } var link3d = _viewport.Children.OfType<LinkDraw3D>() .Where(x => x.Visual.Id == item.Id).FirstOrDefault(); if (link3d == null) { return default; } var flowDirection = new FlowDirectionDraw3D(link3d); return flowDirection; } //获取所有 private List<FlowDirectionL3d> GetAll() { var link3ds = _viewport.Children.OfType<LinkDraw3D>().ToList(); return link3ds?.Select(x => new FlowDirectionL3d() { Id = x.Visual.Id, Positive = true }).ToList(); } } } Yw.WpfUI.Hydro.L3d.Core/03-draw/00-core/12-flow-direction/FlowDirectionDraw3D.cs
@@ -12,9 +12,7 @@ { _link3d = link3d; _positive = positive; _link3d.Visual3DChangedEvent += UpdateVisual; UpdateVisual(); Attach(); } private readonly LinkDraw3D _link3d = null;//绘制管段 @@ -25,37 +23,57 @@ public bool Positive { get { return _positive; } set { _positive = value; } set { _positive = value; Update(); } } private bool _positive = true; /// <summary> /// 更新可是元素 /// </summary> public void UpdateVisual() //更新 private void Update() { var htmlColor = Yw.Settings.HydroL3dParasHelper.HydroL3d.Flow.Direction.HtmlColor; var color = htmlColor.ToMediaColor(); this.Material = DrawMaterialHelper.GetMaterial(color); var center = _link3d.Drawer.StartPosition + (_link3d.Drawer.EndPosition - _link3d.Drawer.StartPosition) / 2d; var start = _link3d.Drawer.StartPosition + (center - _link3d.Drawer.StartPosition) / 2d; var end = center + (_link3d.Drawer.EndPosition - center) / 2d; if (this.Positive) var start = _link3d.GetStartPosition(); var end = _link3d.GetEndPosition(); if (start.HasValue && end.HasValue) { //this.Point1 = start; //this.Point2 = end; } else { //this.Point1 = start; //this.Point2 = end; } var center = start.Value + (end.Value - start.Value) / 2d; var sp = start.Value + (center - start.Value) / 2d; var ep = center + (end.Value - center) / 2d; //this.Diameter = Yw.Settings.HydroL3dParasHelper.HydroL3d.Flow.Direction.Diameter; if (this.Positive) { this.Point1 = sp; this.Point2 = ep; } else { this.Point1 = ep; this.Point2 = sp; } var htmlColor = Yw.Settings.HydroL3dParasHelper.HydroL3d.Flow.Direction.HtmlColor; var color = htmlColor.ToMediaColor(); this.Material = DrawMaterialHelper.GetMaterial(color); var diameter = _link3d.GetDiameter(); this.Diameter = diameter; } } //附加 private void Attach() { _link3d.Visual3DChangedEvent += Update; } //分离 private void Detach() { _link3d.Visual3DChangedEvent -= Update; } /// <summary> @@ -63,7 +81,7 @@ /// </summary> public void Dispose() { _link3d.Visual3DChangedEvent -= UpdateVisual; Detach(); } } Yw.WpfUI.Hydro.L3d.Core/03-draw/00-core/12-flow-direction/FlowDirectionGroupDraw3D.cs
@@ -3,8 +3,186 @@ /// <summary> /// 水流方向组绘制元素 /// </summary> internal class FlowDirectionGroupDraw3D : ModelVisual3D internal class FlowDirectionGroupDraw3D : ModelVisual3D, IDisposable { /// <summary> /// /// </summary> public FlowDirectionGroupDraw3D ( HelixViewport3D viewport, DrawInitialHelper initialHelper ) { _viewport = viewport; _initialHelper = initialHelper; Attach(); } private readonly HelixViewport3D _viewport = null;//三维组件 private readonly DrawInitialHelper _initialHelper = null;//初始化辅助类 private readonly Dictionary<string, FlowDirectionDraw3D> _cache = new();//缓存 /// <summary> /// 是否初始化 /// </summary> public bool Initialized { get { return _initialized; } private set { _initialized = value; } } private bool _initialized = false; //初始化 private void Initialize() { if (!_initialHelper.Initialized) { return; } _initialized = true; } /// <summary> /// 设置 /// </summary> public void Set(FlowDirectionL3d item) { if (!Initialized) { return; } if (item == null) { return; } if (_cache.ContainsKey(item.Id)) { var text = _cache[item.Id]; if (text != null) { text.Positive = item.Positive; } } else { AddItem(item); } } /// <summary> /// 设置 /// </summary> public void Set(List<FlowDirectionL3d> items) { if (!Initialized) { return; } if (items == null || items.Count < 1) { return; } items.ForEach(x => Set(x)); } /// <summary> /// 清除 /// </summary> public void Clear() { if (!Initialized) { return; } if (_cache.Count > 0) { foreach (var item in _cache.Values) { item.Dispose(); } _cache.Clear(); } if (this.Children != null && this.Children.Count > 0) { this.Children.Clear(); } } //添加项 private void AddItem(FlowDirectionL3d item) { if (!Initialized) { return; } if (item == null) { return; } if (!_cache.ContainsKey(item.Id)) { var flowDirection = CreateItem(item); if (flowDirection != null) { _cache.Add(item.Id, flowDirection); this.Children.Add(flowDirection); } } } //创建项 private FlowDirectionDraw3D CreateItem(FlowDirectionL3d item) { if (!Initialized) { return default; } if (item == null) { return default; } var visual3d = _initialHelper.GetVisual3D(item.Id); if (visual3d == null) { return default; } var link3d = visual3d as LinkDraw3D; if (link3d == null) { return default; } var flowDirection = new FlowDirectionDraw3D(link3d); flowDirection.Positive = item.Positive; return flowDirection; } //处理初始化完成 private void OnInitialCompleted() { Initialize(); } //附加 private void Attach() { _initialHelper.InitialCompletedEvent += OnInitialCompleted; } //分离 private void Detach() { _initialHelper.InitialCompletedEvent -= OnInitialCompleted; } /// <summary> /// 释放 /// </summary> public void Dispose() { Clear(); Detach(); } } } Yw.WpfUI.Hydro.L3d.Core/03-draw/01-draw/01-drawer/03-link/00-core/LinkDrawer.cs
@@ -1,5 +1,4 @@ namespace Yw.WpfUI.Hydro namespace Yw.WpfUI.Hydro { /// <summary> /// 管段绘制器 @@ -32,6 +31,11 @@ /// 结束位置 /// </summary> public Point3D? EndPosition { get; set; } /// <summary> /// 直径 /// </summary> public double Diameter { get; set; } /// <summary> /// 更新位置 @@ -93,5 +97,7 @@ return list; } } } Yw.WpfUI.Hydro.L3d.Core/03-draw/01-draw/01-drawer/03-link/01-pipe/PipeLogicalDrawer.cs
@@ -14,11 +14,6 @@ } /// <summary> /// 直径 /// </summary> public double Diameter { get; set; } //初始化 protected override void Initialize() { Yw.WpfUI.Hydro.L3d.Core/03-draw/01-draw/01-drawer/03-link/02-vipe/VipeLogicalDrawer.cs
@@ -13,12 +13,6 @@ } /// <summary> /// 直径 /// </summary> public double Diameter { get; set; } //初始化 protected override void Initialize() { Yw.WpfUI.Hydro.L3d.Core/03-draw/01-draw/01-drawer/03-link/03-translation/TranslationLogicalDrawer.cs
@@ -13,12 +13,6 @@ } /// <summary> /// 直径 /// </summary> public double Diameter { get; set; } //初始化 protected override void Initialize() { Yw.WpfUI.Hydro.L3d.Core/03-draw/01-draw/01-drawer/03-link/04-pump/PumpLogicalDrawer.cs
@@ -13,12 +13,6 @@ } /// <summary> /// 直径 /// </summary> public double Diameter { get; set; } //初始化 protected override void Initialize() { Yw.WpfUI.Hydro.L3d.Core/03-draw/01-draw/01-drawer/03-link/05-valve/ValveLogicalDrawer.cs
@@ -14,12 +14,6 @@ } /// <summary> /// 直径 /// </summary> public double Diameter { get; set; } //初始化 protected override void Initialize() { Yw.WpfUI.Hydro.L3d.Core/03-draw/01-draw/01-drawer/03-link/06-resistance/01-exchanger/ExchangerLogicalDrawer.cs
@@ -13,12 +13,6 @@ } /// <summary> /// 直径 /// </summary> public double Diameter { get; set; } //初始化 protected override void Initialize() { Yw.WpfUI.Hydro.L3d.Core/03-draw/01-draw/01-drawer/03-link/06-resistance/02-compressor/CompressorLogicalDrawer.cs
@@ -13,12 +13,6 @@ } /// <summary> /// 直径 /// </summary> public double Diameter { get; set; } //初始化 protected override void Initialize() { Yw.WpfUI.Hydro.L3d.Core/03-draw/01-draw/02-draw3d/01-visual/VisualDraw3D.cs
@@ -123,6 +123,17 @@ #endregion #region 属性处理 /// <summary> /// 获取Id /// </summary> public string GetId() { return this.Visual.Id; } #endregion Yw.WpfUI.Hydro.L3d.Core/03-draw/01-draw/02-draw3d/03-link/00-core/LinkDraw3D.cs
@@ -168,6 +168,20 @@ #endregion #region 直径 /// <summary> /// 获取直接 /// </summary> public virtual double GetDiameter() { return this.Drawer.Diameter; } #endregion } Yw.WpfUI.Hydro.L3d.Core/03-draw/02-manager/DrawManager.cs
@@ -21,11 +21,8 @@ _colorHelper = new DrawColorHelper(viewport, _initialHelper); _opacityHelper = new DrawOpacityHelper(viewport, _initialHelper); _visibleHelper = new DrawVisibleHelper(viewport, _initialHelper); _billboardTextHelper = new DrawBillboardTextHelper(viewport, _initialHelper); _flowDirectionHelper = new DrawFlowDirectionHelper(viewport); _flowDirectionHelper = new DrawFlowDirectionHelper(viewport, _initialHelper); } #region 事件集合 @@ -50,10 +47,7 @@ protected readonly DrawColorHelper _colorHelper = null;//颜色辅助类 protected readonly DrawOpacityHelper _opacityHelper = null;//透明度辅助类 protected readonly DrawVisibleHelper _visibleHelper = null;//可见性辅助类 protected readonly DrawBillboardTextHelper _billboardTextHelper = null;//公告文本辅助类 protected readonly DrawFlowDirectionHelper _flowDirectionHelper = null;//水流方向辅助类 #endregion @@ -964,6 +958,41 @@ } /// <summary> /// 水流方向可见性 /// </summary> public virtual bool FlowDirectionVisible { get { if (!Initialized) { return false; } return _flowDirectionHelper.Visible; } set { if (!Initialized) { return; } _flowDirectionHelper.Visible = value; } } /// <summary> /// 设置水流方向 /// </summary> public virtual void SetFlowDirection(FlowDirectionL3d item) { if (!Initialized) { return; } _flowDirectionHelper.Set(item); } /// <summary> /// 设置水流方向 /// </summary> public virtual void SetFlowDirection(List<FlowDirectionL3d> items) @@ -973,30 +1002,6 @@ return; } _flowDirectionHelper.Set(items); } /// <summary> /// 更新水流方向 /// </summary> public virtual void UpdateFlowDirection(FlowDirectionL3d item) { if (!Initialized) { return; } _flowDirectionHelper.Update(item); } /// <summary> /// 更新水流方向 /// </summary> public virtual void UpdateFlowDirection(List<FlowDirectionL3d> items) { if (!Initialized) { return; } _flowDirectionHelper.Update(items); } /// <summary> Yw.WpfUI.Hydro.L3d.Core/03-draw/03-control/EditerL3d.xaml.cs
@@ -553,27 +553,34 @@ } /// <summary> /// 水流方向可见性 /// </summary> public bool FlowDirectionVisible { get { return _manager?.FlowDirectionVisible ?? false; } set { if (_manager != null) { _manager.FlowDirectionVisible = value; } } } /// <summary> /// 设置水流方向 /// </summary> public void SetFlowDirection(FlowDirectionL3d item) { _manager.SetFlowDirection(item); } /// <summary> /// 设置水流方向 /// </summary> public void SetFlowDirection(List<FlowDirectionL3d> items) { _manager.SetFlowDirection(items); } /// <summary> /// 更新水流方向 /// </summary> public void UpdateFlowDirection(FlowDirectionL3d item) { _manager.UpdateFlowDirection(item); } /// <summary> /// 更新水流方向 /// </summary> public void UpdateFlowDirection(List<FlowDirectionL3d> items) { _manager.UpdateFlowDirection(items); } /// <summary> Yw.WpfUI.Hydro.L3d.Core/03-draw/03-control/ViewerL3d.xaml.cs
@@ -545,6 +545,65 @@ #endregion #region 水流方向 /// <summary> /// 显示水流方向 /// </summary> public void ShowFlowDirection() { _manager?.ShowFlowDirection(); } /// <summary> /// 隐藏水流方向 /// </summary> public void HideFlowDirection() { _manager?.HideFlowDirection(); } /// <summary> /// 水流方向可见性 /// </summary> public bool FlowDirectionVisible { get { return _manager?.FlowDirectionVisible ?? false; } set { if (_manager != null) { _manager.FlowDirectionVisible = value; } } } /// <summary> /// 设置水流方向 /// </summary> public void SetFlowDirection(FlowDirectionL3d item) { _manager.SetFlowDirection(item); } /// <summary> /// 设置水流方向 /// </summary> public void SetFlowDirection(List<FlowDirectionL3d> items) { _manager.SetFlowDirection(items); } /// <summary> /// 清理水流方向 /// </summary> public void ClearFlowDirection() { _manager.ClearFlowDirection(); } #endregion /// <summary> /// 卸载 /// </summary> Yw.WpfUI.Hydro.L3d.Core/Properties/PublishProfiles/FolderProfile.pubxml.user
@@ -2,7 +2,7 @@ <!-- https://go.microsoft.com/fwlink/?LinkID=208121. --> <Project> <PropertyGroup> <History>True|2025-05-06T04:24:06.1275328Z||;True|2025-05-06T12:17:30.5477075+08:00||;True|2025-05-06T12:09:02.1715202+08:00||;True|2025-05-06T10:48:14.2754277+08:00||;True|2025-05-06T10:31:56.4341238+08:00||;True|2025-05-06T10:11:06.0348707+08:00||;True|2025-05-06T10:11:00.3082825+08:00||;False|2025-05-06T10:10:39.1136970+08:00||;True|2025-05-06T09:05:16.4695917+08:00||;True|2025-04-22T15:43:19.8599243+08:00||;True|2025-04-03T14:51:22.5389895+08:00||;True|2025-04-03T13:39:16.2049845+08:00||;</History> <History>True|2025-05-06T05:56:55.7963451Z||;False|2025-05-06T13:56:30.4192182+08:00||;True|2025-05-06T12:24:06.1275328+08:00||;True|2025-05-06T12:17:30.5477075+08:00||;True|2025-05-06T12:09:02.1715202+08:00||;True|2025-05-06T10:48:14.2754277+08:00||;True|2025-05-06T10:31:56.4341238+08:00||;True|2025-05-06T10:11:06.0348707+08:00||;True|2025-05-06T10:11:00.3082825+08:00||;False|2025-05-06T10:10:39.1136970+08:00||;True|2025-05-06T09:05:16.4695917+08:00||;True|2025-04-22T15:43:19.8599243+08:00||;True|2025-04-03T14:51:22.5389895+08:00||;True|2025-04-03T13:39:16.2049845+08:00||;</History> <LastFailureDetails /> </PropertyGroup> </Project> Yw.WpfUI.Hydro.L3d.Core/Yw.WpfUI.Hydro.L3d.Core.csproj
@@ -7,7 +7,7 @@ <UseWPF>true</UseWPF> <ImplicitUsings>enable</ImplicitUsings> <GeneratePackageOnBuild>True</GeneratePackageOnBuild> <Version>1.1.0</Version> <Version>1.1.1</Version> </PropertyGroup> <ItemGroup>