|
@@ -23,6 +23,8 @@ using DBManager;
|
|
using Extender;
|
|
using Extender;
|
|
using CookComputing.XmlRpc;
|
|
using CookComputing.XmlRpc;
|
|
|
|
|
|
|
|
+using HOZProject.Helpers;
|
|
|
|
+
|
|
namespace MeasureThread
|
|
namespace MeasureThread
|
|
{
|
|
{
|
|
#region 信息定义
|
|
#region 信息定义
|
|
@@ -2612,12 +2614,12 @@ namespace MeasureThread
|
|
{
|
|
{
|
|
//add by sun 2020-12-17 不同样品电压、电流不一致,应设置灵活。123456类电压2000V电流200pA,7类5000V 500pA,能谱 7000V 500pA
|
|
//add by sun 2020-12-17 不同样品电压、电流不一致,应设置灵活。123456类电压2000V电流200pA,7类5000V 500pA,能谱 7000V 500pA
|
|
LogManager.AddHardwareLog("测量线程:第一孔=====设置拍照电压 123456类电压2000V电流200pA,7类5000V 500pA,能谱 7000V 500pA 目前是第 " + m_measureFile.MParam.SampleName + " 类!", true);
|
|
LogManager.AddHardwareLog("测量线程:第一孔=====设置拍照电压 123456类电压2000V电流200pA,7类5000V 500pA,能谱 7000V 500pA 目前是第 " + m_measureFile.MParam.SampleName + " 类!", true);
|
|
- if (!SetVoltageAndIPROBE())
|
|
|
|
- {
|
|
|
|
- LogManager.AddHardwareLog("测量线程:第一孔=====设置电压电流失败!目前是第 " + m_measureFile.MParam.SampleName + " 类!", true);
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
- //add by sun 2020-12-17 不同样品电压、电流不一致,应设置灵活。123456类电压2000V电流200pA,7类5000V 500pA,能谱 7000V 500pA end
|
|
|
|
|
|
+ if (!SetVoltageAndIPROBE())
|
|
|
|
+ {
|
|
|
|
+ LogManager.AddHardwareLog("测量线程:第一孔=====设置电压电流失败!目前是第 " + m_measureFile.MParam.SampleName + " 类!", true);
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
|
|
+ //add by sun 2020-12-17 不同样品电压、电流不一致,应设置灵活。123456类电压2000V电流200pA,7类5000V 500pA,能谱 7000V 500pA end
|
|
|
|
|
|
//设置拉直的放大倍数
|
|
//设置拉直的放大倍数
|
|
LogManager.AddHardwareLog("测量线程:第一个孔的测试过程-设置SEM放大倍数为拉直放大倍数,放大倍数为" + m_measureFile.MParam.Stretch_Magnification.ToString(), true);
|
|
LogManager.AddHardwareLog("测量线程:第一个孔的测试过程-设置SEM放大倍数为拉直放大倍数,放大倍数为" + m_measureFile.MParam.Stretch_Magnification.ToString(), true);
|
|
@@ -5726,6 +5728,7 @@ namespace MeasureThread
|
|
MeasureDB m_MeasDB = null;
|
|
MeasureDB m_MeasDB = null;
|
|
int m_nXrayId = 0;
|
|
int m_nXrayId = 0;
|
|
const String ImageNameEDS = @"EDSImage.tif"; //EDS能谱图片
|
|
const String ImageNameEDS = @"EDSImage.tif"; //EDS能谱图片
|
|
|
|
+ const String ImageNameEDS3 = @"EDSImageTag.tif"; //EDS能谱图片
|
|
const String ImageNameEDS4 = @"SEMTrapCPEDS.tif";//传给客户,找到已经切割点
|
|
const String ImageNameEDS4 = @"SEMTrapCPEDS.tif";//传给客户,找到已经切割点
|
|
const String ImageNameEDS5 = @"SEMDegreeTrapEDS.tif";//传给客户,水平校正
|
|
const String ImageNameEDS5 = @"SEMDegreeTrapEDS.tif";//传给客户,水平校正
|
|
const String ImageNameEDS6 = @"SEMMagEndEDS.tif";//传给客户,测量层高
|
|
const String ImageNameEDS6 = @"SEMMagEndEDS.tif";//传给客户,测量层高
|
|
@@ -5774,6 +5777,17 @@ namespace MeasureThread
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ //20201223在图像上增加标注
|
|
|
|
+ List<DrawAnalysePoint> darwAPList = new List<DrawAnalysePoint>();
|
|
|
|
+ for (int i = 0; i < listPoints.Count; i++)
|
|
|
|
+ {
|
|
|
|
+ DrawAnalysePoint p = new DrawAnalysePoint();
|
|
|
|
+ p.Title = "谱图" + i.ToString();
|
|
|
|
+ p.Point = listPoints[i];
|
|
|
|
+ p.DrawType = DrawType.Point;
|
|
|
|
+ darwAPList.Add(p);
|
|
|
|
+ }
|
|
|
|
+
|
|
//线数据
|
|
//线数据
|
|
LogManager.AddHardwareLog("线扫描", true);
|
|
LogManager.AddHardwareLog("线扫描", true);
|
|
state = 0;
|
|
state = 0;
|
|
@@ -5786,15 +5800,31 @@ namespace MeasureThread
|
|
List<Segment> segments = new List<Segment>();
|
|
List<Segment> segments = new List<Segment>();
|
|
for (int i = 0; i < listlines.Count; i++)
|
|
for (int i = 0; i < listlines.Count; i++)
|
|
{
|
|
{
|
|
|
|
+ List<System.Drawing.Point> linepoint = new List<System.Drawing.Point>();
|
|
for (int j = 0; j <= lines_height[i]; j++)
|
|
for (int j = 0; j <= lines_height[i]; j++)
|
|
{
|
|
{
|
|
|
|
+ System.Drawing.Point p = new System.Drawing.Point();
|
|
|
|
+
|
|
Segment segment = new Segment();
|
|
Segment segment = new Segment();
|
|
segment.X = listlines[0].X;
|
|
segment.X = listlines[0].X;
|
|
segment.Y = listlines[0].Y + j;
|
|
segment.Y = listlines[0].Y + j;
|
|
segment.Length = 1;
|
|
segment.Length = 1;
|
|
segments.Add(segment);
|
|
segments.Add(segment);
|
|
|
|
+
|
|
|
|
+ p.X = segment.X;
|
|
|
|
+ p.Y = segment.Y;
|
|
|
|
+ linepoint.Add(p);
|
|
}
|
|
}
|
|
listFeature.Add(segments);
|
|
listFeature.Add(segments);
|
|
|
|
+
|
|
|
|
+ //20201223在图像上增加标注
|
|
|
|
+
|
|
|
|
+ DrawAnalysePoint l = new DrawAnalysePoint();
|
|
|
|
+ l.Title = "谱图" + (i+ listPoints.Count).ToString();
|
|
|
|
+ l.LinePoints = linepoint;
|
|
|
|
+ l.DrawType = DrawType.Line;
|
|
|
|
+ darwAPList.Add(l);
|
|
|
|
+
|
|
}
|
|
}
|
|
LogManager.AddHardwareLog("将线转换为segment数据完成", true);
|
|
LogManager.AddHardwareLog("将线转换为segment数据完成", true);
|
|
}
|
|
}
|
|
@@ -5823,6 +5853,19 @@ namespace MeasureThread
|
|
}
|
|
}
|
|
listFeature.Add(segments);
|
|
listFeature.Add(segments);
|
|
LogManager.AddHardwareLog("将面转换为segment数据完成", true);
|
|
LogManager.AddHardwareLog("将面转换为segment数据完成", true);
|
|
|
|
+
|
|
|
|
+ //20201223在图像上增加标注
|
|
|
|
+
|
|
|
|
+ DrawAnalysePoint a = new DrawAnalysePoint();
|
|
|
|
+ System.Drawing.Size asz = new System.Drawing.Size();
|
|
|
|
+ asz.Width = width;
|
|
|
|
+ asz.Height = height;
|
|
|
|
+ a.Point = area_pt;
|
|
|
|
+ a.Title = "谱图" + (1+listPoints.Count + listPoints.Count).ToString();
|
|
|
|
+ a.RectSize = asz;
|
|
|
|
+ a.DrawType = DrawType.Rectangle;
|
|
|
|
+
|
|
|
|
+ darwAPList.Add(a);
|
|
}
|
|
}
|
|
else
|
|
else
|
|
{
|
|
{
|
|
@@ -5882,6 +5925,12 @@ namespace MeasureThread
|
|
m_MeasDB.InsertAAreaXay(a_PointNum, m_nXrayId, AreasNo, listSeg, XrayData, listElement, num);
|
|
m_MeasDB.InsertAAreaXay(a_PointNum, m_nXrayId, AreasNo, listSeg, XrayData, listElement, num);
|
|
LogManager.AddHardwareLog("面采集写入数据库结束", true);
|
|
LogManager.AddHardwareLog("面采集写入数据库结束", true);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ //20201223,生成图片
|
|
|
|
+ string edstag = path + "\\" + num.ToString() + "_" + ImageNameEDS3;
|
|
|
|
+ NewFunMethod fun = new NewFunMethod();
|
|
|
|
+ fun.GetBseAnalyticalSite(edsfn, darwAPList,edstag);
|
|
|
|
+
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
catch (Exception e)
|
|
{
|
|
{
|