|
@@ -236,7 +236,7 @@ namespace OTSMeasureApp
|
|
|
DeleteHoleBSEImageDataNoMessageBox();
|
|
|
|
|
|
DrawMeasureField(GetWorkingVisualSample());
|
|
|
-
|
|
|
+ GetSEMData();
|
|
|
GetBSEPictures();
|
|
|
break;
|
|
|
case "DeleteBSEPicture":
|
|
@@ -797,16 +797,13 @@ namespace OTSMeasureApp
|
|
|
|
|
|
|
|
|
}
|
|
|
- private List<CRectangleGDIObject> GetAllVisualSampleAndMeasureGDIObject()
|
|
|
+ private List<CRectangleGDIObject> GetOnlyVisualSampleGDIObject()
|
|
|
{
|
|
|
List<CRectangleGDIObject> allobj = new List<CRectangleGDIObject>();
|
|
|
foreach (var s in m_visualSamples)
|
|
|
{
|
|
|
allobj.Add(s.GetSampleGDIObject());
|
|
|
- allobj.Add(s.GetMeasureGDIObject());
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|
|
@@ -819,7 +816,7 @@ namespace OTSMeasureApp
|
|
|
List<CRectangleGDIObject> allobj = new List<CRectangleGDIObject>();
|
|
|
foreach (var s in m_visualSamples)
|
|
|
{
|
|
|
-
|
|
|
+ allobj.Add(s.GetMeasureGDIObject());
|
|
|
foreach (var f in s.GetMeasureFieldGDIObjects())
|
|
|
{
|
|
|
allobj.Add(f);
|
|
@@ -980,13 +977,11 @@ namespace OTSMeasureApp
|
|
|
var m_PolygonPoint = m_DrawMeasureGDIObject.GetPolygonPointFList();
|
|
|
|
|
|
m_PolygonPoint.Add(m_MouseDownPoint);
|
|
|
-
|
|
|
|
|
|
-
|
|
|
- //显示绘制多边形完成标识
|
|
|
+
|
|
|
if (m_PolygonPoint.Count == 3)//three point can make a circle .
|
|
|
{
|
|
|
- //转为圆形这里
|
|
|
+
|
|
|
m_DrawMeasureType = (int)CreateRectangleType.Circle;
|
|
|
float r = 0;
|
|
|
PointF Centerpoint ;
|
|
@@ -994,7 +989,7 @@ namespace OTSMeasureApp
|
|
|
|
|
|
RectangleF rectangleThree = new RectangleF(new PointF(Centerpoint.X - r, Centerpoint.Y - r), new SizeF(r * 2, r * 2));
|
|
|
|
|
|
- //在样品台内部缩放
|
|
|
+
|
|
|
if (m_visualStage.CheckMeasureAreaIsBeyondStageArea(rectangleThree))
|
|
|
{
|
|
|
m_IsDrawMeasure = true;
|
|
@@ -1006,7 +1001,7 @@ namespace OTSMeasureApp
|
|
|
}
|
|
|
Color MeasureColor = Color.Red;
|
|
|
CRectangleGDIObject CRectangleGDI =new CRectangleGDIObject (rectangleThree, CreateRectangleType.CircleByThreePoints, (ShapeType)m_DrawMeasureType, sampleName, sampleName, MeasureColor);
|
|
|
- //在鼠标点击时添加一个默认大小与位置的图形
|
|
|
+
|
|
|
|
|
|
m_DrawMeasureGDIObject=CRectangleGDI;
|
|
|
m_DrawMeasureGDIObject.SetZoomNumber(m_visualStage.GetZoomNum());
|
|
@@ -1024,7 +1019,6 @@ namespace OTSMeasureApp
|
|
|
m_MeasureAppForm.m_RunType = MSR_THREAD_RunSTATUS.RUNMEASURE;
|
|
|
CMeasureThreadWrapper.DoRunType = MSR_THREAD_RunSTATUS.RUNMEASURE;
|
|
|
|
|
|
- // 设置工作样品
|
|
|
m_MeasureAppForm.SwitchWSample(m_SampleSelectName);
|
|
|
Invalidate();
|
|
|
|
|
@@ -1377,7 +1371,7 @@ namespace OTSMeasureApp
|
|
|
var sam1 = m_visualSamples[i];
|
|
|
|
|
|
|
|
|
- if (sam1.GetSampleGDIObject().IfZoomContains(e.Location))
|
|
|
+ if (sam1.GetSampleGDIObject().IfZoomContains(e.Location)|| sam1.GetMeasureGDIObject().IfZoomContains(e.Location))
|
|
|
{
|
|
|
NLog.LogManager.GetCurrentClassLogger().Info(sam1.GetMeasureGDIObject().GetOrigionalDrawRegionF().ToString());
|
|
|
var measureItem = sam1.GetMeasureGDIObject();
|
|
@@ -1871,7 +1865,7 @@ namespace OTSMeasureApp
|
|
|
|
|
|
|
|
|
|
|
|
- OnPaint(e, GetAllVisualSampleAndMeasureGDIObject());
|
|
|
+ OnPaint(e, GetOnlyVisualSampleGDIObject());
|
|
|
|
|
|
if (IsShowSampleHoleImage)
|
|
|
{
|
|
@@ -2313,13 +2307,13 @@ namespace OTSMeasureApp
|
|
|
{
|
|
|
|
|
|
m_DrawPolygonFinishGDIObject = new CRectangleGDIObject();
|
|
|
- var ps = new List<PointF>();
|
|
|
- foreach (var p in SMeasrueAreaList[i].DrawPolygonPointList)
|
|
|
- {
|
|
|
- var ctrlcoordPoint = m_visualStage.OTSCoordToCtrlCoord(p);
|
|
|
- ps.Add(ctrlcoordPoint);
|
|
|
+ var ps = new List<PointF>();
|
|
|
+ foreach (var p in SMeasrueAreaList[i].DrawPolygonPointList)
|
|
|
+ {
|
|
|
+ var ctrlcoordPoint = m_visualStage.OTSCoordToCtrlCoord(p);
|
|
|
+ ps.Add(ctrlcoordPoint);
|
|
|
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
CRectangleGDIObject createFinishPoint =new CRectangleGDIObject (ps, CreateRectangleType.Polygon, (ShapeType)SMeasrueAreaList[i].iShape, SMeasrueAreaList[i].sampleHoleName, SMeasrueAreaList[i].sSampleName, Color.Red);
|
|
|
|
|
@@ -2413,8 +2407,7 @@ namespace OTSMeasureApp
|
|
|
var sample = m_ResultData.GetSampleByName(sam.GetSampleName());
|
|
|
if (GetFieldData(sample,out listCenterPoint, out rectSize))
|
|
|
{
|
|
|
- //将所有中心点 转换为矩形
|
|
|
-
|
|
|
+
|
|
|
foreach (Point item in listCenterPoint)
|
|
|
{
|
|
|
//convert the center point to leftTop point of rectangle.
|