完善运动曲线图的显示
This commit is contained in:
@@ -1159,3 +1159,60 @@ Construct Cso7_Proto.
|
|||||||
|
|
||||||
_start_machine
|
_start_machine
|
||||||
Exit: Exit_SO7Usb
|
Exit: Exit_SO7Usb
|
||||||
|
|
||||||
|
Destruct Cso7_Proto.
|
||||||
|
|
||||||
|
Construct Cso7_Proto.
|
||||||
|
|
||||||
|
Init:Open device succeed .
|
||||||
|
|
||||||
|
_start_machine
|
||||||
|
Exit: Exit_SO7Usb
|
||||||
|
|
||||||
|
Destruct Cso7_Proto.
|
||||||
|
|
||||||
|
Construct Cso7_Proto.
|
||||||
|
|
||||||
|
Init:Open device succeed .
|
||||||
|
|
||||||
|
_start_machine
|
||||||
|
Exit: Exit_SO7Usb
|
||||||
|
|
||||||
|
Destruct Cso7_Proto.
|
||||||
|
|
||||||
|
Construct Cso7_Proto.
|
||||||
|
|
||||||
|
Init:Open device succeed .
|
||||||
|
|
||||||
|
_start_machine
|
||||||
|
Exit: Exit_SO7Usb
|
||||||
|
|
||||||
|
Destruct Cso7_Proto.
|
||||||
|
|
||||||
|
Construct Cso7_Proto.
|
||||||
|
|
||||||
|
Init:Open device succeed .
|
||||||
|
|
||||||
|
_start_machine
|
||||||
|
Exit: Exit_SO7Usb
|
||||||
|
|
||||||
|
Destruct Cso7_Proto.
|
||||||
|
|
||||||
|
Construct Cso7_Proto.
|
||||||
|
|
||||||
|
Init:Open device succeed .
|
||||||
|
|
||||||
|
_start_machine
|
||||||
|
Exit: Exit_SO7Usb
|
||||||
|
|
||||||
|
Destruct Cso7_Proto.
|
||||||
|
|
||||||
|
Construct Cso7_Proto.
|
||||||
|
|
||||||
|
Init:Open device succeed .
|
||||||
|
|
||||||
|
_start_machine
|
||||||
|
Exit: Exit_SO7Usb
|
||||||
|
|
||||||
|
Destruct Cso7_Proto.
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
|
#include <math.h>
|
||||||
#include "DrawGraph.h"
|
#include "DrawGraph.h"
|
||||||
|
|
||||||
|
|
||||||
@@ -87,6 +88,12 @@ void CDrawGraph::SetViewFont(const CString& strFont, int nPointSize, int nWeight
|
|||||||
Invalidate();
|
Invalidate();
|
||||||
}
|
}
|
||||||
//========================================================
|
//========================================================
|
||||||
|
void CDrawGraph::SetCoordinateLabel(const CString& _XAxis,const CString& _YAxis)
|
||||||
|
{
|
||||||
|
m_XAxisLabel=_XAxis;
|
||||||
|
m_YAxisLabel=_YAxis;
|
||||||
|
}
|
||||||
|
//========================================================
|
||||||
void CDrawGraph::SetMargin(int nLeft, int nTop, int nRight, int nBottom, BOOL bIsRedraw)
|
void CDrawGraph::SetMargin(int nLeft, int nTop, int nRight, int nBottom, BOOL bIsRedraw)
|
||||||
{
|
{
|
||||||
m_nMarginLeft = nLeft;
|
m_nMarginLeft = nLeft;
|
||||||
@@ -125,7 +132,26 @@ void CDrawGraph::SetResolution(double dbResolutionX, double dbResolutionY, BOOL
|
|||||||
Invalidate();
|
Invalidate();
|
||||||
}
|
}
|
||||||
//========================================================
|
//========================================================
|
||||||
void CDrawGraph::LoadGraphyData(DataBuff& dataShow)
|
void CDrawGraph::LoadGraphyXAxisData(DataBuff& dataShow)
|
||||||
|
{
|
||||||
|
double dbData;
|
||||||
|
INT_PTR nCount = dataShow.GetCount();
|
||||||
|
|
||||||
|
if(nCount==0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
m_dataGraphX.RemoveAll();
|
||||||
|
m_dataGraphX.SetSize(nCount);
|
||||||
|
for(int i=0; i<nCount; i++)
|
||||||
|
{
|
||||||
|
dbData = dataShow.ElementAt(i);
|
||||||
|
|
||||||
|
m_dataGraphX.SetAt(i, dbData);
|
||||||
|
}
|
||||||
|
Invalidate();
|
||||||
|
}
|
||||||
|
//========================================================
|
||||||
|
void CDrawGraph::LoadGraphyYAxisData(DataBuff& dataShow)
|
||||||
{
|
{
|
||||||
double dbData;
|
double dbData;
|
||||||
INT_PTR nCount = dataShow.GetCount();
|
INT_PTR nCount = dataShow.GetCount();
|
||||||
@@ -133,26 +159,26 @@ void CDrawGraph::LoadGraphyData(DataBuff& dataShow)
|
|||||||
if(nCount==0)
|
if(nCount==0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
m_dataGraph.RemoveAll();
|
m_dataGraphY.RemoveAll();
|
||||||
m_dataGraph.SetSize(nCount);
|
m_dataGraphY.SetSize(nCount);
|
||||||
for(int i=0; i<nCount; i++)
|
for(int i=0; i<nCount; i++)
|
||||||
{
|
{
|
||||||
dbData = dataShow.ElementAt(i);
|
dbData = dataShow.ElementAt(i);
|
||||||
|
|
||||||
m_dataGraph.SetAt(i, dbData);
|
m_dataGraphY.SetAt(i, dbData);
|
||||||
}
|
}
|
||||||
Invalidate();
|
Invalidate();
|
||||||
}
|
}
|
||||||
//========================================================
|
//========================================================
|
||||||
void CDrawGraph::AddGraphyData(double _data)
|
void CDrawGraph::AddGraphyData(double _data)
|
||||||
{
|
{
|
||||||
m_dataGraph.Add(_data);
|
m_dataGraphY.Add(_data);
|
||||||
Invalidate();
|
Invalidate();
|
||||||
}
|
}
|
||||||
//=======================================================
|
//=======================================================
|
||||||
void CDrawGraph::RemoveGraphyData(BOOL bIsRedraw)
|
void CDrawGraph::RemoveGraphyData(BOOL bIsRedraw)
|
||||||
{
|
{
|
||||||
m_dataGraph.RemoveAll();
|
m_dataGraphY.RemoveAll();
|
||||||
if(bIsRedraw)
|
if(bIsRedraw)
|
||||||
Invalidate();
|
Invalidate();
|
||||||
};
|
};
|
||||||
@@ -212,9 +238,9 @@ void CDrawGraph::DrawCoordinate(CDC* pDC, CRect rectCoord)
|
|||||||
font.CreatePointFontIndirect (&lf);
|
font.CreatePointFontIndirect (&lf);
|
||||||
|
|
||||||
CFont* pOldFont = pDC->SelectObject (&font);
|
CFont* pOldFont = pDC->SelectObject (&font);
|
||||||
pDC->TextOut(rectCoord.left-40,rectCoord.top+(rectCoord.Height()/2)+30,_T("速度(mm/s)"));//旋转90°输出
|
pDC->TextOut(rectCoord.left-40,rectCoord.top+(rectCoord.Height()/2)+30,m_YAxisLabel);//旋转90°输出
|
||||||
pDC->SelectObject (pOldFont);
|
pDC->SelectObject (pOldFont);
|
||||||
pDC->TextOut(rectCoord.left-20+(rectCoord.Width()/2),rectCoord.bottom+15,_T("时间(s)"));
|
pDC->TextOut(rectCoord.left-20+(rectCoord.Width()/2),rectCoord.bottom+15,m_XAxisLabel);
|
||||||
|
|
||||||
nOffset = 4;
|
nOffset = 4;
|
||||||
rectTemp.SetRect(rectCoord.left+nOffset, rectCoord.top+1, rectCoord.right, rectCoord.bottom-nOffset);
|
rectTemp.SetRect(rectCoord.left+nOffset, rectCoord.top+1, rectCoord.right, rectCoord.bottom-nOffset);
|
||||||
@@ -226,18 +252,18 @@ void CDrawGraph::DrawActualCurve(CDC *pDC, CRect rectCoord)
|
|||||||
CRect rectView;
|
CRect rectView;
|
||||||
CRgn rgnTemp, rgnView;
|
CRgn rgnTemp, rgnView;
|
||||||
CPen penLine, *pOldPen;
|
CPen penLine, *pOldPen;
|
||||||
INT_PTR nCount = m_dataGraph.GetCount();
|
INT_PTR nCount = m_dataGraphY.GetCount();
|
||||||
|
|
||||||
if(nCount==0)
|
if(nCount==0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
double dbData(0.0);
|
double dbData(0.0);
|
||||||
int nOffsetX(0), nOffsetY(0),nOriginX(0),nOriginY(0);
|
int nOffsetX(0), nOffsetY(0),nOriginX(0),nOriginY(0);
|
||||||
dbData = m_dataGraph.ElementAt(0);
|
dbData = m_dataGraphY.ElementAt(0);
|
||||||
nOriginX = rectCoord.left;
|
nOriginX = rectCoord.left;
|
||||||
nOriginY = rectCoord.bottom;;
|
nOriginY = rectCoord.bottom;;
|
||||||
nOffsetX = static_cast<int>(m_dbResolutionX*(rectCoord.Width()));
|
nOffsetX = static_cast<int>(m_dbResolutionX*(rectCoord.Width()));
|
||||||
nOffsetY = static_cast<int>(m_dbResolutionY*(rectCoord.Height())*dbData);
|
nOffsetY = static_cast<int>(m_dbResolutionY*(rectCoord.Height())*(dbData-m_dbStartY));
|
||||||
|
|
||||||
rgnTemp.CreateRectRgnIndirect(rectCoord);
|
rgnTemp.CreateRectRgnIndirect(rectCoord);
|
||||||
pDC->SelectObject(rgnTemp);
|
pDC->SelectObject(rgnTemp);
|
||||||
@@ -249,8 +275,8 @@ void CDrawGraph::DrawActualCurve(CDC *pDC, CRect rectCoord)
|
|||||||
|
|
||||||
for(int i=1; i<nCount; i++)
|
for(int i=1; i<nCount; i++)
|
||||||
{
|
{
|
||||||
dbData = m_dataGraph.ElementAt(i);
|
dbData = m_dataGraphY.ElementAt(i);
|
||||||
nOffsetY = static_cast<int>(m_dbResolutionY*(rectCoord.Height())*dbData);
|
nOffsetY = static_cast<int>(m_dbResolutionY*(rectCoord.Height())*(dbData-m_dbStartY));
|
||||||
|
|
||||||
pDC->LineTo(nOriginX+nOffsetX*i, nOriginY-nOffsetY);
|
pDC->LineTo(nOriginX+nOffsetX*i, nOriginY-nOffsetY);
|
||||||
}
|
}
|
||||||
@@ -265,7 +291,7 @@ void CDrawGraph::DrawIdealCurve(CDC *pDC, CRect rectCoord)
|
|||||||
CRect rectView;
|
CRect rectView;
|
||||||
CRgn rgnTemp, rgnView;
|
CRgn rgnTemp, rgnView;
|
||||||
CPen penLine, *pOldPen;
|
CPen penLine, *pOldPen;
|
||||||
INT_PTR nCount = m_dataGraph.GetCount();
|
INT_PTR nCount = m_dataGraphY.GetCount();
|
||||||
|
|
||||||
if(nCount==0)
|
if(nCount==0)
|
||||||
return;
|
return;
|
||||||
@@ -285,13 +311,13 @@ void CDrawGraph::DrawIdealCurve(CDC *pDC, CRect rectCoord)
|
|||||||
penLine.CreatePen(PS_SOLID, 1, m_clrWave);
|
penLine.CreatePen(PS_SOLID, 1, m_clrWave);
|
||||||
pOldPen = pDC->SelectObject(&penLine);
|
pOldPen = pDC->SelectObject(&penLine);
|
||||||
|
|
||||||
dbData = m_dataGraph.ElementAt(0);
|
dbData = m_dataGraphY.ElementAt(0);
|
||||||
nOffsetY = int(nCoordHeight*dbData/nRangY);
|
nOffsetY = int(nCoordHeight*dbData/nRangY);
|
||||||
pDC->MoveTo(nOriginX, nOriginY-nOffsetY);
|
pDC->MoveTo(nOriginX, nOriginY-nOffsetY);
|
||||||
|
|
||||||
for(int i=1; i<nCount; i++)
|
for(int i=1; i<nCount; i++)
|
||||||
{
|
{
|
||||||
dbData = m_dataGraph.ElementAt(i);
|
dbData = m_dataGraphY.ElementAt(i);
|
||||||
nOffsetX = int(nCoordWith*(i+1)/nRangX);
|
nOffsetX = int(nCoordWith*(i+1)/nRangX);
|
||||||
nOffsetY = int(nCoordHeight*dbData/nRangY);
|
nOffsetY = int(nCoordHeight*dbData/nRangY);
|
||||||
|
|
||||||
|
|||||||
@@ -21,8 +21,9 @@ class CDrawGraph : public CWnd
|
|||||||
double m_dbStartX, m_dbEndX,m_dbStartY,m_dbEndY;
|
double m_dbStartX, m_dbEndX,m_dbStartY,m_dbEndY;
|
||||||
double m_dbResolutionX,m_dbResolutionY;
|
double m_dbResolutionX,m_dbResolutionY;
|
||||||
int m_nDivisionX,m_nDivisionY;
|
int m_nDivisionX,m_nDivisionY;
|
||||||
DataBuff m_dataGraph;
|
DataBuff m_dataGraphY;
|
||||||
|
DataBuff m_dataGraphX;
|
||||||
|
CString m_XAxisLabel,m_YAxisLabel;
|
||||||
public:
|
public:
|
||||||
CDrawGraph();
|
CDrawGraph();
|
||||||
virtual ~CDrawGraph();
|
virtual ~CDrawGraph();
|
||||||
@@ -32,8 +33,10 @@ public:
|
|||||||
void SetMargin(int nLeft, int nTop, int nRight, int nBottom, BOOL bIsRedraw=TRUE);
|
void SetMargin(int nLeft, int nTop, int nRight, int nBottom, BOOL bIsRedraw=TRUE);
|
||||||
bool SetGraphyView(double dbStartX, double dbEndX, double dbStartY, double dbEndY, int nDivisionX = 10, int nDivisionY = 10, BOOL bIsRedraw=TRUE);
|
bool SetGraphyView(double dbStartX, double dbEndX, double dbStartY, double dbEndY, int nDivisionX = 10, int nDivisionY = 10, BOOL bIsRedraw=TRUE);
|
||||||
void SetResolution(double dbResolutionX, double dbResolutionY, BOOL bIsRedraw=TRUE);
|
void SetResolution(double dbResolutionX, double dbResolutionY, BOOL bIsRedraw=TRUE);
|
||||||
void LoadGraphyData(DataBuff& dataShow);
|
void LoadGraphyYAxisData(DataBuff& dataShow);
|
||||||
|
void LoadGraphyXAxisData(DataBuff& dataShow);
|
||||||
void AddGraphyData(double _data);
|
void AddGraphyData(double _data);
|
||||||
|
void SetCoordinateLabel(const CString& _XAxis,const CString& _YAxis);
|
||||||
void RemoveGraphyData(BOOL bIsRedraw=TRUE);
|
void RemoveGraphyData(BOOL bIsRedraw=TRUE);
|
||||||
void DrawCoordinate(CDC* pDC, CRect rectCoord);
|
void DrawCoordinate(CDC* pDC, CRect rectCoord);
|
||||||
void DrawIdealCurve(CDC* pDC, CRect rectCoord);
|
void DrawIdealCurve(CDC* pDC, CRect rectCoord);
|
||||||
|
|||||||
@@ -138,16 +138,19 @@ BEGIN
|
|||||||
PUSHBUTTON "so7_config",IDC_BUTTON_SETUP_SO7CONFIG,20,184,44,23
|
PUSHBUTTON "so7_config",IDC_BUTTON_SETUP_SO7CONFIG,20,184,44,23
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_S07_UTIL_SEND_PARAMETER DIALOGEX 0, 0, 753, 471
|
IDD_S07_UTIL_SEND_PARAMETER DIALOGEX 0, 0, 753, 481
|
||||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Send Parameter"
|
CAPTION "Send Parameter"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "X",IDC_RADIO_SAMPLE_X,"Button",BS_AUTORADIOBUTTON | WS_GROUP,390,415,20,10
|
GROUPBOX "坐标轴",IDC_STATIC,379,399,50,56
|
||||||
CONTROL "Y",IDC_RADIO_SAMPLE_Y,"Button",BS_AUTORADIOBUTTON,390,426,20,10
|
CONTROL "X",IDC_RADIO_SAMPLE_X,"Button",BS_AUTORADIOBUTTON | WS_GROUP,391,413,20,10
|
||||||
CONTROL "Z",IDC_RADIO_SAMPLE_Z,"Button",BS_AUTORADIOBUTTON,390,437,20,10
|
CONTROL "Y",IDC_RADIO_SAMPLE_Y,"Button",BS_AUTORADIOBUTTON,391,426,20,10
|
||||||
CONTROL "速度-时间",IDC_RADIO_CANVAS_SPEED_TIME,"Button",BS_AUTORADIOBUTTON | WS_GROUP,315,418,51,10
|
CONTROL "Z",IDC_RADIO_SAMPLE_Z,"Button",BS_AUTORADIOBUTTON,391,439,20,10
|
||||||
CONTROL "位移-时间",IDC_RADIO_CANVAS_POSTION_TIME,"Button",BS_AUTORADIOBUTTON,315,432,51,10
|
GROUPBOX "曲线类型",IDC_STATIC,308,398,66,57
|
||||||
|
CONTROL "速度-时间",IDC_RADIO_CANVAS_SPEED_TIME,"Button",BS_AUTORADIOBUTTON | WS_GROUP,315,413,51,10
|
||||||
|
CONTROL "位移-速度",IDC_RADIO_CANVAS_SPEED_POSTION,"Button",BS_AUTORADIOBUTTON,315,426,51,10
|
||||||
|
CONTROL "位移-时间",IDC_RADIO_CANVAS_POSTION_TIME,"Button",BS_AUTORADIOBUTTON,315,439,51,10
|
||||||
EDITTEXT IDC_EDIT_BASESPEED_X1,43,55,40,12,ES_AUTOHSCROLL
|
EDITTEXT IDC_EDIT_BASESPEED_X1,43,55,40,12,ES_AUTOHSCROLL
|
||||||
EDITTEXT IDC_EDIT_MAXSPEED_X1,93,55,40,12,ES_AUTOHSCROLL
|
EDITTEXT IDC_EDIT_MAXSPEED_X1,93,55,40,12,ES_AUTOHSCROLL
|
||||||
EDITTEXT IDC_EDIT_STARTSPEED_X1,143,55,40,12,ES_AUTOHSCROLL
|
EDITTEXT IDC_EDIT_STARTSPEED_X1,143,55,40,12,ES_AUTOHSCROLL
|
||||||
@@ -239,7 +242,7 @@ BEGIN
|
|||||||
PUSHBUTTON "Save To Controller",IDC_BUTTON_SAVE_PARAMETER,46,410,50,24,BS_MULTILINE
|
PUSHBUTTON "Save To Controller",IDC_BUTTON_SAVE_PARAMETER,46,410,50,24,BS_MULTILINE
|
||||||
PUSHBUTTON "Read From Controller",IDC_BUTTON_READ_PARAMETER_FROM_CONTROLLER,120,410,50,24,BS_MULTILINE
|
PUSHBUTTON "Read From Controller",IDC_BUTTON_READ_PARAMETER_FROM_CONTROLLER,120,410,50,24,BS_MULTILINE
|
||||||
PUSHBUTTON "Save...",IDC_BUTTON_SAVE,194,410,50,24
|
PUSHBUTTON "Save...",IDC_BUTTON_SAVE,194,410,50,24
|
||||||
PUSHBUTTON "Exit",IDCANCEL,696,426,50,14
|
PUSHBUTTON "Exit",IDCANCEL,696,449,50,14
|
||||||
LTEXT "Z=",IDC_STATIC,229,381,10,8
|
LTEXT "Z=",IDC_STATIC,229,381,10,8
|
||||||
LTEXT "Y=",IDC_STATIC,90,296,10,8
|
LTEXT "Y=",IDC_STATIC,90,296,10,8
|
||||||
EDITTEXT IDC_EDIT_INPUT_FILE,58,12,186,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_EDIT_INPUT_FILE,58,12,186,14,ES_AUTOHSCROLL
|
||||||
@@ -282,16 +285,14 @@ BEGIN
|
|||||||
LTEXT "POS WORKING LIMIT",IDC_STATIC,20,382,69,8
|
LTEXT "POS WORKING LIMIT",IDC_STATIC,20,382,69,8
|
||||||
LTEXT "X=",IDC_STATIC,104,381,10,8
|
LTEXT "X=",IDC_STATIC,104,381,10,8
|
||||||
LTEXT "Y=",IDC_STATIC,166,381,10,8
|
LTEXT "Y=",IDC_STATIC,166,381,10,8
|
||||||
EDITTEXT IDC_EDIT_SAMPLE_SCURVE_DIS,473,408,40,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_EDIT_SAMPLE_SCURVE_DIS,473,405,40,14,ES_AUTOHSCROLL
|
||||||
EDITTEXT IDC_EDIT_SAMPLE_TIME_SCURVE,564,408,40,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_EDIT_SAMPLE_TIME_SCURVE,564,405,40,14,ES_AUTOHSCROLL
|
||||||
PUSHBUTTON "开始",IDC_BUTTON_START_SAMPLE_SCURVE,628,407,50,14
|
PUSHBUTTON "开始",IDC_BUTTON_START_SAMPLE_SCURVE,628,407,50,14
|
||||||
LTEXT "相对距离",IDC_STATIC,436,410,33,8
|
LTEXT "相对距离",IDC_STATIC,436,407,33,8
|
||||||
LTEXT "采样时间",IDC_STATIC,529,410,33,8
|
LTEXT "采样时间",IDC_STATIC,529,407,33,8
|
||||||
PUSHBUTTON "Stop",IDC_BUTTON_STOP_SAMPLE_SCURVE,627,425,50,14
|
PUSHBUTTON "Stop",IDC_BUTTON_STOP_SAMPLE_SCURVE,627,425,50,14
|
||||||
CONTROL "运动曲线图",IDC_CUSTOM_CANVAS,"CDrawGraph",WS_TABSTOP,309,34,423,349
|
CONTROL "运动曲线图",IDC_CUSTOM_CANVAS,"CDrawGraph",WS_TABSTOP,309,29,423,349
|
||||||
GROUPBOX "曲线类型",IDC_STATIC,308,404,66,48
|
EDITTEXT IDC_EDIT_SET_PARAMETER_MSGOUTPUT,440,428,165,25,ES_MULTILINE | ES_AUTOVSCROLL | ES_WANTRETURN | WS_VSCROLL
|
||||||
EDITTEXT IDC_EDIT_SET_PARAMETER_MSGOUTPUT,443,431,165,25,ES_MULTILINE | ES_AUTOVSCROLL | ES_WANTRETURN | WS_VSCROLL
|
|
||||||
GROUPBOX "坐标轴",IDC_STATIC,379,404,50,48
|
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_SO7_UTIL_AUTO_ZOOM DIALOGEX 0, 0, 426, 460
|
IDD_SO7_UTIL_AUTO_ZOOM DIALOGEX 0, 0, 426, 460
|
||||||
@@ -352,7 +353,7 @@ END
|
|||||||
|
|
||||||
IDD_S07_OPTION_DIALOG DIALOGEX 0, 0, 298, 166
|
IDD_S07_OPTION_DIALOG DIALOGEX 0, 0, 298, 166
|
||||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Option Dialog"
|
CAPTION "Utility for SO7"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "SDK3000视频卡",IDC_RADIO_VIDEOCARD_SDK3000,"Button",BS_AUTORADIOBUTTON,48,39,69,10
|
CONTROL "SDK3000视频卡",IDC_RADIO_VIDEOCARD_SDK3000,"Button",BS_AUTORADIOBUTTON,48,39,69,10
|
||||||
|
|||||||
@@ -12,6 +12,7 @@
|
|||||||
extern CSO7_Proto* m_pSO7_Proto;
|
extern CSO7_Proto* m_pSO7_Proto;
|
||||||
|
|
||||||
#define PAUSE_TIME_CHANGE_PARAMETER 20
|
#define PAUSE_TIME_CHANGE_PARAMETER 20
|
||||||
|
#define MAX_SAMPLE_DIFF_VALUE 100
|
||||||
//#include "INIFile.h"
|
//#include "INIFile.h"
|
||||||
|
|
||||||
// CSO7_Send_Parameter dialog
|
// CSO7_Send_Parameter dialog
|
||||||
@@ -39,6 +40,7 @@ IMPLEMENT_DYNAMIC(CSO7_Send_Parameter, CDialog)
|
|||||||
m_FinishTime=0;
|
m_FinishTime=0;
|
||||||
m_duration=0.0;
|
m_duration=0.0;
|
||||||
m_TimerCnt=0;
|
m_TimerCnt=0;
|
||||||
|
m_MotionDir=true;
|
||||||
}
|
}
|
||||||
//================================================================
|
//================================================================
|
||||||
CSO7_Send_Parameter::~CSO7_Send_Parameter()
|
CSO7_Send_Parameter::~CSO7_Send_Parameter()
|
||||||
@@ -165,7 +167,6 @@ BEGIN_MESSAGE_MAP(CSO7_Send_Parameter, CDialog)
|
|||||||
ON_EN_KILLFOCUS(IDC_EDIT_SAMPLE_TIME_SCURVE, &CSO7_Send_Parameter::OnEnKillfocusEditSampleTimeScurve)
|
ON_EN_KILLFOCUS(IDC_EDIT_SAMPLE_TIME_SCURVE, &CSO7_Send_Parameter::OnEnKillfocusEditSampleTimeScurve)
|
||||||
ON_BN_CLICKED(IDC_BUTTON_START_SAMPLE_SCURVE, &CSO7_Send_Parameter::OnBnClickedButtonStartSampleScurve)
|
ON_BN_CLICKED(IDC_BUTTON_START_SAMPLE_SCURVE, &CSO7_Send_Parameter::OnBnClickedButtonStartSampleScurve)
|
||||||
ON_BN_CLICKED(IDC_BUTTON_STOP_SAMPLE_SCURVE, &CSO7_Send_Parameter::OnBnClickedButtonStopSampleScurve)
|
ON_BN_CLICKED(IDC_BUTTON_STOP_SAMPLE_SCURVE, &CSO7_Send_Parameter::OnBnClickedButtonStopSampleScurve)
|
||||||
ON_BN_CLICKED(IDC_RADIO_CANVAS_SPEED_TIME, &CSO7_Send_Parameter::OnBnClickedRadioCanvasSpeedTime)
|
|
||||||
END_MESSAGE_MAP()
|
END_MESSAGE_MAP()
|
||||||
|
|
||||||
|
|
||||||
@@ -221,12 +222,32 @@ void CSO7_Send_Parameter::OnPaint()
|
|||||||
OnDraw(&dc);
|
OnDraw(&dc);
|
||||||
CDialog::OnPaint();
|
CDialog::OnPaint();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//================================================================
|
||||||
|
void CSO7_Send_Parameter::OnDraw(CDC* pDC)
|
||||||
|
{
|
||||||
|
UNREFERENCED_PARAMETER(pDC);
|
||||||
|
//CWnd* m_p=(CWnd*)GetDlgItem(IDC_STATIC_CANVAS);
|
||||||
|
//m_p->GetWindowRect(&CanvasRect);
|
||||||
|
//CanvasRect.SetRect(550,50,1100,600);//L T R B
|
||||||
|
|
||||||
|
};
|
||||||
|
//================================================================================================
|
||||||
|
BOOL CSO7_Send_Parameter::OnEraseBkgnd(CDC* pDC)
|
||||||
|
{
|
||||||
|
//UNREFERENCED_PARAMETER(pDC);
|
||||||
|
//return TRUE;
|
||||||
|
return CDialog::OnEraseBkgnd(pDC);
|
||||||
|
}
|
||||||
|
|
||||||
//================================================================
|
//================================================================
|
||||||
void CSO7_Send_Parameter::OnBnClickedOk()
|
void CSO7_Send_Parameter::OnBnClickedOk()
|
||||||
{
|
{
|
||||||
KillTimer(1);
|
KillTimer(1);
|
||||||
CDialog::OnOK();
|
CDialog::OnOK();
|
||||||
}
|
}
|
||||||
|
#pragma region Send_Parameter
|
||||||
|
|
||||||
//================================================================
|
//================================================================
|
||||||
void CSO7_Send_Parameter::OnBnClickedButtonBrowse()
|
void CSO7_Send_Parameter::OnBnClickedButtonBrowse()
|
||||||
{
|
{
|
||||||
@@ -467,156 +488,9 @@ void CSO7_Send_Parameter::ShowParameterOnEdit()
|
|||||||
|
|
||||||
UpdateData(FALSE);
|
UpdateData(FALSE);
|
||||||
}
|
}
|
||||||
|
#pragma endregion
|
||||||
|
|
||||||
//================================================================
|
//#pragma region Sample_Motion_Curve
|
||||||
void CSO7_Send_Parameter::OnDraw(CDC* pDC)
|
|
||||||
{
|
|
||||||
UNREFERENCED_PARAMETER(pDC);
|
|
||||||
//CWnd* m_p=(CWnd*)GetDlgItem(IDC_STATIC_CANVAS);
|
|
||||||
//m_p->GetWindowRect(&CanvasRect);
|
|
||||||
//CanvasRect.SetRect(550,50,1100,600);//L T R B
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
//================================================================================================
|
|
||||||
void CSO7_Send_Parameter::OnTimer(UINT_PTR nIDEvent)
|
|
||||||
{
|
|
||||||
USES_CONVERSION;
|
|
||||||
switch(nIDEvent)
|
|
||||||
{
|
|
||||||
case 1:
|
|
||||||
{
|
|
||||||
if (m_pSO7_Proto)
|
|
||||||
{
|
|
||||||
if (m_pSO7_Proto->g_machine.s_status._machine_running)
|
|
||||||
{
|
|
||||||
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_AXIS_XYZ();
|
|
||||||
|
|
||||||
if(((CButton *)GetDlgItem(IDC_RADIO_CANVAS_POSTION_TIME))->GetCheck())
|
|
||||||
{
|
|
||||||
if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_X))->GetCheck())
|
|
||||||
{
|
|
||||||
m_pSO7_Proto->g_machine.x._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.x._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution);
|
|
||||||
m_FinishTime=clock();
|
|
||||||
m_duration=m_FinishTime-m_StartTime;
|
|
||||||
m_dataGraph.Add(m_pSO7_Proto->g_machine.x._d_cur_pos_);
|
|
||||||
if((abs(m_pSO7_Proto->g_machine.x._d_cur_pos_)-abs(m_dPos))<0.0)
|
|
||||||
{
|
|
||||||
m_csMSG.Format(_T("X Reverse;%f->%f!!!"),m_dPos,m_pSO7_Proto->g_machine.x._d_cur_pos_);
|
|
||||||
OutputWithScroll(m_csMSG,m_edMSG);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
m_csMSG.Format(_T("X Normal;%f->%f"),m_dPos,m_pSO7_Proto->g_machine.x._d_cur_pos_);
|
|
||||||
OutputWithScroll(m_csMSG,m_edMSG);
|
|
||||||
}
|
|
||||||
m_dPos=m_pSO7_Proto->g_machine.x._d_cur_pos_;
|
|
||||||
}
|
|
||||||
else if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_Y))->GetCheck())
|
|
||||||
{
|
|
||||||
m_pSO7_Proto->g_machine.y._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.y._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.y_axis._scale_resolution);
|
|
||||||
m_FinishTime=clock();
|
|
||||||
m_duration=m_FinishTime-m_StartTime;
|
|
||||||
m_dataGraph.Add(m_pSO7_Proto->g_machine.y._d_cur_pos_);
|
|
||||||
if((abs(m_pSO7_Proto->g_machine.y._d_cur_pos_)-abs(m_dPos))<0.0)
|
|
||||||
{
|
|
||||||
m_csMSG.Format(_T("Y Reverse;%f->%f!!!"),m_dPos,m_pSO7_Proto->g_machine.y._d_cur_pos_);
|
|
||||||
OutputWithScroll(m_csMSG,m_edMSG);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
m_csMSG.Format(_T("Y Normal;%f->%f"),m_dPos,m_pSO7_Proto->g_machine.y._d_cur_pos_);
|
|
||||||
OutputWithScroll(m_csMSG,m_edMSG);
|
|
||||||
}
|
|
||||||
m_dPos=m_pSO7_Proto->g_machine.y._d_cur_pos_;
|
|
||||||
}
|
|
||||||
else if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_Z))->GetCheck())
|
|
||||||
{
|
|
||||||
m_pSO7_Proto->g_machine.z._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.z._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.z_axis._scale_resolution);
|
|
||||||
m_FinishTime=clock();
|
|
||||||
m_duration=m_FinishTime-m_StartTime;
|
|
||||||
m_dataGraph.Add(m_pSO7_Proto->g_machine.z._d_cur_pos_);
|
|
||||||
if((abs(m_pSO7_Proto->g_machine.z._d_cur_pos_)-abs(m_dPos))<0.0)
|
|
||||||
{
|
|
||||||
m_csMSG.Format(_T("Z Reverse;%f->%f!!!"),m_dPos,m_pSO7_Proto->g_machine.z._d_cur_pos_);
|
|
||||||
OutputWithScroll(m_csMSG,m_edMSG);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
m_csMSG.Format(_T("Z Normal;%f->%f"),m_dPos,m_pSO7_Proto->g_machine.z._d_cur_pos_);
|
|
||||||
OutputWithScroll(m_csMSG,m_edMSG);
|
|
||||||
}
|
|
||||||
m_dPos=m_pSO7_Proto->g_machine.z._d_cur_pos_;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(nCount!=0)
|
|
||||||
{if (abs(m_dataGraph.ElementAt(nCount)-m_dataGraph.ElementAt(nCount-1))<0.000001)
|
|
||||||
{
|
|
||||||
m_DrawGraph.LoadGraphyData(m_dataGraph);
|
|
||||||
KillTimer(1);
|
|
||||||
}}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_X))->GetCheck())
|
|
||||||
{
|
|
||||||
m_pSO7_Proto->g_machine.x._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.x._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution);
|
|
||||||
m_FinishTime=clock();
|
|
||||||
m_duration=m_FinishTime-m_StartTime;
|
|
||||||
m_dataGraph.Add(static_cast<double>(((1000.0*(fabs(m_pSO7_Proto->g_machine.x._d_cur_pos_-m_dPos)))/m_duration)));
|
|
||||||
m_dPos=m_pSO7_Proto->g_machine.x._d_cur_pos_;
|
|
||||||
}
|
|
||||||
else if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_Y))->GetCheck())
|
|
||||||
{
|
|
||||||
m_pSO7_Proto->g_machine.y._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.y._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.y_axis._scale_resolution);
|
|
||||||
m_FinishTime=clock();
|
|
||||||
m_duration=m_FinishTime-m_StartTime;
|
|
||||||
m_dataGraph.Add(static_cast<double>(1000.0*(fabs(m_pSO7_Proto->g_machine.y._d_cur_pos_-m_dPos)/m_duration)));
|
|
||||||
m_dPos=m_pSO7_Proto->g_machine.y._d_cur_pos_;
|
|
||||||
}
|
|
||||||
else if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_Z))->GetCheck())
|
|
||||||
{
|
|
||||||
m_pSO7_Proto->g_machine.z._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.z._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.z_axis._scale_resolution);
|
|
||||||
m_FinishTime=clock();
|
|
||||||
m_duration=m_FinishTime-m_StartTime;
|
|
||||||
m_dataGraph.Add(static_cast<double>(1000.0*(fabs(m_pSO7_Proto->g_machine.z._d_cur_pos_-m_dPos)/m_duration)));
|
|
||||||
m_dPos=m_pSO7_Proto->g_machine.z._d_cur_pos_;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (m_TimerCnt<=nCount)
|
|
||||||
{
|
|
||||||
KillTimer(1);
|
|
||||||
INT_PTR nTmpCount = m_dataGraph.GetCount();
|
|
||||||
double dbData(0.0);
|
|
||||||
m_dbEndY=dbData;
|
|
||||||
m_dbStartY=dbData;
|
|
||||||
for(int i=0; i<nTmpCount; i++)
|
|
||||||
{
|
|
||||||
dbData = m_dataGraph.ElementAt(i);
|
|
||||||
if(dbData>m_dbEndY)
|
|
||||||
m_dbEndY=dbData;
|
|
||||||
if(dbData<m_dbStartY)
|
|
||||||
m_dbStartY=dbData;
|
|
||||||
}
|
|
||||||
m_dbResolutionY=static_cast<double>(1/(m_dbEndY-m_dbStartY));
|
|
||||||
m_DrawGraph.SetGraphyView(m_dbStartX,m_dbEndX,m_dbStartY,m_dbEndY,m_nDivisionX,m_nDivisionY);
|
|
||||||
m_DrawGraph.SetResolution(m_dbResolutionX,m_dbResolutionY);
|
|
||||||
m_DrawGraph.LoadGraphyData(m_dataGraph);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
nCount++;
|
|
||||||
m_StartTime=clock();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
CDialog::OnTimer(nIDEvent);
|
|
||||||
}
|
|
||||||
|
|
||||||
//================================================================================================
|
//================================================================================================
|
||||||
void CSO7_Send_Parameter::OnEnKillfocusEditSampleScurveDis()
|
void CSO7_Send_Parameter::OnEnKillfocusEditSampleScurveDis()
|
||||||
@@ -629,6 +503,14 @@ void CSO7_Send_Parameter::OnEnKillfocusEditSampleScurveDis()
|
|||||||
const char* cTempValue=T2A(str);
|
const char* cTempValue=T2A(str);
|
||||||
|
|
||||||
m_dMoveDis = atof(cTempValue);
|
m_dMoveDis = atof(cTempValue);
|
||||||
|
if (m_dMoveDis<0)
|
||||||
|
{
|
||||||
|
m_MotionDir=false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_MotionDir=true;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -643,11 +525,27 @@ void CSO7_Send_Parameter::OnEnKillfocusEditSampleTimeScurve()
|
|||||||
const char* cTempValue=T2A(str);
|
const char* cTempValue=T2A(str);
|
||||||
|
|
||||||
m_SampleTime = atof(cTempValue);
|
m_SampleTime = atof(cTempValue);
|
||||||
m_dbStartX=0;
|
if(((CButton *)GetDlgItem(IDC_RADIO_CANVAS_POSTION_TIME))->GetCheck())
|
||||||
m_dbEndX=m_SampleTime;
|
{
|
||||||
m_dbResolutionX=static_cast<double>(m_TimerInterval/(m_dbEndX*1000.0));//每一次采样所需时间对应X坐标的长度
|
m_dbStartX=0;
|
||||||
m_DrawGraph.SetResolution(m_dbResolutionX,m_dbResolutionY);
|
m_dbEndX=m_SampleTime;
|
||||||
m_DrawGraph.SetGraphyView(m_dbStartX,m_dbEndX,m_dbStartY,m_dbEndY,m_nDivisionX,m_nDivisionY,TRUE);
|
m_dbResolutionX=static_cast<double>(m_TimerInterval/(m_dbEndX*1000.0));//每一次采样所需时间对应X坐标的长度
|
||||||
|
m_DrawGraph.SetResolution(m_dbResolutionX,m_dbResolutionY);
|
||||||
|
m_DrawGraph.SetGraphyView(m_dbStartX,m_dbEndX,m_dbStartY,m_dbEndY,m_nDivisionX,m_nDivisionY,TRUE);
|
||||||
|
}
|
||||||
|
else if(((CButton *)GetDlgItem(IDC_RADIO_CANVAS_SPEED_TIME))->GetCheck())
|
||||||
|
{
|
||||||
|
m_dbStartX=0;
|
||||||
|
m_dbEndX=m_SampleTime;
|
||||||
|
m_dbResolutionX=static_cast<double>(m_TimerInterval/(m_dbEndX*1000.0));//每一次采样所需时间对应X坐标的长度
|
||||||
|
m_DrawGraph.SetResolution(m_dbResolutionX,m_dbResolutionY);
|
||||||
|
m_DrawGraph.SetGraphyView(m_dbStartX,m_dbEndX,m_dbStartY,m_dbEndY,m_nDivisionX,m_nDivisionY,TRUE);
|
||||||
|
}
|
||||||
|
else if(((CButton *)GetDlgItem(IDC_RADIO_CANVAS_SPEED_POSTION))->GetCheck())
|
||||||
|
{
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//================================================================================================
|
//================================================================================================
|
||||||
@@ -676,14 +574,19 @@ void CSO7_Send_Parameter::OnBnClickedButtonStartSampleScurve()
|
|||||||
m_dbEndX=m_SampleTime;
|
m_dbEndX=m_SampleTime;
|
||||||
if(((CButton *)GetDlgItem(IDC_RADIO_CANVAS_POSTION_TIME))->GetCheck())
|
if(((CButton *)GetDlgItem(IDC_RADIO_CANVAS_POSTION_TIME))->GetCheck())
|
||||||
{
|
{
|
||||||
// m_dbStartY=0;
|
|
||||||
// m_dbEndY=50;
|
|
||||||
m_dbResolutionX=static_cast<double>(m_TimerInterval/(m_dbEndX*1000.0));//每一次采样所需时间对应X坐标的长度
|
m_dbResolutionX=static_cast<double>(m_TimerInterval/(m_dbEndX*1000.0));//每一次采样所需时间对应X坐标的长度
|
||||||
// m_dbResolutionY=static_cast<double>(1/m_dbEndY);
|
|
||||||
m_nDivisionX=10;
|
m_nDivisionX=10;
|
||||||
m_nDivisionY=10;
|
m_nDivisionY=10;
|
||||||
|
m_DrawGraph.SetCoordinateLabel(_T("时间(s)"),_T("位置(mm)"));
|
||||||
}
|
}
|
||||||
else
|
else if(((CButton *)GetDlgItem(IDC_RADIO_CANVAS_SPEED_TIME))->GetCheck())
|
||||||
|
{
|
||||||
|
m_dbResolutionX=static_cast<double>(m_TimerInterval/(m_dbEndX*1000.0));//每一次采样所需时间对应X坐标的长度
|
||||||
|
m_nDivisionX=10;
|
||||||
|
m_nDivisionY=10;
|
||||||
|
m_DrawGraph.SetCoordinateLabel(_T("时间(s)"),_T("速度(mm/s)"));
|
||||||
|
}
|
||||||
|
else if(((CButton *)GetDlgItem(IDC_RADIO_CANVAS_SPEED_POSTION))->GetCheck())
|
||||||
{
|
{
|
||||||
//m_dbStartY=0;
|
//m_dbStartY=0;
|
||||||
//m_dbEndY=50;
|
//m_dbEndY=50;
|
||||||
@@ -691,11 +594,11 @@ void CSO7_Send_Parameter::OnBnClickedButtonStartSampleScurve()
|
|||||||
//m_dbResolutionY=static_cast<double>(1/m_dbEndY);
|
//m_dbResolutionY=static_cast<double>(1/m_dbEndY);
|
||||||
m_nDivisionX=10;
|
m_nDivisionX=10;
|
||||||
m_nDivisionY=10;
|
m_nDivisionY=10;
|
||||||
|
m_DrawGraph.SetCoordinateLabel(_T("位置(mm)"),_T("速度(mm/s)"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
nCount=0;
|
nCount=0;
|
||||||
m_dataGraph.RemoveAll();
|
m_dataGraphY.RemoveAll();
|
||||||
m_DrawGraph.SetGraphyView(m_dbStartX,m_dbEndX,m_dbStartY,m_dbEndY,m_nDivisionX,m_nDivisionY);
|
m_DrawGraph.SetGraphyView(m_dbStartX,m_dbEndX,m_dbStartY,m_dbEndY,m_nDivisionX,m_nDivisionY);
|
||||||
m_DrawGraph.SetResolution(m_dbResolutionX,m_dbResolutionY);
|
m_DrawGraph.SetResolution(m_dbResolutionX,m_dbResolutionY);
|
||||||
m_TimerCnt=static_cast<int>((m_SampleTime*1000)/m_TimerInterval);
|
m_TimerCnt=static_cast<int>((m_SampleTime*1000)/m_TimerInterval);
|
||||||
@@ -709,20 +612,225 @@ void CSO7_Send_Parameter::OnBnClickedButtonStopSampleScurve()
|
|||||||
{
|
{
|
||||||
m_TimerCnt=0;
|
m_TimerCnt=0;
|
||||||
}
|
}
|
||||||
|
//================================================================================================
|
||||||
|
void CSO7_Send_Parameter::Sample_Speed_Time_Curve()
|
||||||
|
{
|
||||||
|
if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_X))->GetCheck())
|
||||||
|
{
|
||||||
|
m_pSO7_Proto->g_machine.x._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.x._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution);
|
||||||
|
m_duration=m_FinishTime-m_StartTime;
|
||||||
|
m_dataGraphY.Add(static_cast<double>(((1000.0*(fabs(m_pSO7_Proto->g_machine.x._d_cur_pos_-m_dPos)))/m_duration)));
|
||||||
|
m_dPos=m_pSO7_Proto->g_machine.x._d_cur_pos_;
|
||||||
|
}
|
||||||
|
else if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_Y))->GetCheck())
|
||||||
|
{
|
||||||
|
m_pSO7_Proto->g_machine.y._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.y._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.y_axis._scale_resolution);
|
||||||
|
m_duration=m_FinishTime-m_StartTime;
|
||||||
|
m_dataGraphY.Add(static_cast<double>(1000.0*(fabs(m_pSO7_Proto->g_machine.y._d_cur_pos_-m_dPos)/m_duration)));
|
||||||
|
m_dPos=m_pSO7_Proto->g_machine.y._d_cur_pos_;
|
||||||
|
}
|
||||||
|
else if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_Z))->GetCheck())
|
||||||
|
{
|
||||||
|
m_pSO7_Proto->g_machine.z._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.z._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.z_axis._scale_resolution);
|
||||||
|
m_duration=m_FinishTime-m_StartTime;
|
||||||
|
m_dataGraphY.Add(static_cast<double>(1000.0*(fabs(m_pSO7_Proto->g_machine.z._d_cur_pos_-m_dPos)/m_duration)));
|
||||||
|
m_dPos=m_pSO7_Proto->g_machine.z._d_cur_pos_;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
//================================================================================================
|
//================================================================================================
|
||||||
BOOL CSO7_Send_Parameter::OnEraseBkgnd(CDC* pDC)
|
void CSO7_Send_Parameter::Sample_Position_Time_Curve()
|
||||||
{
|
{
|
||||||
//UNREFERENCED_PARAMETER(pDC);
|
if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_X))->GetCheck())
|
||||||
//return TRUE;
|
{
|
||||||
return CDialog::OnEraseBkgnd(pDC);
|
m_pSO7_Proto->g_machine.x._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.x._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution);
|
||||||
}
|
m_duration=m_FinishTime-m_StartTime;
|
||||||
|
m_dataGraphY.Add(m_pSO7_Proto->g_machine.x._d_cur_pos_);
|
||||||
void CSO7_Send_Parameter::OnBnClickedRadioCanvasSpeedTime()
|
if (m_MotionDir)
|
||||||
{
|
{
|
||||||
// TODO: Add your control notification handler code here
|
if((m_pSO7_Proto->g_machine.x._d_cur_pos_-m_dPos)<0.0)
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("X Reverse:%f->%f!!!"),m_dPos,m_pSO7_Proto->g_machine.x._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("X Normal:%f->%f"),m_dPos,m_pSO7_Proto->g_machine.x._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if((m_pSO7_Proto->g_machine.x._d_cur_pos_-m_dPos)>0.0)
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("X Reverse:%f->%f!!!"),m_dPos,m_pSO7_Proto->g_machine.x._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("X Normal:%f->%f"),m_dPos,m_pSO7_Proto->g_machine.x._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
m_dPos=m_pSO7_Proto->g_machine.x._d_cur_pos_;
|
||||||
|
}
|
||||||
|
else if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_Y))->GetCheck())
|
||||||
|
{
|
||||||
|
m_pSO7_Proto->g_machine.y._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.y._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.y_axis._scale_resolution);
|
||||||
|
m_duration=m_FinishTime-m_StartTime;
|
||||||
|
m_dataGraphY.Add(m_pSO7_Proto->g_machine.y._d_cur_pos_);
|
||||||
|
if (m_MotionDir)
|
||||||
|
{
|
||||||
|
if((m_pSO7_Proto->g_machine.y._d_cur_pos_-m_dPos)<0.0)
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("Y Reverse:%f->%f!!!"),m_dPos,m_pSO7_Proto->g_machine.y._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("Y Normal:%f->%f"),m_dPos,m_pSO7_Proto->g_machine.y._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if((m_pSO7_Proto->g_machine.y._d_cur_pos_-m_dPos)>0.0)
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("Y Reverse:%f->%f!!!"),m_dPos,m_pSO7_Proto->g_machine.y._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("Y Normal:%f->%f"),m_dPos,m_pSO7_Proto->g_machine.y._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
m_dPos=m_pSO7_Proto->g_machine.y._d_cur_pos_;
|
||||||
|
}
|
||||||
|
else if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_Z))->GetCheck())
|
||||||
|
{
|
||||||
|
m_pSO7_Proto->g_machine.z._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.z._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.z_axis._scale_resolution);
|
||||||
|
m_duration=m_FinishTime-m_StartTime;
|
||||||
|
m_dataGraphY.Add(m_pSO7_Proto->g_machine.z._d_cur_pos_);
|
||||||
|
if (m_MotionDir)
|
||||||
|
{
|
||||||
|
if((m_pSO7_Proto->g_machine.z._d_cur_pos_-m_dPos)<0.0)
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("Z Reverse:%f->%f!!!"),m_dPos,m_pSO7_Proto->g_machine.z._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("Z Normal:%f->%f"),m_dPos,m_pSO7_Proto->g_machine.z._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if((m_pSO7_Proto->g_machine.z._d_cur_pos_-m_dPos)>0.0)
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("Z Reverse:%f->%f!!!"),m_dPos,m_pSO7_Proto->g_machine.z._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_csMSG.Format(_T("Z Normal:%f->%f"),m_dPos,m_pSO7_Proto->g_machine.z._d_cur_pos_);
|
||||||
|
OutputWithScroll(m_csMSG,m_edMSG);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
m_dPos=m_pSO7_Proto->g_machine.z._d_cur_pos_;
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
//================================================================================================
|
||||||
|
void CSO7_Send_Parameter::Sample_Speed_Position_Curve()
|
||||||
|
{
|
||||||
|
if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_X))->GetCheck())
|
||||||
|
{
|
||||||
|
m_pSO7_Proto->g_machine.x._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.x._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution);
|
||||||
|
m_duration=m_FinishTime-m_StartTime;
|
||||||
|
m_dataGraphY.Add(static_cast<double>(((1000.0*(fabs(m_pSO7_Proto->g_machine.x._d_cur_pos_-m_dPos)))/m_duration)));
|
||||||
|
m_dPos=m_pSO7_Proto->g_machine.x._d_cur_pos_;
|
||||||
|
}
|
||||||
|
else if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_Y))->GetCheck())
|
||||||
|
{
|
||||||
|
m_pSO7_Proto->g_machine.y._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.y._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.y_axis._scale_resolution);
|
||||||
|
m_duration=m_FinishTime-m_StartTime;
|
||||||
|
m_dataGraphY.Add(static_cast<double>(1000.0*(fabs(m_pSO7_Proto->g_machine.y._d_cur_pos_-m_dPos)/m_duration)));
|
||||||
|
m_dPos=m_pSO7_Proto->g_machine.y._d_cur_pos_;
|
||||||
|
}
|
||||||
|
else if(((CButton *)GetDlgItem(IDC_RADIO_SAMPLE_Z))->GetCheck())
|
||||||
|
{
|
||||||
|
m_pSO7_Proto->g_machine.z._d_cur_pos_ = m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.z._scale_pos._long_, m_pSO7_Proto->g_machine.s_machine_config.z_axis._scale_resolution);
|
||||||
|
m_duration=m_FinishTime-m_StartTime;
|
||||||
|
m_dataGraphY.Add(static_cast<double>(1000.0*(fabs(m_pSO7_Proto->g_machine.z._d_cur_pos_-m_dPos)/m_duration)));
|
||||||
|
m_dPos=m_pSO7_Proto->g_machine.z._d_cur_pos_;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
//================================================================================================
|
||||||
|
void CSO7_Send_Parameter::OnTimer(UINT_PTR nIDEvent)
|
||||||
|
{
|
||||||
|
USES_CONVERSION;
|
||||||
|
switch(nIDEvent)
|
||||||
|
{
|
||||||
|
case 1:
|
||||||
|
{
|
||||||
|
if (m_pSO7_Proto)
|
||||||
|
{
|
||||||
|
if (m_pSO7_Proto->g_machine.s_status._machine_running)
|
||||||
|
{
|
||||||
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_AXIS_XYZ();
|
||||||
|
m_FinishTime=clock();
|
||||||
|
if(((CButton *)GetDlgItem(IDC_RADIO_CANVAS_SPEED_TIME))->GetCheck())
|
||||||
|
{
|
||||||
|
Sample_Speed_Time_Curve();
|
||||||
|
}
|
||||||
|
else if (((CButton *)GetDlgItem(IDC_RADIO_CANVAS_SPEED_POSTION))->GetCheck())
|
||||||
|
{
|
||||||
|
Sample_Speed_Position_Curve();
|
||||||
|
}
|
||||||
|
else if (((CButton *)GetDlgItem(IDC_RADIO_CANVAS_POSTION_TIME))->GetCheck())
|
||||||
|
{
|
||||||
|
Sample_Position_Time_Curve();
|
||||||
|
}
|
||||||
|
if (m_TimerCnt<=nCount)
|
||||||
|
{
|
||||||
|
KillTimer(1);
|
||||||
|
INT_PTR nTmpCount = m_dataGraphY.GetCount();
|
||||||
|
double dbData(0.0);
|
||||||
|
dbData = m_dataGraphY.ElementAt(0);
|
||||||
|
m_dbEndY=dbData;
|
||||||
|
m_dbStartY=dbData;
|
||||||
|
for(INT_PTR i=10; i<nTmpCount; i++)
|
||||||
|
{
|
||||||
|
dbData = m_dataGraphY.ElementAt(i);
|
||||||
|
if((dbData-m_dbEndY)>0.0 &&(dbData-m_dbEndY)<MAX_SAMPLE_DIFF_VALUE)
|
||||||
|
m_dbEndY=dbData;
|
||||||
|
if((m_dbStartY-dbData)>0.0 &&(m_dbStartY-dbData)<MAX_SAMPLE_DIFF_VALUE)
|
||||||
|
m_dbStartY=dbData;
|
||||||
|
}
|
||||||
|
m_dbEndY+=fabs((m_dbEndY-m_dbStartY)*0.05);
|
||||||
|
m_dbResolutionY=static_cast<double>(1.0/(m_dbEndY-m_dbStartY));
|
||||||
|
m_DrawGraph.SetGraphyView(m_dbStartX,m_dbEndX,m_dbStartY,m_dbEndY,m_nDivisionX,m_nDivisionY);
|
||||||
|
m_DrawGraph.SetResolution(m_dbResolutionX,m_dbResolutionY);
|
||||||
|
m_DrawGraph.LoadGraphyYAxisData(m_dataGraphY);
|
||||||
|
}
|
||||||
|
|
||||||
|
nCount++;
|
||||||
|
m_StartTime=clock();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
CDialog::OnTimer(nIDEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//#pragma endregion
|
||||||
//=====================================================================================
|
//=====================================================================================
|
||||||
//Print message on edit control
|
//Print message on edit control
|
||||||
void CSO7_Send_Parameter::OutputWithScroll(const CString &strNewText,CEdit &edtOutput)
|
void CSO7_Send_Parameter::OutputWithScroll(const CString &strNewText,CEdit &edtOutput)
|
||||||
|
|||||||
@@ -7,93 +7,98 @@
|
|||||||
|
|
||||||
class CSO7_Send_Parameter : public CDialog
|
class CSO7_Send_Parameter : public CDialog
|
||||||
{
|
{
|
||||||
DECLARE_DYNAMIC(CSO7_Send_Parameter)
|
DECLARE_DYNAMIC(CSO7_Send_Parameter)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CSO7_Send_Parameter(CWnd* pParent = NULL); // standard constructor
|
CSO7_Send_Parameter(CWnd* pParent = NULL); // standard constructor
|
||||||
virtual ~CSO7_Send_Parameter();
|
virtual ~CSO7_Send_Parameter();
|
||||||
|
|
||||||
// Dialog Data
|
// Dialog Data
|
||||||
enum { IDD = IDD_S07_UTIL_SEND_PARAMETER };
|
enum { IDD = IDD_S07_UTIL_SEND_PARAMETER };
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||||
virtual BOOL OnInitDialog();
|
virtual BOOL OnInitDialog();
|
||||||
afx_msg void OnTimer(UINT_PTR nIDEvent);
|
afx_msg void OnTimer(UINT_PTR nIDEvent);
|
||||||
afx_msg void OnPaint();
|
afx_msg void OnPaint();
|
||||||
void OnDraw(CDC* pDC);
|
void OnDraw(CDC* pDC);
|
||||||
afx_msg BOOL OnEraseBkgnd(CDC* pDC);
|
afx_msg BOOL OnEraseBkgnd(CDC* pDC);
|
||||||
DECLARE_MESSAGE_MAP()
|
DECLARE_MESSAGE_MAP()
|
||||||
|
|
||||||
public:
|
public:
|
||||||
clock_t m_StartTime, m_FinishTime;
|
clock_t m_StartTime, m_FinishTime;
|
||||||
double m_duration;
|
double m_duration;
|
||||||
CString m_csMSG;
|
CString m_csMSG;
|
||||||
CEdit m_edMSG;
|
CEdit m_edMSG;
|
||||||
DataBuff m_dataGraph;
|
DataBuff m_dataGraphX;
|
||||||
CDrawGraph m_DrawGraph;
|
DataBuff m_dataGraphY;
|
||||||
double m_dbStartX,m_dbEndX,m_dbStartY,m_dbEndY;
|
CDrawGraph m_DrawGraph;
|
||||||
int m_nDivisionX,m_nDivisionY;
|
double m_dbStartX,m_dbEndX,m_dbStartY,m_dbEndY;
|
||||||
int nCount;
|
int m_nDivisionX,m_nDivisionY;
|
||||||
double m_StartPos,m_dPos,m_dMoveDis;
|
int nCount;
|
||||||
double m_SampleTime;
|
double m_StartPos,m_dPos,m_dMoveDis;
|
||||||
int m_TimerInterval;
|
double m_SampleTime;
|
||||||
double m_dbResolutionX,m_dbResolutionY;
|
int m_TimerInterval;
|
||||||
CRect CanvasRect;
|
double m_dbResolutionX,m_dbResolutionY;
|
||||||
int m_TimerCnt;
|
CRect CanvasRect;
|
||||||
|
int m_TimerCnt;
|
||||||
|
bool m_MotionDir;
|
||||||
public:
|
public:
|
||||||
CString m_csBaseSpeedX[5];
|
CString m_csBaseSpeedX[5];
|
||||||
CString m_csMaxSpeedX[5];
|
CString m_csMaxSpeedX[5];
|
||||||
CString m_csStartSpeedX[5];
|
CString m_csStartSpeedX[5];
|
||||||
CString m_csFreshSpeedX[5];
|
CString m_csFreshSpeedX[5];
|
||||||
CString m_csSlowDisX[5];
|
CString m_csSlowDisX[5];
|
||||||
|
|
||||||
CString m_csBaseSpeedY[5];
|
CString m_csBaseSpeedY[5];
|
||||||
CString m_csMaxSpeedY[5];
|
CString m_csMaxSpeedY[5];
|
||||||
CString m_csStartSpeedY[5];
|
CString m_csStartSpeedY[5];
|
||||||
CString m_csFreshSpeedY[5];
|
CString m_csFreshSpeedY[5];
|
||||||
CString m_csSlowDisY[5];
|
CString m_csSlowDisY[5];
|
||||||
|
|
||||||
CString m_csBaseSpeedZ[5];
|
CString m_csBaseSpeedZ[5];
|
||||||
CString m_csMaxSpeedZ[5];
|
CString m_csMaxSpeedZ[5];
|
||||||
CString m_csStartSpeedZ[5];
|
CString m_csStartSpeedZ[5];
|
||||||
CString m_csFreshSpeedZ[5];
|
CString m_csFreshSpeedZ[5];
|
||||||
CString m_csSlowDisZ[5];
|
CString m_csSlowDisZ[5];
|
||||||
|
|
||||||
CString m_csWheelbaseX;
|
CString m_csWheelbaseX;
|
||||||
CString m_csWheelbaseY;
|
CString m_csWheelbaseY;
|
||||||
CString m_csWheelbaseZ;
|
CString m_csWheelbaseZ;
|
||||||
CString m_csPulseNum;
|
CString m_csPulseNum;
|
||||||
|
|
||||||
CString m_csPercisionX;
|
CString m_csPercisionX;
|
||||||
CString m_csPercisionY;
|
CString m_csPercisionY;
|
||||||
CString m_csPercisionZ;
|
CString m_csPercisionZ;
|
||||||
|
|
||||||
CString m_csNegWorkLimitX;
|
CString m_csNegWorkLimitX;
|
||||||
CString m_csNegWorkLimitY;
|
CString m_csNegWorkLimitY;
|
||||||
CString m_csNegWorkLimitZ;
|
CString m_csNegWorkLimitZ;
|
||||||
|
|
||||||
CString m_csPosWorkLimitX;
|
CString m_csPosWorkLimitX;
|
||||||
CString m_csPosWorkLimitY;
|
CString m_csPosWorkLimitY;
|
||||||
CString m_csPosWorkLimitZ;
|
CString m_csPosWorkLimitZ;
|
||||||
|
|
||||||
|
|
||||||
CStatusBarCtrl m_StatusBar;
|
CStatusBarCtrl m_StatusBar;
|
||||||
|
|
||||||
void ShowParameterOnEdit();
|
void ShowParameterOnEdit();
|
||||||
void ChangeParameterOnEdit();
|
void ChangeParameterOnEdit();
|
||||||
|
|
||||||
afx_msg void OnBnClickedOk();
|
afx_msg void OnBnClickedOk();
|
||||||
afx_msg void OnBnClickedButtonBrowse();
|
afx_msg void OnBnClickedButtonBrowse();
|
||||||
CString m_csIniFile;
|
CString m_csIniFile;
|
||||||
CString m_IniFile;
|
CString m_IniFile;
|
||||||
afx_msg void OnBnClickedButtonSaveParameter();
|
afx_msg void OnBnClickedButtonSaveParameter();
|
||||||
afx_msg void OnBnClickedButtonSave();
|
afx_msg void OnBnClickedButtonSave();
|
||||||
afx_msg void OnBnClickedButtonReadParameterFromController();
|
afx_msg void OnBnClickedButtonReadParameterFromController();
|
||||||
afx_msg void OnEnKillfocusEditSampleScurveDis();
|
afx_msg void OnEnKillfocusEditSampleScurveDis();
|
||||||
afx_msg void OnEnKillfocusEditSampleTimeScurve();
|
afx_msg void OnEnKillfocusEditSampleTimeScurve();
|
||||||
afx_msg void OnBnClickedButtonStartSampleScurve();
|
afx_msg void OnBnClickedButtonStartSampleScurve();
|
||||||
afx_msg void OnBnClickedButtonStopSampleScurve();
|
afx_msg void OnBnClickedButtonStopSampleScurve();
|
||||||
afx_msg void OnBnClickedRadioCanvasSpeedTime();
|
void Sample_Speed_Time_Curve();
|
||||||
|
void Sample_Speed_Position_Curve();
|
||||||
|
void Sample_Position_Time_Curve();
|
||||||
|
|
||||||
void OutputWithScroll(const CString &strNewText,CEdit &edtOutput);
|
void OutputWithScroll(const CString &strNewText,CEdit &edtOutput);
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
|
|
||||||
#include "So7_Option.h"
|
#include "So7_Option.h"
|
||||||
#include "afxdialogex.h"
|
#include "afxdialogex.h"
|
||||||
//#define _RELEASE_ONLY_ONE_FUNCTION
|
#define _RELEASE_ONLY_ONE_FUNCTION
|
||||||
|
|
||||||
//CSerial* m_pSO7_Serial=NULL;
|
//CSerial* m_pSO7_Serial=NULL;
|
||||||
CPSerial* m_pSO7_PCDSerial=NULL;
|
CPSerial* m_pSO7_PCDSerial=NULL;
|
||||||
@@ -100,13 +100,13 @@ BOOL CSo7_Option::OnInitDialog()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
((CButton *)GetDlgItem(IDC_RADIO_CONTROLLER))->SetCheck(FALSE);
|
((CButton *)GetDlgItem(IDC_RADIO_CONTROLLER))->SetCheck(TRUE);
|
||||||
((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_SDK3000))->SetCheck(FALSE);
|
((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_SDK3000))->SetCheck(FALSE);
|
||||||
((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_SV2000E))->SetCheck(FALSE);
|
((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_SV2000E))->SetCheck(FALSE);
|
||||||
((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_TC4000))->SetCheck(FALSE);
|
((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_TC4000))->SetCheck(FALSE);
|
||||||
((CButton *)GetDlgItem(IDC_RADIO_KEYENCE_LASER))->SetCheck(FALSE);
|
((CButton *)GetDlgItem(IDC_RADIO_KEYENCE_LASER))->SetCheck(FALSE);
|
||||||
((CButton *)GetDlgItem(IDC_RADIO_SO7_IP_CAMERA))->SetCheck(FALSE);
|
((CButton *)GetDlgItem(IDC_RADIO_SO7_IP_CAMERA))->SetCheck(FALSE);
|
||||||
((CButton *)GetDlgItem(IDC_RADIO__SO7_RS232))->SetCheck(TRUE);
|
((CButton *)GetDlgItem(IDC_RADIO__SO7_RS232))->SetCheck(FALSE);
|
||||||
((CButton *)GetDlgItem(IDC_RADIO_SO7_VERIFICATION_ALGORITHM))->SetCheck(FALSE);
|
((CButton *)GetDlgItem(IDC_RADIO_SO7_VERIFICATION_ALGORITHM))->SetCheck(FALSE);
|
||||||
|
|
||||||
#ifdef _RELEASE_ONLY_ONE_FUNCTION
|
#ifdef _RELEASE_ONLY_ONE_FUNCTION
|
||||||
|
|||||||
@@ -744,8 +744,9 @@
|
|||||||
#define IDC_EDIT_TEST_KEYENCE_SETFOCUS 1650
|
#define IDC_EDIT_TEST_KEYENCE_SETFOCUS 1650
|
||||||
#define IDC_RADIO_SO7_VERIFICATION_ALGORITHM 1651
|
#define IDC_RADIO_SO7_VERIFICATION_ALGORITHM 1651
|
||||||
#define IDC_BUTTON_SO7_MANUAL_MACHINEREAD_POS 1652
|
#define IDC_BUTTON_SO7_MANUAL_MACHINEREAD_POS 1652
|
||||||
#define IDC_RADIO1 1653
|
|
||||||
#define IDC_RADIO_SO7_MANUAL_MACHINE_COMMON_CMD4 1653
|
#define IDC_RADIO_SO7_MANUAL_MACHINE_COMMON_CMD4 1653
|
||||||
|
#define IDC_RADIO1 1654
|
||||||
|
#define IDC_RADIO_CANVAS_SPEED_POSTION 1654
|
||||||
|
|
||||||
// Next default values for new objects
|
// Next default values for new objects
|
||||||
//
|
//
|
||||||
@@ -753,7 +754,7 @@
|
|||||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||||
#define _APS_NEXT_RESOURCE_VALUE 168
|
#define _APS_NEXT_RESOURCE_VALUE 168
|
||||||
#define _APS_NEXT_COMMAND_VALUE 32771
|
#define _APS_NEXT_COMMAND_VALUE 32771
|
||||||
#define _APS_NEXT_CONTROL_VALUE 1654
|
#define _APS_NEXT_CONTROL_VALUE 1655
|
||||||
#define _APS_NEXT_SYMED_VALUE 101
|
#define _APS_NEXT_SYMED_VALUE 101
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user