From 04f9d03e29ce75b4aa0d108a1c2987fe2aaf61f6 Mon Sep 17 00:00:00 2001 From: tx <123456> Date: 星期二, 15 四月 2025 12:44:41 +0800 Subject: [PATCH] 添加Open --- WinFrmUI/DPumpHydr.WinFrmUI.Volute/MainViewPage_StepInfo.cs | 443 +++++++++++++++++++----------------------------------- 1 files changed, 156 insertions(+), 287 deletions(-) diff --git a/WinFrmUI/DPumpHydr.WinFrmUI.Volute/MainViewPage_StepInfo.cs b/WinFrmUI/DPumpHydr.WinFrmUI.Volute/MainViewPage_StepInfo.cs index c6754d9..c034a94 100644 --- a/WinFrmUI/DPumpHydr.WinFrmUI.Volute/MainViewPage_StepInfo.cs +++ b/WinFrmUI/DPumpHydr.WinFrmUI.Volute/MainViewPage_StepInfo.cs @@ -11,24 +11,6 @@ { //姝ラ鎺т欢 StepTreeDockPanel _stepTreeDockPanel = null; - /// <summary> - /// 鍒濆鍖栨楠ゅ垪琛� - /// </summary> - private void InitialStepNodes() - { - if (_ctrlHdrBaseInfo == null) - { - _ctrlHdrBaseInfo = new ctrlHdrBaseInfo(); - _ctrlHdrBaseInfo.Name = "ctrlHdrBaseInfo"; - _ctrlHdrBaseInfo.Dock = DockStyle.Right; - _ctrlHdrBaseInfo.InitialParas(); - } - - this.DockStepParaCtrl(_ctrlHdrBaseInfo); - - // - this._stepTreeDockPanel.InitialStepNodes(); - } /// <summary> @@ -37,116 +19,17 @@ /// <returns></returns> private bool GoNextStepCore() { - var currentStepID = this._stepTreeDockPanel.CurrentStepID; - if (SaveStepParas(currentStepID) == false) - { - return false; - } + var current_step_id = this._stepTreeDockPanel.CurrentStepID; // var next_step_id = this._stepTreeDockPanel.NextStepID; - if (currentStepID == this._stepTreeDockPanel.Step_ID_Section18_Full) + if (current_step_id == this._stepTreeDockPanel.Step_ID_Section18_Full) { - next_step_id = this._stepTreeDockPanel.Step_ID_Outflow_Type; - } - if (next_step_id > 0) - { - this.SetParasCtrl(next_step_id, DPumpHydr.ViewModel.eWizardStepDiretion.鍓嶈繘); - - // - this._stepTreeDockPanel.SetFocusedNode(next_step_id); + next_step_id = this._stepTreeDockPanel.Step_ID_Outflow_Paras; } - return true; - } - /// <summary> - /// - /// </summary> - /// <param name="step_id"></param> - /// <returns></returns> - protected bool SaveStepParas(long step_id) - { - #region 鑾峰彇褰撳墠椤甸潰鍙傛暟 - //绗竴姝� - if (step_id == this._stepTreeDockPanel.Step_ID_Hdr_Base_Info) - { - ViewModel.HdrBaseInfo hdrBaseInfo = null; - ViewModel.GeomBaseInfo geomBaseInfo = null; - string error_info = _ctrlHdrBaseInfo.GetBindingData(ref hdrBaseInfo, ref geomBaseInfo); - if (error_info != null) - { - MessageBox.Show(error_info); - return false; - } - if (geomBaseInfo == null || hdrBaseInfo == null) - return false; - _ctrlHdrBaseInfo.SaveHistoryParas(hdrBaseInfo, geomBaseInfo); - - _hdrBaseInfo = hdrBaseInfo; - _hdrBaseInfo.CalcNs(); - - _geomBaseInfo = geomBaseInfo; - - if (_sectionBundleInfo != null) - {//鏃舵椂淇濇寔鍚屾 - _sectionBundleInfo.BaseWidth = _geomBaseInfo.B3; - _sectionBundleInfo.BaseCircleRadius = _geomBaseInfo.D3 / 2; - } - - - return true; - } - //绗簩姝� - if (step_id == this._stepTreeDockPanel.Step_ID_Section18_Full) - { - string error_info; - var sectionBaseInfo = _ctrlSectionBundleInfo.GetBindingData(out error_info); - if (sectionBaseInfo == null) - { - MessageBox.Show(error_info); - return false; - } - _sectionBundleInfo = sectionBaseInfo; - //_sectionBundleInfo.ResetAllParas(_hdrBaseInfo, _geomBaseInfo); - //ViewModel.SectionShapePara _sectionShapePara = null; - //if (_sectionShapePara == null) - //{ - // _sectionShapePara = new ViewModel.SectionShapePara(); - //} - //_sectionShapePara.Initialparameters(_currentSectIndex, _sectionBaseInfo); - - return true; - } - //1-8鏂潰杩涜涓嬩竴姝ョ偣鍑� - if (step_id == this._stepTreeDockPanel.Step_ID_Section18_Grp) - { - //string error_info; - //var sectionShapeInfo18 = _ctrlSectionShapeInfo18.GetBindingData(out error_info); - //if (sectionShapeInfo18 == null) - //{ - // MessageBox.Show(error_info); - // return false; - //} - //if (!sectionShapeInfo18.Verify(out error_info)) - //{ - // MessageBox.Show(error_info); - // return false; - //} - //_sectionShapePara = sectionShapeInfo18; - //_sectionShapePara.CalcHeightByArea(_sectionBaseInfo.ShapeType); - //_sectionBaseInfo.EditSingleShape(_sectionShapePara, _currentSectIndex); - //if (_currentSectIndex != 9) - //{ - // _currentSectIndex--; - //} - //_sectionShapePara.Initialparameters(_currentSectIndex, _sectionBaseInfo); - - return true; - } - - #endregion - + ChangeStep(current_step_id, next_step_id); return true; } @@ -157,22 +40,10 @@ /// <returns></returns> private bool GoPrevStepCore() { - var currentStepID = this._stepTreeDockPanel.CurrentStepID; - ParasInfoBaseCtrl paras_ctrl = GetParasCtrl(currentStepID); - if (paras_ctrl != null && paras_ctrl.IsChangesParas()) - { - DialogResult result = MessageBox.Show("宸茬粡淇敼杩囩殑鏁版嵁闇�瑕佷繚瀛樺悧锛�", "鎻愮ず", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); - if (result == DialogResult.OK) - { - if (SaveStepParas(currentStepID) == false) - { - return false; - } - } - } + var current_step_id = this._stepTreeDockPanel.CurrentStepID; var prev_step_id = this._stepTreeDockPanel.PrevStepID; - if (currentStepID == this._stepTreeDockPanel.Step_ID_Outflow_Type) + if (current_step_id == this._stepTreeDockPanel.Step_ID_Outflow_Paras) { prev_step_id = this._stepTreeDockPanel.Step_ID_Section18_Full; } @@ -181,75 +52,173 @@ return false; - this.SetParasCtrl(prev_step_id, DPumpHydr.ViewModel.eWizardStepDiretion.鍚庨��); - - // - this._stepTreeDockPanel.SetFocusedNode(prev_step_id); - + this.ChangeStep(current_step_id, prev_step_id); return true; } /// <summary> - /// 鐢熸垚鎺т欢鐨勫弬鏁版帶浠� + /// 鍒囨崲姝ラ /// </summary> - /// <param name="step_id"></param> - private void SetParasCtrl(long step_id, DPumpHydr.ViewModel.eWizardStepDiretion step_direction) + /// <param name="current_step_id"></param> + /// <param name="next_step_id"></param> + private bool ChangeStep(long current_step_id, long next_step_id) { + RbtnChk鎴潰18.Visible = false; + if (current_step_id == this._stepTreeDockPanel.Step_ID_Hdr_Base_Info) + { + if (!SaveParaStep1()) + return false; + //ParasInfoBaseCtrl paras_ctrl = GetParasCtrl(current_step_id); + //if (paras_ctrl != null && paras_ctrl.IsChangesParas()) + //{ + // DialogResult result = MessageBox.Show("宸茬粡淇敼杩囩殑鏁版嵁闇�瑕佷繚瀛樺悧锛�", "鎻愮ず", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); + // if (result == DialogResult.OK) + // { + // if (SaveStepParas(current_step_id) == false) + // { + // return false; + // } + // } + //} + } + else if (current_step_id == this._stepTreeDockPanel.Step_ID_Section18_Full) + { + if (!SaveParaStep2()) + return false; + } + else if (current_step_id == this._stepTreeDockPanel.Step_ID_Outflow_Paras) + { + + if (!SaveParaStep3()) + return false; + } + else if (current_step_id == this._stepTreeDockPanel.Step_ID_Thickness) + { + if (!SaveParaStep4()) + return false; + if (next_step_id < current_step_id && next_step_id != 0) + {//鍒犻櫎鍔犲帤浣� + this._occDesign3dCtrl.RemoveThicknessBody( ); + + this._occDesign3dCtrl.Invalidate(true); + } + } + + + this.BuildParasCtrl(current_step_id, next_step_id); + + // + if(next_step_id > 0) + this._stepTreeDockPanel.SetFocusedNode(next_step_id); + + + if (next_step_id != this._stepTreeDockPanel.Step_ID_Thickness) + RbtnChk鏍囨敞.Visible = false; + Rbtn鏁版嵁瀵煎嚭STP.Visible = false; Rbtn鏁版嵁瀵煎嚭IGS.Visible = false; - - #region 绗�1姝� - if (step_id == this._stepTreeDockPanel.Step_ID_Hdr_Base_Info) + if (next_step_id == this._stepTreeDockPanel.Step_ID_Hdr_Base_Info) { - if (_ctrlHdrBaseInfo == null) - { - _ctrlHdrBaseInfo = new ctrlHdrBaseInfo(); - _ctrlHdrBaseInfo.Name = "ctrlHdrBaseInfo"; - } - - DockStepParaCtrl(_ctrlHdrBaseInfo); this._sectAreaDockPanel.Visible = false; + + this.RBtn鍚庨��.Enabled = false; + this.Rbtn鍓嶈繘.Enabled = true; + + + this.Rbtn涓婁竴姝�.Enabled = false; + this.Rbtn涓嬩竴姝�.Enabled = true; + this.Rbtn瀹屾垚.Enabled = false; + + this._occDesign2dCtrl.HideAll(); + this._occDesign3dCtrl.HideAll(); + } + else if (next_step_id == this._stepTreeDockPanel.Step_ID_Outflow_Paras) + { + RbtnChk鎴潰18.Visible = true; + RbtnChk鏍囨敞.Visible = true; + + this.RBtn鍚庨��.Enabled = true; + this.Rbtn鍓嶈繘.Enabled = true; + + this.Rbtn涓婁竴姝�.Enabled = true; + this.Rbtn涓嬩竴姝�.Enabled = true; + this.Rbtn瀹屾垚.Enabled = false; + } + + else if (next_step_id == this._stepTreeDockPanel.Step_ID_Thickness) + { + RbtnChk鏍囨敞.Visible = true; + this.RBtn鍚庨��.Enabled = true; + this.Rbtn鍓嶈繘.Enabled = false; + + + this.Rbtn涓婁竴姝�.Enabled = true; + this.Rbtn涓嬩竴姝�.Enabled = false; + this.Rbtn瀹屾垚.Enabled = true; + + this.Rbtn鏁版嵁瀵煎嚭STP.Visible = true; + this.Rbtn鏁版嵁瀵煎嚭IGS.Visible = true; + } + else if (current_step_id == this._stepTreeDockPanel.Step_ID_Thickness && next_step_id == 0) + { + this.RBtn鍚庨��.Enabled = true; + this.Rbtn鍓嶈繘.Enabled = false; + + + this.Rbtn涓婁竴姝�.Enabled = true; + this.Rbtn涓嬩竴姝�.Enabled = false; + this.Rbtn瀹屾垚.Enabled = true; + + this.Rbtn鏁版嵁瀵煎嚭STP.Visible = true; + this.Rbtn鏁版嵁瀵煎嚭IGS.Visible = true; + } else + { + this.RBtn鍚庨��.Enabled = true; + this.Rbtn鍓嶈繘.Enabled = true; + + + this.Rbtn涓婁竴姝�.Enabled = true; + this.Rbtn涓嬩竴姝�.Enabled = true; + this.Rbtn瀹屾垚.Enabled = false; + } + + + + return true; + } + + + + /// <summary> + /// 璁剧疆鍙傛暟鎺т欢 + /// </summary> + /// <param name="next_step_id"></param> + private void BuildParasCtrl(long current_step_id, long next_step_id) + { + #region 绗�1姝� + if (next_step_id == this._stepTreeDockPanel.Step_ID_Hdr_Base_Info) + { + EnterStep1(current_step_id); + return; } #endregion - #region 绗�2姝� 鏂潰鎬昏 - if (step_id == this._stepTreeDockPanel.Step_ID_Section18_Full) + #region 绗�2姝� + if (next_step_id == this._stepTreeDockPanel.Step_ID_Section18_Full) { - if (_hdrBaseInfo == null || _geomBaseInfo == null) - return; + EnterStep2(current_step_id); - if (_ctrlSectionBundleInfo == null) - { - _ctrlSectionBundleInfo = new ctrlSectionBundleInfo(); - _ctrlSectionBundleInfo.Name = "ctrlSectionBaseInfo"; - _ctrlSectionBundleInfo.OnRefreshShape += RefreshSectShapeWhole18; - } - - - _ctrlSectionBundleInfo.ShowPage(_hdrBaseInfo, _geomBaseInfo, step_direction); - - DockStepParaCtrl(_ctrlSectionBundleInfo); - - this._occDesign2dCtrl.SetAllSectionCurveVisible(true); - this._occDesign3dCtrl.SetAllSectionCurveVisible(true); - - this._occDesign3dCtrl.SetWaterBodyVisible(false); - this._occDesign3dCtrl.SetThicknessBodyVisible(false); - - - this._sectAreaDockPanel.RefreshControl(); - this._sectAreaDockPanel.Visible = true; return; } #endregion #region 绗�3姝� 1-8鏂潰 - if (step_id > this._stepTreeDockPanel.Step_ID_Section18_Grp && - step_id <= this._stepTreeDockPanel.Step_ID_Section18_Grp + 8) + if (next_step_id > this._stepTreeDockPanel.Step_ID_Section18_Grp && + next_step_id <= this._stepTreeDockPanel.Step_ID_Section18_Grp + 8) { if (_sectionBundleInfo == null) return; @@ -260,7 +229,7 @@ _ctrlSectionShapeInfo18.OnRefreshShape += RefreshSectShapeSingle18; } DockStepParaCtrl(_ctrlSectionShapeInfo18); - var sect_index = 9 + this._stepTreeDockPanel.Step_ID_Section18_Grp - step_id; + var sect_index = 9 + this._stepTreeDockPanel.Step_ID_Section18_Grp - next_step_id; var shape_info = _sectionBundleInfo.ToSectionShapePara((int)sect_index); RefreshSectShapeSingle18(shape_info); _ctrlSectionShapeInfo18.SetBindingData(shape_info); @@ -275,126 +244,26 @@ #endregion - #region 鍑烘按闈㈢被鍨嬮�夋嫨 - if (step_id == this._stepTreeDockPanel.Step_ID_Outflow_Type) - { - if (_sectionBundleInfo == null) - return; - if (_ctrlSetOutflowType == null) - { - _ctrlSetOutflowType = new ctrlSetOutflowType(); - _ctrlSetOutflowType.Name = "ctrlSetOutflowType"; - } - _ctrlSetOutflowType.ShowPage(step_direction); - - this._sectAreaDockPanel.Visible = true; - this._sectAreaDockPanel.RefreshControl(); - DockStepParaCtrl(_ctrlSetOutflowType); - - - return; - } - #endregion - #region 鍑烘按闈㈠弬鏁� - if (step_id == this._stepTreeDockPanel.Step_ID_Outflow_Paras) + if (next_step_id == this._stepTreeDockPanel.Step_ID_Outflow_Paras) { - if (_sectionBundleInfo == null) - return; - - this._occDesign2dCtrl.SetAllSectionCurveVisible(false); - this._occDesign3dCtrl.SetAllSectionCurveVisible(false); - - - _outflowType = _ctrlSetOutflowType.GetBindingData(); - if (_ctrlSetOutflowParas == null) - { - _ctrlSetOutflowParas = new ctrlSetOutflowParas(); - _ctrlSetOutflowParas.Name = "ctrlSetOutflowStyle"; - _ctrlSetOutflowParas.OnRefreshShape2D += RefreshWaterBody2D; - _ctrlSetOutflowParas.OnRefreshShape3D += RefreshWaterBody3D; - _ctrlSetOutflowParas.OnMoveSectPosi += (sect_index, posi) => - { - if (sect_index == 9) - { - _sect9Posi = posi; - var SectArea9 = this._occDesign3dCtrl.GetSectArea9(_sect9Posi); - this._sectAreaDockPanel.SetArea9(SectArea9); - } - if (sect_index == 10) - { - _sect10Posi = posi; - var SectArea10 = this._occDesign3dCtrl.GetSectArea10(_sect10Posi); - this._sectAreaDockPanel.SetArea10(SectArea10); - } - }; - _ctrlSetOutflowParas.InitialParas(_outflowType, _hdrBaseInfo, _geomBaseInfo, _sectionBundleInfo); - _ctrlSetOutflowParas.SetSect9Posi(_sect9Posi); - _ctrlSetOutflowParas.SetSect10Posi(_sect10Posi); - } - - _ctrlSetOutflowParas.SetOutflowStyle(_outflowType); - - - _ctrlSetOutflowParas.ShowPage(step_direction); - - - this._sectAreaDockPanel.RefreshControl(); - this._sectAreaDockPanel.Visible = true; - DockStepParaCtrl(_ctrlSetOutflowParas); - string error = ""; - _outflowParas = _ctrlSetOutflowParas.GetBindingData(out error); - - - this._occDesign3dCtrl.setWaterBodyOpacity( - DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.R, - DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.G, - DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.B, 256); - this._occDesign3dCtrl.SetThicknessBodyVisible(false ); + EnterStep3(current_step_id); return; } #endregion - #region 鍔犲帤 - if (step_id == this._stepTreeDockPanel.Step_ID_jiahout) + #region 鍔犲帤 + if (next_step_id == this._stepTreeDockPanel.Step_ID_Thickness) { if (_sectionBundleInfo == null) return; - Rbtn鏁版嵁瀵煎嚭STP.Visible = true; - Rbtn鏁版嵁瀵煎嚭IGS.Visible = true; - this._occDesign2dCtrl.SetAllSectionCurveVisible(false); - this._occDesign3dCtrl.SetAllSectionCurveVisible(false); + EnterStep4(current_step_id); - if (_ctrlThicknessParas == null) - { - _ctrlThicknessParas = new ctrlThicknessParas(); - _ctrlThicknessParas.Name = "ctrlThicknessParas"; - _ctrlThicknessParas.OnRefreshShape += (houdu) => - { - this._bodyThickness = houdu; - this._occDesign3dCtrl.BuildThicknessBody(houdu); - }; - this._bodyThickness = _ctrlThicknessParas.InitialParas(_hdrBaseInfo, _geomBaseInfo, _outflowParas); - this._occDesign3dCtrl.BuildThicknessBody(_bodyThickness); - } - - - - _ctrlThicknessParas.ShowPage(); - - this._occDesign3dCtrl.setWaterBodyOpacity( - DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.R, - DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.G, - DPumpHydr.WinFrmUI.Volute.GlobalParas.WaterBodyColor.B, 60); - this._occDesign3dCtrl.SetThicknessBodyVisible(true); - - DockStepParaCtrl(_ctrlThicknessParas); return; } - #endregion - + #endregion } -- Gitblit v1.9.3