VDGP202Dialog.cs 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758
  1. using PaintDotNet.Base.CommTool;
  2. using PaintDotNet.Base.DedicatedAnalysis.Porosity;
  3. using PaintDotNet.Base.DedicatedAnalysis.Porosity.Model;
  4. using PaintDotNet.Base.DedicatedAnalysis.Porosity.Standard.TypesOfAssessment;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.ComponentModel;
  8. using System.Data;
  9. using System.Drawing;
  10. using System.IO;
  11. using System.Linq;
  12. using System.Text;
  13. using System.Threading.Tasks;
  14. using System.Windows.Forms;
  15. namespace PaintDotNet.DedicatedAnalysis.Porosity.VDGP202
  16. {
  17. partial class VDGP202Dialog : PorosityStandardDialog
  18. {
  19. protected PorosityConfig porosityConfig;
  20. private GroupBox groupBox2;
  21. private CheckBox checkBox4;
  22. private CheckBox checkBox3;
  23. private CheckBox checkBox2;
  24. private CheckBox checkBox1;
  25. private DataGridView dataGridView1;
  26. private ComboBox comboBox1;
  27. private Label label1;
  28. private ComboBox comboBox3;
  29. private Label label7;
  30. private Button button_pickColor;
  31. private DataGridViewTextBoxColumn Column11;
  32. private DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
  33. private DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
  34. private DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
  35. private DataGridViewTextBoxColumn dataGridViewTextBoxColumn4;
  36. private DataGridViewTextBoxColumn widespread;
  37. private DataGridViewTextBoxColumn diameter;
  38. private DataGridViewTextBoxColumn minimumDiameter;
  39. private DataGridViewTextBoxColumn level;
  40. private GroupBox groupBox1;
  41. public VDGP202Dialog(AppWorkspace appWorkspace, string dialogText,PdnMenuItem menuItem) : base(appWorkspace, dialogText, menuItem)
  42. {
  43. InitializeComponent();
  44. InitializeLanguageText();
  45. getData();
  46. }
  47. private void InitializeLanguageText()
  48. {
  49. this.groupBox1.Text = PdnResources.GetString("Menu.paramssettings.text");
  50. this.button_pickColor.Text = PdnResources.GetString("Menu.Dedicatedanalysis.Nmetals.moreoptions.text");
  51. this.comboBox1.Items.AddRange(new object[] {
  52. PdnResources.GetString("Menu.Maximumcaliperdiameter.text"),
  53. PdnResources.GetString("Menu.Diameterofequalareacircle.text")});
  54. this.label1.Text = PdnResources.GetString("Menu.Dedicatedanalysis.Nmetals.Diametertype.text");
  55. this.label7.Text = PdnResources.GetString("Menu.Typeofstress.text");
  56. this.groupBox2.Text = PdnResources.GetString("Menu.Dedicatedanalysis.Nmetals.thelesettings.text");
  57. this.Column11.HeaderText = PdnResources.GetString("Menu.view.text");
  58. this.dataGridViewTextBoxColumn1.HeaderText = PdnResources.GetString("Menu.Dedicatedanalysis.Nmetals.holearea.text");
  59. this.dataGridViewTextBoxColumn2.HeaderText = PdnResources.GetString("Menu.Dedicatedanalysis.Nmetals.viewarea.text");
  60. this.dataGridViewTextBoxColumn3.HeaderText = PdnResources.GetString("Menu.Porosity.text");
  61. this.dataGridViewTextBoxColumn4.HeaderText = PdnResources.GetString("Menu.Dedicatedanalysis.Nmetals.Numberofholes.text");
  62. this.widespread.HeaderText = PdnResources.GetString("Menu.Dedicatedanalysis.Nmetals.Maxarea.text");
  63. this.diameter.HeaderText = PdnResources.GetString("Menu.Themaxdiameter.text");
  64. this.minimumDiameter.HeaderText = PdnResources.GetString("Menu.minimumdiameter.text");
  65. this.level.HeaderText = PdnResources.GetString("Menu.levdel.Text");
  66. this.checkBox4.Text = PdnResources.GetString("Menu.Rough.text") + "Rz";
  67. this.checkBox3.Text = PdnResources.GetString("Menu.minimumdiameter.text") + "U";
  68. this.checkBox2.Text = PdnResources.GetString("Menu.minimumdistance.text") + "A";
  69. this.checkBox1.Text = PdnResources.GetString("Menu.diameter.text") + "φ";
  70. this.Text = "VDGP202(" + PdnResources.GetString("Menu.Porosity.text") + ")";
  71. }
  72. private void InitializeComponent()
  73. {
  74. System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
  75. System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
  76. System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
  77. System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
  78. System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
  79. System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
  80. this.groupBox1 = new System.Windows.Forms.GroupBox();
  81. this.button_pickColor = new System.Windows.Forms.Button();
  82. this.comboBox1 = new System.Windows.Forms.ComboBox();
  83. this.label1 = new System.Windows.Forms.Label();
  84. this.comboBox3 = new System.Windows.Forms.ComboBox();
  85. this.label7 = new System.Windows.Forms.Label();
  86. this.groupBox2 = new System.Windows.Forms.GroupBox();
  87. this.dataGridView1 = new System.Windows.Forms.DataGridView();
  88. this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
  89. this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
  90. this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
  91. this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
  92. this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
  93. this.widespread = new System.Windows.Forms.DataGridViewTextBoxColumn();
  94. this.diameter = new System.Windows.Forms.DataGridViewTextBoxColumn();
  95. this.minimumDiameter = new System.Windows.Forms.DataGridViewTextBoxColumn();
  96. this.level = new System.Windows.Forms.DataGridViewTextBoxColumn();
  97. this.checkBox4 = new System.Windows.Forms.CheckBox();
  98. this.checkBox3 = new System.Windows.Forms.CheckBox();
  99. this.checkBox2 = new System.Windows.Forms.CheckBox();
  100. this.checkBox1 = new System.Windows.Forms.CheckBox();
  101. ((System.ComponentModel.ISupportInitialize)(this.numericUpDown_lwRatioLimit)).BeginInit();
  102. this.groupBox1.SuspendLayout();
  103. this.groupBox2.SuspendLayout();
  104. ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
  105. this.SuspendLayout();
  106. //
  107. // groupBox1
  108. //
  109. this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
  110. this.groupBox1.Controls.Add(this.button_pickColor);
  111. this.groupBox1.Controls.Add(this.comboBox1);
  112. this.groupBox1.Controls.Add(this.label1);
  113. this.groupBox1.Controls.Add(this.comboBox3);
  114. this.groupBox1.Controls.Add(this.label7);
  115. this.groupBox1.Location = new System.Drawing.Point(178, 357);
  116. this.groupBox1.Name = "groupBox1";
  117. this.groupBox1.Size = new System.Drawing.Size(356, 59);
  118. this.groupBox1.TabIndex = 35;
  119. this.groupBox1.TabStop = false;
  120. //
  121. // button_pickColor
  122. //
  123. this.button_pickColor.Location = new System.Drawing.Point(273, 20);
  124. this.button_pickColor.Name = "button_pickColor";
  125. this.button_pickColor.Size = new System.Drawing.Size(75, 23);
  126. this.button_pickColor.TabIndex = 37;
  127. this.button_pickColor.UseVisualStyleBackColor = true;
  128. this.button_pickColor.Click += new System.EventHandler(this.button_pickColor_Click);
  129. //
  130. // comboBox1
  131. //
  132. this.comboBox1.FormattingEnabled = true;
  133. this.comboBox1.Location = new System.Drawing.Point(172, 22);
  134. this.comboBox1.Name = "comboBox1";
  135. this.comboBox1.Size = new System.Drawing.Size(95, 20);
  136. this.comboBox1.TabIndex = 17;
  137. //
  138. // label1
  139. //
  140. this.label1.AutoSize = true;
  141. this.label1.Location = new System.Drawing.Point(113, 25);
  142. this.label1.Name = "label1";
  143. this.label1.Size = new System.Drawing.Size(53, 12);
  144. this.label1.TabIndex = 16;
  145. //
  146. // comboBox3
  147. //
  148. this.comboBox3.FormattingEnabled = true;
  149. this.comboBox3.Items.AddRange(new object[] {
  150. "D",
  151. "S",
  152. "F",
  153. "G"});
  154. this.comboBox3.Location = new System.Drawing.Point(64, 22);
  155. this.comboBox3.Name = "comboBox3";
  156. this.comboBox3.Size = new System.Drawing.Size(43, 20);
  157. this.comboBox3.TabIndex = 15;
  158. //
  159. // label7
  160. //
  161. this.label7.AutoSize = true;
  162. this.label7.Location = new System.Drawing.Point(6, 25);
  163. this.label7.Name = "label7";
  164. this.label7.Size = new System.Drawing.Size(53, 12);
  165. this.label7.TabIndex = 14;
  166. //
  167. // groupBox2
  168. //
  169. this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
  170. this.groupBox2.Controls.Add(this.dataGridView1);
  171. this.groupBox2.Controls.Add(this.checkBox4);
  172. this.groupBox2.Controls.Add(this.checkBox3);
  173. this.groupBox2.Controls.Add(this.checkBox2);
  174. this.groupBox2.Controls.Add(this.checkBox1);
  175. this.groupBox2.Location = new System.Drawing.Point(178, 422);
  176. this.groupBox2.Name = "groupBox2";
  177. this.groupBox2.Size = new System.Drawing.Size(356, 133);
  178. this.groupBox2.TabIndex = 36;
  179. this.groupBox2.TabStop = false;
  180. //
  181. // dataGridView1
  182. //
  183. this.dataGridView1.AllowUserToAddRows = false;
  184. this.dataGridView1.BackgroundColor = System.Drawing.SystemColors.ControlLightLight;
  185. dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
  186. dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control;
  187. dataGridViewCellStyle7.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
  188. dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText;
  189. dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight;
  190. dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
  191. dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
  192. this.dataGridView1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7;
  193. this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
  194. this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
  195. this.Column11,
  196. this.dataGridViewTextBoxColumn1,
  197. this.dataGridViewTextBoxColumn2,
  198. this.dataGridViewTextBoxColumn3,
  199. this.dataGridViewTextBoxColumn4,
  200. this.widespread,
  201. this.diameter,
  202. this.minimumDiameter,
  203. this.level});
  204. this.dataGridView1.Location = new System.Drawing.Point(0, 42);
  205. this.dataGridView1.MultiSelect = false;
  206. this.dataGridView1.Name = "dataGridView1";
  207. this.dataGridView1.ReadOnly = true;
  208. this.dataGridView1.RowHeadersVisible = false;
  209. this.dataGridView1.RowTemplate.Height = 23;
  210. this.dataGridView1.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
  211. this.dataGridView1.Size = new System.Drawing.Size(356, 80);
  212. this.dataGridView1.TabIndex = 11;
  213. //
  214. // Column11
  215. //
  216. dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
  217. this.Column11.DefaultCellStyle = dataGridViewCellStyle8;
  218. this.Column11.Name = "Column11";
  219. this.Column11.ReadOnly = true;
  220. this.Column11.Width = 80;
  221. //
  222. // dataGridViewTextBoxColumn1
  223. //
  224. dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
  225. this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle9;
  226. this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
  227. this.dataGridViewTextBoxColumn1.ReadOnly = true;
  228. //
  229. // dataGridViewTextBoxColumn2
  230. //
  231. dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
  232. this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle10;
  233. this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
  234. this.dataGridViewTextBoxColumn2.ReadOnly = true;
  235. //
  236. // dataGridViewTextBoxColumn3
  237. //
  238. dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
  239. this.dataGridViewTextBoxColumn3.DefaultCellStyle = dataGridViewCellStyle11;
  240. this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
  241. this.dataGridViewTextBoxColumn3.ReadOnly = true;
  242. //
  243. // dataGridViewTextBoxColumn4
  244. //
  245. dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
  246. this.dataGridViewTextBoxColumn4.DefaultCellStyle = dataGridViewCellStyle12;
  247. this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4";
  248. this.dataGridViewTextBoxColumn4.ReadOnly = true;
  249. //
  250. // widespread
  251. //
  252. this.widespread.Name = "widespread";
  253. this.widespread.ReadOnly = true;
  254. //
  255. // diameter
  256. //
  257. this.diameter.Name = "diameter";
  258. this.diameter.ReadOnly = true;
  259. //
  260. // minimumDiameter
  261. //
  262. this.minimumDiameter.Name = "minimumDiameter";
  263. this.minimumDiameter.ReadOnly = true;
  264. //
  265. // level
  266. //
  267. this.level.Name = "level";
  268. this.level.ReadOnly = true;
  269. //
  270. // checkBox4
  271. //
  272. this.checkBox4.AutoSize = true;
  273. this.checkBox4.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
  274. this.checkBox4.Location = new System.Drawing.Point(242, 20);
  275. this.checkBox4.Name = "checkBox4";
  276. this.checkBox4.Size = new System.Drawing.Size(60, 16);
  277. this.checkBox4.TabIndex = 10;
  278. this.checkBox4.UseVisualStyleBackColor = true;
  279. this.checkBox4.CheckedChanged += new System.EventHandler(this.checkBox4_CheckedChanged);
  280. //
  281. // checkBox3
  282. //
  283. this.checkBox3.AutoSize = true;
  284. this.checkBox3.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
  285. this.checkBox3.Location = new System.Drawing.Point(74, 20);
  286. this.checkBox3.Name = "checkBox3";
  287. this.checkBox3.Size = new System.Drawing.Size(78, 16);
  288. this.checkBox3.TabIndex = 9;
  289. this.checkBox3.UseVisualStyleBackColor = true;
  290. this.checkBox3.CheckedChanged += new System.EventHandler(this.checkBox3_CheckedChanged);
  291. //
  292. // checkBox2
  293. //
  294. this.checkBox2.AutoSize = true;
  295. this.checkBox2.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
  296. this.checkBox2.Location = new System.Drawing.Point(158, 20);
  297. this.checkBox2.Name = "checkBox2";
  298. this.checkBox2.Size = new System.Drawing.Size(78, 16);
  299. this.checkBox2.TabIndex = 8;
  300. this.checkBox2.UseVisualStyleBackColor = true;
  301. this.checkBox2.CheckedChanged += new System.EventHandler(this.checkBox2_CheckedChanged);
  302. //
  303. // checkBox1
  304. //
  305. this.checkBox1.AutoSize = true;
  306. this.checkBox1.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
  307. this.checkBox1.Location = new System.Drawing.Point(8, 20);
  308. this.checkBox1.Name = "checkBox1";
  309. this.checkBox1.Size = new System.Drawing.Size(60, 16);
  310. this.checkBox1.TabIndex = 7;
  311. this.checkBox1.UseVisualStyleBackColor = true;
  312. this.checkBox1.CheckedChanged += new System.EventHandler(this.checkBox1_CheckedChanged);
  313. //
  314. // PV6093Dialog
  315. //
  316. this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
  317. this.ClientSize = new System.Drawing.Size(1177, 761);
  318. this.Controls.Add(this.groupBox2);
  319. this.Controls.Add(this.groupBox1);
  320. this.Name = "VDGP202Dialog";
  321. this.Controls.SetChildIndex(this.groupBox1, 0);
  322. this.Controls.SetChildIndex(this.groupBox2, 0);
  323. ((System.ComponentModel.ISupportInitialize)(this.numericUpDown_lwRatioLimit)).EndInit();
  324. this.groupBox1.ResumeLayout(false);
  325. this.groupBox1.PerformLayout();
  326. this.groupBox2.ResumeLayout(false);
  327. this.groupBox2.PerformLayout();
  328. ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
  329. this.ResumeLayout(false);
  330. }
  331. #region [页面事件]
  332. /// <summary>
  333. /// 初始化赋值
  334. /// </summary>
  335. /// <param name="sender"></param>
  336. /// <param name="e"></param>
  337. private void getData()
  338. {
  339. string filePath = Application.StartupPath + "\\PorosityConfig\\6093Config.xml";
  340. try
  341. {
  342. porosityConfig = XmlSerializeHelper.DESerializer<PorosityConfig>(FileOperationHelper.ReadStringFromFile(filePath, FileMode.Open));
  343. }
  344. catch (Exception ex)
  345. {
  346. porosityConfig = new PorosityConfig();
  347. porosityConfig.diameterType = 1;
  348. porosityConfig.distanceFactor = 1;
  349. porosityConfig.maxDiameter = 1;
  350. porosityConfig.maxPorosityNum = 1;
  351. porosityConfig.maxPorosityPercent = 1;
  352. porosityConfig.minDiameter = 1;
  353. porosityConfig.roughSurface = 1;
  354. porosityConfig.stressType = "D";
  355. porosityConfig.diameter = false;
  356. porosityConfig.minDistanceA = false;
  357. porosityConfig.minDiameterU = false;
  358. porosityConfig.surfaceRz = false;
  359. if (!Directory.Exists(filePath))
  360. {
  361. string porosityInfoXml = XmlSerializeHelper.XmlSerialize<PorosityConfig>(porosityConfig);
  362. Directory.CreateDirectory(Application.StartupPath + "\\PorosityConfig\\");
  363. FileOperationHelper.WriteStringToFile(porosityInfoXml, filePath, FileMode.CreateNew);
  364. }
  365. }
  366. this.comboBox3.SelectedItem = this.porosityConfig.stressType;
  367. this.comboBox1.SelectedItem = this.porosityConfig.diameterType == 1 ? PdnResources.GetString("Menu.Maximumcaliperdiameter.text") : PdnResources.GetString("Menu.Diameterofequalareacircle.text");
  368. this.checkBox1.Checked = this.porosityConfig.diameter;
  369. this.checkBox3.Checked = this.porosityConfig.minDistanceA;
  370. this.checkBox2.Checked = this.porosityConfig.minDiameterU;
  371. this.checkBox4.Checked = this.porosityConfig.surfaceRz;
  372. }
  373. /// <summary>
  374. /// 更多选线展示弹窗
  375. /// </summary>
  376. /// <param name="sender"></param>
  377. /// <param name="e"></param>
  378. private void button_pickColor_Click(object sender, EventArgs e)
  379. {
  380. new PorosityMoreChoose(porosityConfig, null,this, null).ShowDialog();
  381. }
  382. #endregion
  383. #region 需继承方法
  384. protected override void SubclassInitialize()
  385. {
  386. InitializeComponent();
  387. }
  388. protected override MethodOfAssessment getMethodOfAssessment()
  389. {
  390. return new MethodOfVDGP202(this.imgPxPerUnit);
  391. }
  392. protected override void initColorSetting()
  393. {
  394. }
  395. protected override void initDisplaySetting()
  396. {
  397. }
  398. protected override void getArgsValue()
  399. {
  400. var key = this.argsKey;
  401. var value = this.argsValue;
  402. switch (key)
  403. {
  404. case "parameter1":
  405. this.comboBox3.SelectedIndex = (int)value;
  406. this.porosityConfig.stressType = this.comboBox3.SelectedItem.ToString();
  407. break;
  408. case "parameter2":
  409. this.comboBox1.SelectedIndex = (int)value;
  410. this.porosityConfig.diameterType = this.comboBox1.SelectedItem == null ? 1 : this.comboBox1.SelectedItem.ToString() == PdnResources.GetString("Menu.Maximumcaliperdiameter.text") ? 1 : 2;
  411. break;
  412. case "parameter3":
  413. this.porosityConfig.maxPorosityPercent = Convert.ToDouble(value);
  414. break;
  415. case "parameter4":
  416. this.porosityConfig.roughSurface = Convert.ToDouble(value);
  417. break;
  418. case "parameter5":
  419. this.porosityConfig.maxDiameter = Convert.ToDouble(value);
  420. break;
  421. case "parameter6":
  422. this.porosityConfig.distanceFactor = Convert.ToDouble(value);
  423. break;
  424. case "parameter7":
  425. this.porosityConfig.maxPorosityNum = Convert.ToDouble(value);
  426. break;
  427. case "parameter8":
  428. this.porosityConfig.minDiameter = Convert.ToDouble(value);
  429. break;
  430. case "parameter9":
  431. this.checkBox1.Checked = Convert.ToBoolean(value);
  432. this.porosityConfig.diameter = this.checkBox1.Checked;
  433. break;
  434. case "parameter10":
  435. this.checkBox3.Checked = Convert.ToBoolean(value);
  436. this.porosityConfig.minDiameterU = this.checkBox3.Checked;
  437. break;
  438. case "parameter11":
  439. this.checkBox2.Checked = Convert.ToBoolean(value);
  440. this.porosityConfig.minDistanceA = this.checkBox2.Checked;
  441. break;
  442. case "parameter12":
  443. this.checkBox4.Checked = Convert.ToBoolean(value);
  444. this.porosityConfig.surfaceRz = this.checkBox4.Checked;
  445. break;
  446. }
  447. }
  448. protected override void setArgsValue()
  449. {
  450. var key = this.argsKey;
  451. object value = null;
  452. switch (key)
  453. {
  454. case "parameter1":
  455. value = this.comboBox3.SelectedIndex;
  456. break;
  457. case "parameter2":
  458. value = this.comboBox1.SelectedIndex;
  459. break;
  460. case "parameter3":
  461. value = this.porosityConfig.maxPorosityPercent;
  462. break;
  463. case "parameter4":
  464. value = this.porosityConfig.roughSurface;
  465. break;
  466. case "parameter5":
  467. value = this.porosityConfig.maxDiameter;
  468. break;
  469. case "parameter6":
  470. value = this.porosityConfig.distanceFactor;
  471. break;
  472. case "parameter7":
  473. value = this.porosityConfig.maxPorosityNum;
  474. break;
  475. case "parameter8":
  476. value = this.porosityConfig.minDiameter;
  477. break;
  478. case "parameter9":
  479. value = this.checkBox1.Checked;
  480. break;
  481. case "parameter10":
  482. value = this.checkBox3.Checked;
  483. break;
  484. case "parameter11":
  485. value = this.checkBox2.Checked;
  486. break;
  487. case "parameter12":
  488. value = this.checkBox4.Checked;
  489. break;
  490. }
  491. this.argsValue = value;
  492. }
  493. protected override void getEveryImgData()
  494. {
  495. if (this.everyImgData.ContainsKey(this.ImgName))
  496. {
  497. PorosityConfig config = this.everyImgData[this.ImgName];
  498. this.comboBox3.SelectedItem = config.stressType;
  499. this.comboBox1.SelectedItem = config.diameterType == 1 ? PdnResources.GetString("Menu.Maximumcaliperdiameter.text") : PdnResources.GetString("Menu.Diameterofequalareacircle.text");
  500. this.checkBox1.Checked = config.diameter;
  501. this.checkBox3.Checked = config.minDistanceA;
  502. this.checkBox2.Checked = config.minDiameterU;
  503. this.checkBox4.Checked = config.surfaceRz;
  504. }
  505. }
  506. protected override void saveEveryImgData()
  507. {
  508. if (this.everyImgData.ContainsKey(this.ImgName))
  509. {
  510. PorosityConfig config = this.everyImgData[this.ImgName];
  511. config.diameterType = this.comboBox1.SelectedItem == null ? 1 : this.comboBox1.SelectedItem.ToString() == PdnResources.GetString("Menu.Maximumcaliperdiameter.text") ? 1 : 2;
  512. config.stressType = this.comboBox3.SelectedItem.ToString();
  513. config.diameter = this.checkBox1.Checked;
  514. config.minDistanceA = this.checkBox3.Checked;
  515. config.minDiameterU = this.checkBox2.Checked;
  516. config.surfaceRz = this.checkBox4.Checked;
  517. this.everyImgData[this.ImgName] = config;
  518. }
  519. else
  520. {
  521. PorosityConfig config = new PorosityConfig();
  522. config.diameterType = this.comboBox1.SelectedItem == null ? 1 : this.comboBox1.SelectedItem.ToString() == PdnResources.GetString("Menu.Maximumcaliperdiameter.text") ? 1 : 2;
  523. config.stressType = this.comboBox3.SelectedItem.ToString();
  524. config.diameter = this.checkBox1.Checked;
  525. config.minDistanceA = this.checkBox3.Checked;
  526. config.minDiameterU = this.checkBox2.Checked;
  527. config.surfaceRz = this.checkBox4.Checked;
  528. this.everyImgData.Add(this.ImgName, config);
  529. }
  530. }
  531. protected override void save_normal_data()
  532. {
  533. this.porosityConfig.diameterType = this.comboBox1.SelectedItem == null ? 1 : this.comboBox1.SelectedItem.ToString() == PdnResources.GetString("Menu.Maximumcaliperdiameter.text") ? 1 : 2;
  534. this.porosityConfig.stressType = this.comboBox3.SelectedItem.ToString();
  535. this.porosityConfig.diameter = this.checkBox1.Checked;
  536. this.porosityConfig.minDistanceA = this.checkBox3.Checked;
  537. this.porosityConfig.minDiameterU = this.checkBox2.Checked;
  538. this.porosityConfig.surfaceRz = this.checkBox4.Checked;
  539. string porosityInfoXml = XmlSerializeHelper.XmlSerialize<PorosityConfig>(this.porosityConfig);
  540. FileOperationHelper.WriteStringToFile(porosityInfoXml, Application.StartupPath + "\\PorosityConfig\\6093Config.xml", FileMode.Create);
  541. }
  542. /// <summary>
  543. /// 列表赋值
  544. /// </summary>
  545. protected override void list_add_data()
  546. {
  547. if (this.tempAnalysisResult == null)
  548. {
  549. return;
  550. }
  551. dataGridView1.Rows.Clear();
  552. var dataList = this.tempAnalysisResult.resultBody;
  553. int num = 2;
  554. if (this.domainUpDown_resultPrecision.SelectedIndex != -1)
  555. {
  556. num = Convert.ToInt32(this.domainUpDown_resultPrecision.Items[this.domainUpDown_resultPrecision.SelectedIndex]);
  557. }
  558. foreach (var item in dataList)
  559. {
  560. dataGridView1.Rows.Add(item.Key.name, Convert.ToDouble(Math.Round(Convert.ToDecimal(item.Value[0]), 2)), Convert.ToDouble(Math.Round(Convert.ToDecimal(item.Value[1]), num)), Convert.ToDouble(Math.Round(Convert.ToDecimal(item.Value[2]), num)), Convert.ToDouble(Math.Round(Convert.ToDecimal(item.Value[3]), num)), Convert.ToDouble(Math.Round(Convert.ToDecimal(item.Value[4]), num)), Convert.ToDouble(Math.Round(Convert.ToDecimal(item.Value[5]), num)), Convert.ToDouble(Math.Round(Convert.ToDecimal(item.Value[6]), num)), item.Value[7]);
  561. if (this.porosityConfig.maxPorosityPercent <= Convert.ToDouble(Math.Round(Convert.ToDecimal(item.Value[2]), num)))
  562. {
  563. dataGridView1[3, dataGridView1.Rows.Count - 1].Style.Font = new Font(DataGridView.DefaultFont, FontStyle.Bold);
  564. }
  565. else
  566. {
  567. dataGridView1[3, dataGridView1.Rows.Count - 1].Style.Font = DataGridView.DefaultFont;
  568. }
  569. if (this.porosityConfig.stressType == "F")
  570. {
  571. if (this.porosityConfig.maxPorosityNum <= Convert.ToDouble(Math.Round(Convert.ToDecimal(item.Value[3]), num)))
  572. {
  573. dataGridView1[4, dataGridView1.Rows.Count - 1].Style.Font = new Font(DataGridView.DefaultFont, FontStyle.Bold);
  574. }
  575. else
  576. {
  577. dataGridView1[4, dataGridView1.Rows.Count - 1].Style.Font = DataGridView.DefaultFont;
  578. }
  579. }
  580. else
  581. {
  582. dataGridView1[4, dataGridView1.Rows.Count - 1].Style.Font = DataGridView.DefaultFont;
  583. }
  584. if (this.porosityConfig.maxDiameter <= Convert.ToDouble(Math.Round(Convert.ToDecimal(item.Value[5]), num)))
  585. {
  586. dataGridView1[6, dataGridView1.Rows.Count - 1].Style.Font = new Font(DataGridView.DefaultFont, FontStyle.Bold);
  587. }
  588. else
  589. {
  590. dataGridView1[6, dataGridView1.Rows.Count - 1].Style.Font = DataGridView.DefaultFont;
  591. }
  592. }
  593. for (int i = 0; i < this.dataGridView1.Rows.Count; i++)
  594. {
  595. try
  596. {
  597. int thisNum = Convert.ToInt32(this.dataGridView1[0, i].Value.ToString().Replace("view", ""));
  598. dataGridView1.Rows[i].DefaultCellStyle.BackColor = this.documentItems[this.lstView_img.FocusedItem.Index].drawGraphicsList[thisNum - 1].Color;
  599. }
  600. catch (Exception ex)
  601. {
  602. }
  603. }
  604. this.dataGridView1.ClearSelection();
  605. }
  606. private void checkBox1_CheckedChanged(object sender, EventArgs e)
  607. {
  608. this.porosityConfig.diameter = this.checkBox1.Checked;
  609. string porosityInfoXml = XmlSerializeHelper.XmlSerialize<PorosityConfig>(this.porosityConfig);
  610. FileOperationHelper.WriteStringToFile(porosityInfoXml, Application.StartupPath + "\\PorosityConfig\\6093Config.xml", FileMode.Create);
  611. clearAllView();
  612. if (this.bcBinaryChecked())
  613. {
  614. recalculate();
  615. list_add_data();
  616. }
  617. }
  618. private void checkBox3_CheckedChanged(object sender, EventArgs e)
  619. {
  620. this.porosityConfig.minDiameterU = this.checkBox3.Checked;
  621. string porosityInfoXml = XmlSerializeHelper.XmlSerialize<PorosityConfig>(this.porosityConfig);
  622. FileOperationHelper.WriteStringToFile(porosityInfoXml, Application.StartupPath + "\\PorosityConfig\\6093Config.xml", FileMode.Create);
  623. clearAllView();
  624. if (this.bcBinaryChecked())
  625. {
  626. recalculate();
  627. list_add_data();
  628. }
  629. }
  630. private void checkBox2_CheckedChanged(object sender, EventArgs e)
  631. {
  632. this.porosityConfig.minDistanceA = this.checkBox2.Checked;
  633. string porosityInfoXml = XmlSerializeHelper.XmlSerialize<PorosityConfig>(this.porosityConfig);
  634. FileOperationHelper.WriteStringToFile(porosityInfoXml, Application.StartupPath + "\\PorosityConfig\\6093Config.xml", FileMode.Create);
  635. clearAllView();
  636. if (this.bcBinaryChecked())
  637. {
  638. recalculate();
  639. list_add_data();
  640. }
  641. }
  642. private void checkBox4_CheckedChanged(object sender, EventArgs e)
  643. {
  644. this.porosityConfig.surfaceRz = this.checkBox4.Checked;
  645. string porosityInfoXml = XmlSerializeHelper.XmlSerialize<PorosityConfig>(this.porosityConfig);
  646. FileOperationHelper.WriteStringToFile(porosityInfoXml, Application.StartupPath + "\\PorosityConfig\\6093Config.xml", FileMode.Create);
  647. clearAllView();
  648. if (this.bcBinaryChecked())
  649. {
  650. recalculate();
  651. list_add_data();
  652. }
  653. }
  654. protected override void clearAllView()
  655. {
  656. dataGridView1.Rows.Clear();
  657. }
  658. protected override void clearOneView()
  659. {
  660. if (dataGridView1.Rows.Count > 0)
  661. {
  662. dataGridView1.Rows.RemoveAt(this.delIndex);
  663. }
  664. }
  665. protected override void changeOneViewColor()
  666. {
  667. if (dataGridView1.Rows.Count > 0)
  668. {
  669. dataGridView1.Rows[this.delIndex].DefaultCellStyle.BackColor = this.documentItems[this.lstView_img.FocusedItem.Index].drawGraphicsList[this.delIndex].Color;
  670. }
  671. }
  672. #endregion 需继承方法
  673. private void comboBox3_SelectedIndexChanged(object sender, EventArgs e)
  674. {
  675. this.porosityConfig.stressType = this.comboBox3.SelectedItem.ToString();
  676. string porosityInfoXml = XmlSerializeHelper.XmlSerialize<PorosityConfig>(this.porosityConfig);
  677. FileOperationHelper.WriteStringToFile(porosityInfoXml, Application.StartupPath + "\\PorosityConfig\\6093Config.xml", FileMode.Create);
  678. clearAllView();
  679. recalculate();
  680. list_add_data();
  681. }
  682. private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
  683. {
  684. this.porosityConfig.diameterType = this.comboBox1.SelectedItem.ToString() == PdnResources.GetString("Menu.Maximumcaliperdiameter.text") ? 1 : 2;
  685. string porosityInfoXml = XmlSerializeHelper.XmlSerialize<PorosityConfig>(this.porosityConfig);
  686. FileOperationHelper.WriteStringToFile(porosityInfoXml, Application.StartupPath + "\\PorosityConfig\\6093Config.xml", FileMode.Create);
  687. clearAllView();
  688. recalculate();
  689. list_add_data();
  690. }
  691. public void getChange(PorosityConfig porosityConfig)
  692. {
  693. this.porosityConfig = porosityConfig;
  694. clearAllView();
  695. recalculate();
  696. list_add_data();
  697. }
  698. }
  699. }