using System; using System.Collections.Generic; using System.Windows.Forms; using System.IO; using System.Text; using System.Drawing; using HydrEngineCSharp; namespace DPumpHydr.WinFrmUI.Volute { public partial class MainViewPage : System.Windows.Forms.UserControl { /// /// 蜗壳参数导出 /// public void ExportXmlFile() { //if (_hdrBaseInfo == null) //{ // MessageBox.Show("您还没有完成定义参数!请定义完成后在进行导出!(至少完成第三步)"); // return; //} var currentStepID = this._stepTreeDockPanel.CurrentStepID; if (_hdrBaseInfo == null) { if (currentStepID == this._stepTreeDockPanel.Step_ID_Hdr_Base_Info) { if (!SaveParaStep1()) { MessageBox.Show("您还没有完成定义参数!请该界面全部输入完成后在进行导出!"); return; } if (_sectionBundleInfo == null) { _sectionBundleInfo = new ViewModel.SectionBundleInfo(); _sectionBundleInfo.BaseWidth = _geomBaseInfo.B3; _sectionBundleInfo.BaseCircleRadius = _geomBaseInfo.D3 / 2; _sectionBundleInfo.ResetAllParas(_hdrBaseInfo, _geomBaseInfo); } } } #region 暂时需要导出目前页面的值,并没有进行判断,测试使用 if (currentStepID == this._stepTreeDockPanel.Step_ID_Hdr_Base_Info) { if (!SaveParaStep1()) return; } else if (currentStepID == this._stepTreeDockPanel.Step_ID_Section18_Full) { if (!SaveParaStep2()) return; } else if (currentStepID == this._stepTreeDockPanel.Step_ID_Outflow_Paras) { if (!SaveParaStep3()) return; } #endregion SaveFileDialog dlg = new SaveFileDialog(); dlg.Title = "导出蜗壳信息"; dlg.FileName = "蜗壳信息.xml"; dlg.Filter = "xml文件 (*.xml)|*.xml"; if (dlg.ShowDialog() != DialogResult.OK) return; new DPumpHydr.WinFrmUI.VoluteXmlParasTranHelper().Save( dlg.FileName, _hdrBaseInfo, _geomBaseInfo, _sectionBundleInfo, _outflowParas, this._bodyThickness); } /// /// 蜗壳参数导入 /// public void ImportXmlFile() { OpenFileDialog dlg = new OpenFileDialog(); dlg.Title = "导入蜗壳信息"; dlg.FileName = "蜗壳信息.xml"; dlg.Filter = "xml文件 (*.xml)|*.xml"; if (dlg.ShowDialog() != DialogResult.OK) return; var ret = new DPumpHydr.WinFrmUI.VoluteXmlParasTranHelper().Read( dlg.FileName, out _hdrBaseInfo, out _geomBaseInfo, out _sectionBundleInfo, out _outflowParas, out this._bodyThickness); if (ret) { this._occDesign2dCtrl.ClearAll(); this._occDesign3dCtrl.ClearAll(); #region 第一步 if (_hdrBaseInfo == null) return; if (_ctrlHdrBaseInfo == null) { _ctrlHdrBaseInfo = new ctrlHdrBaseInfo(); _ctrlHdrBaseInfo.Name = "ctrlHdrBaseInfo"; } _ctrlHdrBaseInfo.SetBindingData(_hdrBaseInfo); _ctrlHdrBaseInfo.SetBindingData(_geomBaseInfo); _ctrlHdrBaseInfo.SaveHistoryParas(_hdrBaseInfo, _geomBaseInfo); _stepTreeDockPanel.SetFocusedNode(this._stepTreeDockPanel.Step_ID_Hdr_Base_Info); #endregion #region 第2步 断面总览 if (_sectionBundleInfo == null) return; CreateSectionStepCtrl(); _isHaveCreateWaterBody3d = false; DockStepParaCtrl(_ctrlSectionBundleInfo); if (_ctrlSectionBundleInfo != null) { _ctrlSectionBundleInfo.SetBindingData(_sectionBundleInfo); } _ctrlSectionBundleInfo.ShowPage(_hdrBaseInfo, _geomBaseInfo, DPumpHydr.ViewModel.eWizardStepDiretion.前进, false); _ctrlSectionBundleInfo.RefreshAllSectPara(_sectionBundleInfo); RefreshSectShapeWhole18(_sectionBundleInfo); _stepTreeDockPanel.SetFocusedNode(this._stepTreeDockPanel.Step_ID_Section18_Full); #endregion #region 出水面参数 if (_outflowParas == null) return; CreateOutflowStepCtrl(); _isHaveCreateWaterBody3d = false; DockStepParaCtrl(_ctrlSetOutflowParas); _ctrlSetOutflowParas.Isxml = true; InitilOutflowStepCtrl(this._stepTreeDockPanel.Step_ID_Section18_Full); this._occDesign2dCtrl.SetAllSectionCurveVisible(false); this._occDesign3dCtrl.SetAllSectionCurveVisible(false); RbtnChk标注.Visible = true; _stepTreeDockPanel.SetFocusedNode(this._stepTreeDockPanel.Step_ID_Outflow_Paras); #endregion #region 加厚 if (_bodyThickness < 1) return; InitilThicknessStepCtrl(this._stepTreeDockPanel.Step_ID_Outflow_Paras, _bodyThickness); DockStepParaCtrl(_ctrlThicknessParas); _stepTreeDockPanel.SetFocusedNode(this._stepTreeDockPanel.Step_ID_Thickness); RbtnChk标注.Visible = true; #endregion GoNextStep(); } } /// /// 蜗壳参数导出 /// public void ExportStpFile() { if (_hdrBaseInfo == null) { MessageBox.Show("您还没有完成定义参数!请定义完成后在进行导出!(至少完成第三步)"); return; } SaveFileDialog dlg = new SaveFileDialog(); dlg.Title = "导出蜗壳"; dlg.FileName = "蜗壳.stp"; dlg.Filter = "stp文件 (*.stp)|*.stp"; if (dlg.ShowDialog() == DialogResult.OK) { this._occDesign3dCtrl.ExportThicknessBody(dlg.FileName.Replace(".stp", "_body.stp"), FileType.ESTEPFILE); this._occDesign3dCtrl.ExportWaterBodyFile(dlg.FileName.Replace(".stp", "_water.stp"), FileType.ESTEPFILE); new DPumpHydr.WinFrmUI.VoluteXmlParasTranHelper().Save( dlg.FileName.Replace(".stp", ".xml"), _hdrBaseInfo, _geomBaseInfo, _sectionBundleInfo, _outflowParas, this._bodyThickness); } } /// /// 蜗壳参数导出 /// public void ExportIgsFile() { if (_hdrBaseInfo == null) { MessageBox.Show("您还没有完成定义参数!请定义完成后在进行导出!(至少完成第三步)"); return; } SaveFileDialog dlg = new SaveFileDialog(); dlg.Title = "导出蜗壳"; dlg.FileName = "蜗壳.igs"; dlg.Filter = "igs文件 (*.igs)|*.igs"; if (dlg.ShowDialog() == DialogResult.OK) { this._occDesign3dCtrl.ExportThicknessBody(dlg.FileName.Replace(".igs", "_body.igs"), FileType.EIGESFILE); this._occDesign3dCtrl.ExportWaterBodyFile(dlg.FileName.Replace(".igs", "_water.igs"), FileType.EIGESFILE); new DPumpHydr.WinFrmUI.VoluteXmlParasTranHelper().Save( dlg.FileName.Replace(".stp", ".igs"), _hdrBaseInfo, _geomBaseInfo, _sectionBundleInfo, _outflowParas, this._bodyThickness); } } } }