Browse Source

报告程序谱图上增加元素L峰标识

zhangjiaxin 3 years ago
parent
commit
594163abc7

+ 10 - 0
OTSIncAReportApp/1-UI/Control_Graph/Controls/Control_DrawDistrbutionImageAndBSE.cs

@@ -1313,6 +1313,16 @@ namespace OTSIncAReportGraph.Controls
                 ls_sei.ElementName = list_celementchemistryclr[i].Name;
                 ls_sei.Percentage = list_celementchemistryclr[i].Percentage;
                 ls_sei.dKF = Convert.ToDouble(CListPeriodic.GetPeriodicByYsm(CListPeriodic.GetListPeriodic(), ls_sei.ElementName).SX1);
+                double de_sx2 = 0;
+                if (CListPeriodic.GetPeriodicByYsm(CListPeriodic.GetListPeriodic(), ls_sei.ElementName).SX2 == "" || CListPeriodic.GetPeriodicByYsm(CListPeriodic.GetListPeriodic(), ls_sei.ElementName).SX2 == "-")
+                {
+                    de_sx2 = 0;
+                }
+                else
+                {
+                    de_sx2 = Convert.ToDouble(CListPeriodic.GetPeriodicByYsm(CListPeriodic.GetListPeriodic(), ls_sei.ElementName).SX2);
+                }
+                ls_sei.dLF = de_sx2;
                 list_showelementinfo.Add(ls_sei);
             }
 

+ 17 - 1
OTSIncAReportApp/1-UI/Control_Graph/Controls/Control_XRayTable.cs

@@ -394,7 +394,7 @@ namespace OTSIncAReportGraph.Controls
                 KMLFPoint ls_lkmfpoint = new KMLFPoint();
                 ls_lkmfpoint.ysm = in_list_showelementinfo[i].ElementName;
                 ls_lkmfpoint.kml_x = (float)in_list_showelementinfo[i].dKF;
-
+                ls_lkmfpoint.lml_x = (float)in_list_showelementinfo[i].dLF;
                 //将该峰值保存到峰值上
                 m_list_kmlfpoint.Add(ls_lkmfpoint);
             }
@@ -537,6 +537,20 @@ namespace OTSIncAReportGraph.Controls
                         m_thisfont_bold,
                         m_this_sb,
                         new PointF(f_js_width * (m_list_kmlfpoint[i].kml_x * (m_i_draw_end / 20) - out_testsizef.Width / 2), m_f_rulerX_location / 3 - 20 + i_py));
+
+                    if (m_list_kmlfpoint[i].lml_x != 0)
+                    {
+                        //绘制竖线
+                        g.DrawLine(new Pen(Color.Wheat, 0.5f), f_js_width * (m_list_kmlfpoint[i].lml_x * (m_i_draw_end / 20)), m_f_rulerX_location / 3 + i_py, f_js_width * (m_list_kmlfpoint[i].lml_x * (m_i_draw_end / 20)), m_f_rulerX_location - 3);
+                        //输出文字,并将字输出到线的上面
+                        SizeF out_testsizef2 = g.MeasureString(m_list_kmlfpoint[i].ysm, m_thisfont);
+                        PointF ut_test_pointF2 = new PointF(m_mouse_point.X - (out_testsizef.Width / 2), 2);
+                        g.FillRectangle(Brushes.Goldenrod, new RectangleF(new PointF(f_js_width * (m_list_kmlfpoint[i].lml_x * (m_i_draw_end / 20) - out_testsizef.Width / 2), m_f_rulerX_location / 3 - 20 + i_py), out_testsizef));
+                        g.DrawString(m_list_kmlfpoint[i].ysm,
+                            m_thisfont_bold,
+                            m_this_sb,
+                            new PointF(f_js_width * (m_list_kmlfpoint[i].lml_x * (m_i_draw_end / 20) - out_testsizef.Width / 2), m_f_rulerX_location / 3 - 20 + i_py));
+                    }
                 }
             }
             #endregion 
@@ -690,6 +704,7 @@ namespace OTSIncAReportGraph.Controls
     public class KMLFPoint
     {
         public float kml_x;
+        public float lml_x;
         public string ysm;
     }
 
@@ -702,6 +717,7 @@ namespace OTSIncAReportGraph.Controls
         public string ElementName;
         public double Percentage;//实际能谱返回的质量百分比
         public double dKF;//K峰,元素周期表中固定值
+        public double dLF;//L峰
         public double percentageIn100;//归一化后的百分比
     }
     #endregion