|
@@ -78,11 +78,11 @@ namespace OTSMeasureApp
|
|
|
|
|
|
double x1 = x;
|
|
|
double y1 = y;
|
|
|
- var picX = x1 / m_iWidth * rectangle.Width + rectangle.X;
|
|
|
+ var picX = x1 / mywin.GetIWidth() * rectangle.Width + rectangle.X;
|
|
|
|
|
|
|
|
|
|
|
|
- var picY = y1 / m_iHeight * rectangle.Height + rectangle.Y;
|
|
|
+ var picY = y1 / mywin.GetIHeight() * rectangle.Height + rectangle.Y;
|
|
|
|
|
|
|
|
|
return new Point((int)picX, (int)picY);
|
|
@@ -94,8 +94,8 @@ namespace OTSMeasureApp
|
|
|
public OTSIncAMeasureAppForm m_MeasureAppForm;
|
|
|
|
|
|
|
|
|
- static int m_iWidth = 0;
|
|
|
- static int m_iHeight = 0;
|
|
|
+ int m_iWidth = 0;
|
|
|
+ int m_iHeight = 0;
|
|
|
|
|
|
public byte[] originalBseData;
|
|
|
|
|
@@ -309,7 +309,7 @@ namespace OTSMeasureApp
|
|
|
}
|
|
|
|
|
|
m_imagetype = ImageType.BSEImage;
|
|
|
- Bitmap bitmap = CImageHandler.ToGrayBitmap(originalBseData, m_iWidth, m_iHeight);
|
|
|
+ Bitmap bitmap = CImageHandler.ToGrayBitmap(originalBseData, GetIWidth(), GetIHeight());
|
|
|
|
|
|
ShowSingleImage(bitmap);
|
|
|
|
|
@@ -335,7 +335,7 @@ namespace OTSMeasureApp
|
|
|
|
|
|
|
|
|
//建立图像数据
|
|
|
- originalBseData = new byte[m_iWidth * m_iHeight];
|
|
|
+ originalBseData = new byte[GetIWidth() * GetIHeight()];
|
|
|
//获取图像数据
|
|
|
DwellTimeLevel nDwellTime = DwellTimeLevel.Low;
|
|
|
try
|
|
@@ -360,7 +360,7 @@ namespace OTSMeasureApp
|
|
|
}
|
|
|
|
|
|
CBSEImgClr img;
|
|
|
- bool rst = GetScanImage(m_iWidth, m_iHeight, nDwellTime, out img);
|
|
|
+ bool rst = GetScanImage(GetIWidth(), GetIHeight(), nDwellTime, out img);
|
|
|
originalBse = img;
|
|
|
originalBseData = img.GetImageDataPtr();
|
|
|
myFld = new COTSField();
|
|
@@ -375,7 +375,7 @@ namespace OTSMeasureApp
|
|
|
private void UpdateImageAndLineScanChart()
|
|
|
{
|
|
|
m_imagetype = ImageType.GrayLevelLineScan;
|
|
|
- Bitmap bitmap = CImageHandler.ToGrayBitmap(originalBseData, m_iWidth, m_iHeight);
|
|
|
+ Bitmap bitmap = CImageHandler.ToGrayBitmap(originalBseData, GetIWidth(), GetIHeight());
|
|
|
ShowSingleImage(bitmap);
|
|
|
|
|
|
|
|
@@ -458,7 +458,7 @@ namespace OTSMeasureApp
|
|
|
myFld = new COTSField(new Point(0, 0), pixelSize);
|
|
|
myFld.SetBSEImage(originalBse);
|
|
|
myFld.Sample = WSample;
|
|
|
- bfResult = imageHandle.GetBSEImage(myFld, imageProcessParam, pixelSize, m_iWidth, m_iHeight, ref removeBGBseData);
|
|
|
+ bfResult = imageHandle.GetBSEImage(myFld, imageProcessParam, pixelSize, GetIWidth(), GetIHeight(), ref removeBGBseData);
|
|
|
|
|
|
|
|
|
//取图不成功就返回
|
|
@@ -467,7 +467,7 @@ namespace OTSMeasureApp
|
|
|
|
|
|
|
|
|
|
|
|
- Bitmap bitmap = CImageHandler.ToGrayBitmap(removeBGBseData, m_iWidth, m_iHeight);
|
|
|
+ Bitmap bitmap = CImageHandler.ToGrayBitmap(removeBGBseData, GetIWidth(), GetIHeight());
|
|
|
ShowDoubleImage((Bitmap)picBox.Image, bitmap);
|
|
|
|
|
|
|
|
@@ -488,14 +488,14 @@ namespace OTSMeasureApp
|
|
|
|
|
|
var imageHandle = new CImageHandler();
|
|
|
|
|
|
- coloredParticleImage = new Bitmap(m_iWidth, m_iHeight);
|
|
|
+ coloredParticleImage = new Bitmap(GetIWidth(), GetIHeight());
|
|
|
|
|
|
myFld = new COTSField(new Point(0, 0), pixelSize);
|
|
|
myFld.SetBSEImage(originalBse);
|
|
|
myFld.Sample = WSample;
|
|
|
|
|
|
- CBSEImgClr pImgNoBG = new CBSEImgClr(new Rectangle(0, 0, m_iWidth, m_iHeight));
|
|
|
- bfResult = imageHandle.GetColoredImage(myFld, imageProcessParam, pixelSize, m_iWidth, m_iHeight, ref pImgNoBG, ref coloredParticleImage);
|
|
|
+ CBSEImgClr pImgNoBG = new CBSEImgClr(new Rectangle(0, 0, GetIWidth(), GetIHeight()));
|
|
|
+ bfResult = imageHandle.GetColoredImage(myFld, imageProcessParam, pixelSize, GetIWidth(), GetIHeight(), ref pImgNoBG, ref coloredParticleImage);
|
|
|
|
|
|
removeBGBseData = pImgNoBG.GetImageDataPtr();
|
|
|
|
|
@@ -732,11 +732,11 @@ namespace OTSMeasureApp
|
|
|
|
|
|
//显示线扫描 黄色线的曲线数据
|
|
|
|
|
|
- var Imagedata = new byte[m_iWidth];
|
|
|
+ var Imagedata = new byte[GetIWidth()];
|
|
|
|
|
|
int YSize = Convert.ToInt32((rate * (double)pointStart.Y));
|
|
|
|
|
|
- GetLineImage(YSize, m_iWidth, ref Imagedata);
|
|
|
+ GetLineImage(YSize, GetIWidth(), ref Imagedata);
|
|
|
|
|
|
|
|
|
|
|
@@ -845,9 +845,9 @@ namespace OTSMeasureApp
|
|
|
{
|
|
|
|
|
|
//如果当前鼠标在图像Y轴中
|
|
|
- if (startimageX >= 0 && startimageX < m_iWidth && startimageY >= 0 && startimageY < m_iHeight)
|
|
|
+ if (startimageX >= 0 && startimageX < GetIWidth() && startimageY >= 0 && startimageY < GetIHeight())
|
|
|
{
|
|
|
- var binPos = startimageX + (startimageY * m_iWidth);
|
|
|
+ var binPos = startimageX + (startimageY * GetIWidth());
|
|
|
grayValue = originalBseData[binPos];
|
|
|
}
|
|
|
|
|
@@ -952,7 +952,7 @@ namespace OTSMeasureApp
|
|
|
|
|
|
m_imagetype = ImageType.BSEImage;
|
|
|
//在控件中显示图像
|
|
|
- Bitmap bitmap = CImageHandler.ToGrayBitmap(originalBseData, m_iWidth, m_iHeight);
|
|
|
+ Bitmap bitmap = CImageHandler.ToGrayBitmap(originalBseData, GetIWidth(), GetIHeight());
|
|
|
ShowSingleImage(bitmap);
|
|
|
|
|
|
|
|
@@ -1041,11 +1041,11 @@ namespace OTSMeasureApp
|
|
|
{
|
|
|
var rectangle = ImgZoomRectangle;
|
|
|
double ratex = x - rectangle.X;
|
|
|
- var imageX = ratex / rectangle.Width * m_iWidth;
|
|
|
+ var imageX = ratex / rectangle.Width * GetIWidth();
|
|
|
|
|
|
|
|
|
double ratey = y - rectangle.Y;
|
|
|
- var imageY = ratey / rectangle.Height * m_iHeight;
|
|
|
+ var imageY = ratey / rectangle.Height * GetIHeight();
|
|
|
|
|
|
|
|
|
return new Point((int)imageX, (int)imageY);
|
|
@@ -1060,7 +1060,7 @@ namespace OTSMeasureApp
|
|
|
var expC = m_MeasureAppForm.m_ProjRstData.GetWorkingSample().GetMsrParams().GetXRayParam().GetAnalyExpCount();
|
|
|
var ifautoid = m_MeasureAppForm.m_ProjRstData.GetWorkingSample().GetMsrParams().GetXRayParam().IfAutoId;
|
|
|
var knownelements = m_MeasureAppForm.m_ProjRstData.GetWorkingSample().GetMsrParams().GetXRayParam().AnalysisElements;
|
|
|
- IEDSController m_EDSHardwareMgr = EDSController.GetEDSController(m_iWidth, m_iHeight, expC, ifautoid, knownelements);
|
|
|
+ IEDSController m_EDSHardwareMgr = EDSController.GetEDSController(GetIWidth(), GetIHeight(), expC, ifautoid, knownelements);
|
|
|
|
|
|
//1.连接电镜
|
|
|
if (m_EDSHardwareMgr.Connect())
|
|
@@ -1224,7 +1224,7 @@ namespace OTSMeasureApp
|
|
|
var expC = m_MeasureAppForm.m_ProjRstData.GetWorkingSample().GetMsrParams().GetXRayParam().GetAnalyExpCount();
|
|
|
var ifautoid = m_MeasureAppForm.m_ProjRstData.GetWorkingSample().GetMsrParams().GetXRayParam().IfAutoId;
|
|
|
var knownelements = m_MeasureAppForm.m_ProjRstData.GetWorkingSample().GetMsrParams().GetXRayParam().AnalysisElements;
|
|
|
- var eds = EDSController.GetEDSController(m_iWidth, m_iHeight, expC, ifautoid, knownelements);
|
|
|
+ var eds = EDSController.GetEDSController(GetIWidth(), GetIHeight(), expC, ifautoid, knownelements);
|
|
|
|
|
|
|
|
|
//var parts = new List<COTSParticleClr>();
|
|
@@ -1453,6 +1453,40 @@ namespace OTSMeasureApp
|
|
|
int yPos;
|
|
|
bool MoveFlag = false;
|
|
|
|
|
|
+ public int GetIHeight()
|
|
|
+ {
|
|
|
+ string str = m_MeasureAppForm.m_ProjParam.GetBSEImageResolutionStr();
|
|
|
+ string[] sArray = str.Split('X');
|
|
|
+ if (sArray[0] != "" && sArray[1] != "")
|
|
|
+ {
|
|
|
+
|
|
|
+ SetIHeight(Convert.ToInt32(sArray[1]));
|
|
|
+ }
|
|
|
+ return m_iHeight;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void SetIHeight(int value)
|
|
|
+ {
|
|
|
+ m_iHeight = value;
|
|
|
+ }
|
|
|
+
|
|
|
+ public int GetIWidth()
|
|
|
+ {
|
|
|
+ string str = m_MeasureAppForm.m_ProjParam.GetBSEImageResolutionStr();
|
|
|
+ string[] sArray = str.Split('X');
|
|
|
+ if (sArray[0] != "" && sArray[1] != "")
|
|
|
+ {
|
|
|
+ SetIWidth(Convert.ToInt32(sArray[0]));
|
|
|
+
|
|
|
+ }
|
|
|
+ return m_iWidth;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void SetIWidth(int value)
|
|
|
+ {
|
|
|
+ m_iWidth = value;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
//在picturebox的鼠标按下事件里.
|
|
|
private void pbBSEImage_MouseUp(object sender, MouseEventArgs e)
|
|
@@ -1563,7 +1597,7 @@ namespace OTSMeasureApp
|
|
|
int grayEnd = 0;
|
|
|
if (originalBse != null)
|
|
|
{
|
|
|
- Bitmap bitmap = CImageHandler.ToGrayBitmap(originalBseData, m_iWidth, m_iHeight);
|
|
|
+ Bitmap bitmap = CImageHandler.ToGrayBitmap(originalBseData, GetIWidth(), GetIHeight());
|
|
|
toolWindow.BseImg = bitmap;
|
|
|
toolWindow.OriginalBseData = originalBseData;
|
|
|
//获取去背景灰度值
|
|
@@ -1601,7 +1635,7 @@ namespace OTSMeasureApp
|
|
|
private void toolStripMenuItem1_Click(object sender, EventArgs e)
|
|
|
{
|
|
|
|
|
|
- SpecialParticleForm specialParticleForm = new SpecialParticleForm(CSpecialGrayRangeParam.GetParamFileFullName(), m_MeasureAppForm, originalBseData, m_iWidth, m_iHeight, this);
|
|
|
+ SpecialParticleForm specialParticleForm = new SpecialParticleForm(CSpecialGrayRangeParam.GetParamFileFullName(), m_MeasureAppForm, originalBseData, GetIWidth(), GetIHeight(), this);
|
|
|
DialogResult dialogResult = specialParticleForm.ShowDialog();
|
|
|
|
|
|
|
|
@@ -1685,8 +1719,8 @@ namespace OTSMeasureApp
|
|
|
string[] sArray = str.Split('X');
|
|
|
if (sArray[0] != "" && sArray[1] != "")
|
|
|
{
|
|
|
- m_iWidth = Convert.ToInt32(sArray[0]);
|
|
|
- m_iHeight = Convert.ToInt32(sArray[1]);
|
|
|
+ SetIWidth(Convert.ToInt32(sArray[0]));
|
|
|
+ SetIHeight(Convert.ToInt32(sArray[1]));
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -1715,7 +1749,7 @@ namespace OTSMeasureApp
|
|
|
var expC = m_MeasureAppForm.m_ProjRstData.GetWorkingSample().GetMsrParams().GetXRayParam().GetAnalyExpCount();
|
|
|
var ifautoid = m_MeasureAppForm.m_ProjRstData.GetWorkingSample().GetMsrParams().GetXRayParam().IfAutoId;
|
|
|
var knownelements = m_MeasureAppForm.m_ProjRstData.GetWorkingSample().GetMsrParams().GetXRayParam().AnalysisElements;
|
|
|
- IEDSController m_EDSHardwareMgr = EDSController.GetEDSController(m_iWidth, m_iHeight, expC, ifautoid, knownelements);
|
|
|
+ IEDSController m_EDSHardwareMgr = EDSController.GetEDSController(GetIWidth(), GetIHeight(), expC, ifautoid, knownelements);
|
|
|
|
|
|
var mode = m_MeasureAppForm.m_ProjRstData.GetWorkingSample().GetMsrParams().GetXRayParam().GetScanMode();
|
|
|
if (m_EDSHardwareMgr.Connect())
|