BaseFunctionTest.cs 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. using OTSCLRINTERFACE;
  2. using OTSModelSharp.ServiceCenter;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.ComponentModel;
  6. using System.Data;
  7. using System.Drawing;
  8. using System.Linq;
  9. using System.Text;
  10. using System.Threading.Tasks;
  11. using System.Windows.Forms;
  12. namespace OTSMeasureApp
  13. {
  14. public partial class BaseFunctionTest : Form
  15. {
  16. public BaseFunctionTest()
  17. {
  18. InitializeComponent();
  19. }
  20. private void button1_Click(object sender, EventArgs e)
  21. {
  22. label1.Text = "";
  23. COTSClassifyEngineClr engine = new COTSClassifyEngineClr(EngineType.InclutionEng, "NoSTDDB");
  24. COTSParticleClr part = new COTSParticleClr();
  25. List<CElementChemistryClr> eles = new List<CElementChemistryClr>();
  26. eles.Add(GetEleChem("Mn", 22.5));
  27. eles.Add(GetEleChem("S", 11.01));
  28. eles.Add(GetEleChem("O", 10.13));
  29. eles.Add(GetEleChem("C", 5.51));
  30. eles.Add(GetEleChem("Si", 4.06));
  31. eles.Add(GetEleChem("Al", 2.34));
  32. var xray = part.GetXray();
  33. xray.SetElementQuantifyData(eles);
  34. part.SetXray(xray);
  35. engine.ClassifyIncA(part, 1);
  36. label1.Text = part.GetTypeName();
  37. }
  38. private CElementChemistryClr GetEleChem(string name, double percent)
  39. {
  40. CElementChemistryClr ele = new CElementChemistryClr();
  41. ele.SetName(name);
  42. ele.SetPercentage(percent);
  43. return ele;
  44. }
  45. private void button2_Click(object sender, EventArgs e)
  46. {
  47. label2.Text = "";
  48. COTSClassifyEngineClr engine = new COTSClassifyEngineClr(EngineType.InclutionEng, "NoSTDDB");
  49. COTSParticleClr part = new COTSParticleClr();
  50. List<CElementChemistryClr> eles = new List<CElementChemistryClr>();
  51. eles.Add(GetEleChem("Mn", 15.92));
  52. eles.Add(GetEleChem("S", 10.73));
  53. eles.Add(GetEleChem("C", 13.26));
  54. eles.Add(GetEleChem("Ti", 40.06));
  55. eles.Add(GetEleChem("N", 20.03));
  56. var xray = part.GetXray();
  57. xray.SetElementQuantifyData(eles);
  58. part.SetXray(xray);
  59. engine.ClassifyIncA(part, 1);
  60. label2.Text = part.GetTypeName();
  61. }
  62. private void button3_Click(object sender, EventArgs e)
  63. {
  64. COTSClassifyEngineClr engine = new COTSClassifyEngineClr(EngineType.SpectrumCompare, "globalmining.db");
  65. COTSParticleClr part = new COTSParticleClr();
  66. List<CElementChemistryClr> eles = new List<CElementChemistryClr>();
  67. part.SetXRayPos(new Point(20, 20));
  68. var eds = EDSController.GetEDSController(1024,768,5000);
  69. List<COTSParticleClr> parts = new List<COTSParticleClr>();
  70. parts.Add(part);
  71. uint[] xrayData=new uint[2000];
  72. eds.CollectSpectrum(10,ref xrayData);
  73. //eds.GetXRayByPoints(parts, 10, false);
  74. var xray = new CPosXrayClr();
  75. xray.SetXrayData(xrayData);
  76. part.SetXray(xray);
  77. label3.Text = "";
  78. engine.ClassifyBySpectrum(part);
  79. label3.Text = part.GetTypeName()+" Id:"+ part.GetClassifyId().ToString();
  80. }
  81. }
  82. }