|
@@ -255,7 +255,7 @@ namespace OTSMeasureApp
|
|
|
m_MeasureAppForm.m_RunType = MSR_THREAD_RunSTATUS.RUNMEASURE;
|
|
|
//设定SEM数据
|
|
|
CMeasureThreadWrapper.DoRunType = MSR_THREAD_RunSTATUS.RUNMEASURE;
|
|
|
- GetSEMData();
|
|
|
+
|
|
|
PrepareMeasureField(GetWorkingVisualSample());
|
|
|
|
|
|
break;
|
|
@@ -275,11 +275,12 @@ namespace OTSMeasureApp
|
|
|
case "ShootBSEPicture":
|
|
|
//设置消息类型 拍摄样品孔
|
|
|
m_MeasureAppForm.m_RunType = MSR_THREAD_RunSTATUS.RUNSampleHoleImage;
|
|
|
+ CMeasureThreadWrapper.DoRunType = MSR_THREAD_RunSTATUS.RUNSampleHoleImage;
|
|
|
//清除原图片信息
|
|
|
DeleteHoleBSEImageDataNoMessageBox();
|
|
|
|
|
|
PrepareMeasureField(GetWorkingVisualSample());
|
|
|
- GetSEMData();
|
|
|
+
|
|
|
GetBSEPictures();
|
|
|
break;
|
|
|
case "DeleteBSEPicture":
|
|
@@ -1078,15 +1079,15 @@ namespace OTSMeasureApp
|
|
|
|
|
|
var para = m_visualStage.GetSampleMeasurePara(sam.GetMeasureGDIObject());
|
|
|
|
|
|
- m_MeasureAppForm.m_ProjParam.SetWorkSampleHoleAndMeasureArea(para);
|
|
|
-
|
|
|
-
|
|
|
- m_MeasureAppForm.m_RunType = MSR_THREAD_RunSTATUS.RUNMEASURE;
|
|
|
- CMeasureThreadWrapper.DoRunType = MSR_THREAD_RunSTATUS.RUNMEASURE;
|
|
|
+ m_MeasureAppForm.m_ProjParam.SetWorkSampleHoleAndMeasureArea(para);
|
|
|
|
|
|
m_MeasureAppForm.SwitchWSample(m_SampleSelectName);
|
|
|
|
|
|
+ //--------------------read sem data draw measrue field and save these data to sample
|
|
|
+ m_MeasureAppForm.m_RunType = MSR_THREAD_RunSTATUS.RUNMEASURE;
|
|
|
+ CMeasureThreadWrapper.DoRunType = MSR_THREAD_RunSTATUS.RUNMEASURE;
|
|
|
PrepareMeasureField(sam);
|
|
|
+ //--------------------
|
|
|
|
|
|
Invalidate();
|
|
|
|
|
@@ -1731,6 +1732,7 @@ namespace OTSMeasureApp
|
|
|
{
|
|
|
|
|
|
var sam = GetWorkingVisualSample();
|
|
|
+
|
|
|
var curMeasureGdi = sam.GetMeasureGDIObject();
|
|
|
|
|
|
|
|
@@ -2609,7 +2611,7 @@ namespace OTSMeasureApp
|
|
|
}
|
|
|
pFields = pFieldMgr.GetFieldCentrePoints();
|
|
|
|
|
|
- int iFieldCount = pFieldMgr.GetTotalFields();
|
|
|
+
|
|
|
|
|
|
var oValue = new Rectangle();
|
|
|
if (!pFieldMgr.GetFieldRectByIndex(0, ref oValue))
|
|
@@ -2617,10 +2619,9 @@ namespace OTSMeasureApp
|
|
|
return false;
|
|
|
}
|
|
|
iSzie = oValue.Size;
|
|
|
-
|
|
|
- WSample.GetSEMDataMsr().SetTotalFields(iFieldCount);
|
|
|
+
|
|
|
|
|
|
- return true;
|
|
|
+ return true;
|
|
|
}
|
|
|
#endregion
|
|
|
public void PrepareMeasureField(CVisualSampleArea sam)
|
|
@@ -2628,7 +2629,9 @@ namespace OTSMeasureApp
|
|
|
|
|
|
try
|
|
|
{
|
|
|
-
|
|
|
+
|
|
|
+ GetSEMData();
|
|
|
+
|
|
|
List<CRectangleGDIObject> visualfieldRects = null;
|
|
|
|
|
|
visualfieldRects = GetOTSFieldVisualRects(sam);//get all the possible field rects through C++ code.
|
|
@@ -2659,11 +2662,12 @@ namespace OTSMeasureApp
|
|
|
}
|
|
|
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
+ SaveFieldPositionInfoToSample(sam);
|
|
|
+ m_MeasureAppForm.UpdatePropertyVal();
|
|
|
}
|
|
|
|
|
|
- SaveFieldPositionInfoToSample(sam);
|
|
|
- m_MeasureAppForm.UpdatePropertyVal();
|
|
|
+
|
|
|
}
|
|
|
catch (Exception ex)
|
|
|
{
|