diff --git a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/CMDDefines.H b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/CMDDefines.H index 9fe3d6d..84b2ed2 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/CMDDefines.H +++ b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/CMDDefines.H @@ -1,4 +1,6 @@ #pragma once +#define MAX_BUFF_SIZE 0x200 + enum EEntityType { etUnknow = 0, diff --git a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/CSO7_CMD.H b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/CSO7_CMD.H index 4880f92..b4cf711 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/CSO7_CMD.H +++ b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/CSO7_CMD.H @@ -19,9 +19,9 @@ public: virtual int get_type() = 0; - virtual void SaveCmd(CString _filename,int _savetype=0) = 0; + virtual void SaveCmd(FILE* _filestream,int _savetype=0) = 0; - virtual void ReadCmd(CString _filename,int _savetype=0) = 0; + virtual void ReadCmd(FILE* _filestream,int _savetype=0) = 0; virtual void GetPoint(int type_of_point, int theo_or_meas, diff --git a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Point.cpp b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Point.cpp index 971222d..78d8282 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Point.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Point.cpp @@ -89,14 +89,86 @@ void CSo7_CNC_Point::PutPoint(int type_of_point,int theo_or_meas,int coord_sys,C } //=================================================== -void CSo7_CNC_Point::SaveCmd(CString _filename,int _savetype) +void CSo7_CNC_Point::SaveCmd(FILE* _filestream,int _savetype) { - UNREFERENCED_PARAMETER(_filename); + m_TotalLines=8; UNREFERENCED_PARAMETER(_savetype); + fprintf(_filestream,"[etPoint]\n"); + fprintf(_filestream,"ENTITYTYPE=%d\n", etPoint); + fprintf(_filestream,"TOTALLINES=%d\n", m_TotalLines); + fprintf(_filestream,"ID=%d\n", m_ID); + fprintf(_filestream,"POSX=%9.6f\n",m_Pos.x); + fprintf(_filestream,"POSY=%9.6f\n",m_Pos.y); + fprintf(_filestream,"POSZ=%9.6f\n",m_Pos.z); + fprintf(_filestream,";\n"); } //=================================================== -void CSo7_CNC_Point::ReadCmd(CString _filename,int _savetype) +void CSo7_CNC_Point::ReadCmd(FILE* _filestream,int _savetype) { - UNREFERENCED_PARAMETER(_filename); UNREFERENCED_PARAMETER(_savetype); + + char szLine[MAX_BUFF_SIZE]; + char *token = NULL; + char seps[] = " =,\t\n"; + char cTemp[20]={0}; + m_TotalLines=0; + fgets(szLine,MAX_BUFF_SIZE,_filestream);//read a line + if((szLine[0]!=';')&&(strlen(szLine)>2)) + { + token = strtok(szLine,seps); + if(!_stricmp(token,"TOTALLINES")) + { + token = strtok( NULL, seps); + if (token) + { + strcpy(cTemp,token); + m_TotalLines=atoi(cTemp); + } + } + } + for (int i=0;i<(m_TotalLines-2);i++) + { + fgets(szLine,MAX_BUFF_SIZE,_filestream);//read a line + if((szLine[0]!=';')&&(strlen(szLine)>2)) + { + token = strtok(szLine,seps); + if(!_stricmp(token, "ID")) + { + token = strtok( NULL, seps); + if (token) + { + strcpy(cTemp,token); + m_ID=atoi(cTemp); + } + } + else if(!_stricmp(token, "POSX")) + { + token = strtok( NULL, seps); + if (token) + { + strcpy(cTemp,token); + m_Pos.x=atof(cTemp); + } + } + else if(!_stricmp(token, "POSY")) + { + token = strtok( NULL, seps); + if (token) + { + strcpy(cTemp,token); + m_Pos.y=atof(cTemp); + } + } + else if(!_stricmp(token, "POSZ")) + { + token = strtok( NULL, seps); + if (token) + { + strcpy(cTemp,token); + m_Pos.z=atof(cTemp); + } + } + } + + } } \ No newline at end of file diff --git a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Point.h b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Point.h index b9662c3..620653c 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Point.h +++ b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Point.h @@ -9,14 +9,15 @@ public: CSo7_CNC_Point& operator=(const CSo7_CNC_Point& _CNC_Point); protected: + int m_TotalLines; void Init(); public: CPoint3 m_Pos; CSO7_CMD* Copy(); int get_id(); int get_type(); - void SaveCmd(CString _filename,int _savetype=0); - void ReadCmd(CString _filename,int _savetype=0); + void SaveCmd(FILE* _filestream,int _savetype=0); + void ReadCmd(FILE* _filestream,int _savetype=0); void GetPoint(int type_of_point, int theo_or_meas, diff --git a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Program.cpp b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Program.cpp index bcb80a8..def04fc 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Program.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Program.cpp @@ -1,6 +1,7 @@ #include "StdAfx.h" #include "CSO7_CMD.h" +#include "So7_CNC_Point.h" #include "So7_CNC_Program.h" //===================================== @@ -73,14 +74,71 @@ BOOL CSo7_CNC_Program::IsEmpty() }; //================================================================================================ -void CSo7_CNC_Program::Load(CString _csProgFile) +void CSo7_CNC_Program::open() { - UNREFERENCED_PARAMETER(_csProgFile); + FILE* m_pLoadFile=NULL; + char szLine[MAX_BUFF_SIZE]; + char *token = NULL; + char seps[] = " =,\t\n"; + char cTemp[20]={0}; + int EntityType=0; + _wfopen_s(&m_pLoadFile,m_CncProgFileName,_T("rt")); + + if(m_pLoadFile) + { + while (!feof(m_pLoadFile)) + { + fgets(szLine,MAX_BUFF_SIZE,m_pLoadFile);//read a line + if((szLine[0]!=';')&&(strlen(szLine)>2)) + { + token = strtok(szLine,seps); + if(!_stricmp(token,"ENTITYTYPE")) + { + token = strtok( NULL, seps); + if (token) + { + strcpy(cTemp,token); + EntityType=atoi(cTemp); + Load(m_pLoadFile,EntityType); + } + } + } + } + } +}; +//================================================================================================ +void CSo7_CNC_Program::Load(FILE* _pLoadFile,int _EntityType) +{ + switch(_EntityType) + { + case etPoint: + { + CPoint3 Pos; + CSO7_CMD* pEntity=new CSo7_CNC_Point(Pos); + pEntity->ReadCmd(_pLoadFile); + m_CNC_element.push_back(pEntity); + m_Program_Number++; + } + break; + default: + break; + } }; //================================================================================================ void CSo7_CNC_Program::Save() { + FILE* m_pOutFile=NULL; + + _wfopen_s(&m_pOutFile, m_CncProgFileName, _T("wt")); + if (m_pOutFile) + { + for(int i=0;iSaveCmd(m_pOutFile); + + fclose(m_pOutFile); + } + }; @@ -98,3 +156,20 @@ void CSo7_CNC_Program::Initialize(void) { InitNew(); }; +//================================================================================================ + +CString CSo7_CNC_Program::GetEntityName(int _EntityType) +{ + CString rCStr(""); + switch(_EntityType) + { + case etPoint: + { + rCStr=_T("CNC Point"); + } + break; + default: + break; + } + return rCStr; +} diff --git a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Program.h b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Program.h index 48357a2..b8c409e 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Program.h +++ b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/Program/So7_CNC_Program.h @@ -5,7 +5,8 @@ public: CSo7_CNC_Program(void); ~CSo7_CNC_Program(void); void Initialize(); - void Load(CString _csProgName); + void Load(FILE* _pLoadFile,int _EntityType); + void open(); void Save(); void Close(); void AddCncStep(CSO7_CMD* pProgStep); @@ -13,6 +14,7 @@ public: int InitNew(); void RemoveAll(); BOOL IsEmpty(); + CString GetEntityName(int _EntityType); std::vector m_CNC_element; CSO7_CMD* _pCurrCncStep; int m_Program_Number; diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/UtilityDebug.Log b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/UtilityDebug.Log index fb76f67..9d2a80e 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/UtilityDebug.Log +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/UtilityDebug.Log @@ -2037,3 +2037,64 @@ Exit: Exit_SO7Usb Destruct Cso7_Proto. Construct Cso7_Proto. 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. +Destruct Cso7_Proto. +Construct Cso7_Proto. +Init:Open device succeed . +_start_machine +Exit: Exit_SO7Usb +Init:Open device succeed . +_start_machine +Exit: Exit_SO7Usb +Init:Open device succeed . +_start_machine +Exit: Exit_SO7Usb +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. diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/Utility_Config.ini b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/Utility_Config.ini index 2cc1880..93bc1db 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/Utility_Config.ini +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/Debug/Utility_Config.ini @@ -3,31 +3,31 @@ SPEED_BASE_X1=5 SPEED_MAX_X1=168 SPEED_START_X1=28 SPEED_FRESH_X1=10 -SPEED_SLOW_X1=0.510 +SPEED_SLOW_X1=0.509 ; SPEED_BASE_X2=3 SPEED_MAX_X2=50 SPEED_START_X2=10 SPEED_FRESH_X2=10 -SPEED_SLOW_X2=0.110 +SPEED_SLOW_X2=0.109 ; SPEED_BASE_X3=2 SPEED_MAX_X3=5 SPEED_START_X3=5 -SPEED_FRESH_X3=10 +SPEED_FRESH_X3=100 SPEED_SLOW_X3=0.001 ; SPEED_BASE_X4=2 SPEED_MAX_X4=0 SPEED_START_X4=50 -SPEED_FRESH_X4=10 +SPEED_FRESH_X4=100 SPEED_SLOW_X4=0.001 ; -SPEED_BASE_X5=5 +SPEED_BASE_X5=2 SPEED_MAX_X5=0 SPEED_START_X5=80 -SPEED_FRESH_X5=10 -SPEED_SLOW_X5=0.001 +SPEED_FRESH_X5=100 +SPEED_SLOW_X5=0.000 ; SPEED_BASE_Y1=5 SPEED_MAX_Y1=168 @@ -43,59 +43,59 @@ SPEED_SLOW_Y2=0.200 ; SPEED_BASE_Y3=2 SPEED_MAX_Y3=5 -SPEED_START_Y3=3 -SPEED_FRESH_Y3=10 +SPEED_START_Y3=5 +SPEED_FRESH_Y3=100 SPEED_SLOW_Y3=0.001 ; SPEED_BASE_Y4=2 SPEED_MAX_Y4=0 SPEED_START_Y4=50 -SPEED_FRESH_Y4=10 +SPEED_FRESH_Y4=100 SPEED_SLOW_Y4=0.001 ; -SPEED_BASE_Y5=5 +SPEED_BASE_Y5=2 SPEED_MAX_Y5=0 SPEED_START_Y5=80 -SPEED_FRESH_Y5=10 -SPEED_SLOW_Y5=0.001 +SPEED_FRESH_Y5=100 +SPEED_SLOW_Y5=0.000 ; SPEED_BASE_Z1=5 SPEED_MAX_Z1=130 SPEED_START_Z1=28 SPEED_FRESH_Z1=10 -SPEED_SLOW_Z1=0.510 +SPEED_SLOW_Z1=0.509 ; SPEED_BASE_Z2=3 SPEED_MAX_Z2=60 SPEED_START_Z2=10 SPEED_FRESH_Z2=10 -SPEED_SLOW_Z2=0.110 +SPEED_SLOW_Z2=0.109 ; SPEED_BASE_Z3=2 SPEED_MAX_Z3=5 SPEED_START_Z3=5 -SPEED_FRESH_Z3=10 +SPEED_FRESH_Z3=100 SPEED_SLOW_Z3=0.001 ; SPEED_BASE_Z4=2 SPEED_MAX_Z4=0 SPEED_START_Z4=50 -SPEED_FRESH_Z4=10 +SPEED_FRESH_Z4=100 SPEED_SLOW_Z4=0.001 ; -SPEED_BASE_Z5=5 +SPEED_BASE_Z5=2 SPEED_MAX_Z5=0 SPEED_START_Z5=80 -SPEED_FRESH_Z5=10 -SPEED_SLOW_Z5=0.001 +SPEED_FRESH_Z5=100 +SPEED_SLOW_Z5=0.000 ; -X_MOTOR_PRECISION=0.010 -Y_MOTOR_PRECISION=0.010 +X_MOTOR_PRECISION=0.009 +Y_MOTOR_PRECISION=0.009 Z_MOTOR_PRECISION=0.100 ; X_MOTOR_WHEELBASE=19.990 -Y_MOTOR_WHEELBASE=20.000 -Z_MOTOR_WHEELBASE=3.000 +Y_MOTOR_WHEELBASE=31.556 +Z_MOTOR_WHEELBASE=2.999 ; MOTOR_PULSE_NUM=10000 ; diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc index e7201e9..609ecde 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc @@ -746,7 +746,7 @@ END IDD_SO7_UTIL_PROGRAM DIALOGEX 0, 0, 590, 386 STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Dialog" +CAPTION "CNC Program" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN PUSHBUTTON "Exit",IDCANCEL,533,365,50,14 @@ -1091,7 +1091,7 @@ BEGIN 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x3031, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x4d3c, 0x4346, -0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3438, +0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3434, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4965, 0x3e44, 0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x493e, 0x4244, 0x425f, 0x5449, 0x414d, 0x5f50, 0x5f58, 0x454c, 0x5446, @@ -1118,7 +1118,7 @@ BEGIN 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x3031, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x4d3c, 0x4346, -0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3738, +0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3534, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4965, 0x3e44, 0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x493e, 0x4244, 0x425f, 0x5449, 0x414d, 0x5f50, 0x5f58, 0x4952, 0x4847, @@ -1145,7 +1145,7 @@ BEGIN 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x3031, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x4d3c, 0x4346, -0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3138, +0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3134, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4965, 0x3e44, 0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x493e, 0x4244, 0x425f, 0x5449, 0x414d, 0x5f50, 0x5f59, 0x5246, 0x4e4f, @@ -1173,7 +1173,7 @@ BEGIN 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x3031, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x4d3c, 0x4346, -0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3038, +0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3034, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4965, 0x3e44, 0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x493e, 0x4244, 0x425f, 0x5449, 0x414d, 0x5f50, 0x5f59, 0x4142, 0x4b43, @@ -1201,7 +1201,7 @@ BEGIN 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x3031, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x4d3c, 0x4346, -0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3338, +0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3334, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4965, 0x3e44, 0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x493e, 0x4244, 0x425f, 0x5449, 0x414d, 0x5f50, 0x5f5a, 0x5055, 0x2f3c, @@ -1228,7 +1228,7 @@ BEGIN 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x3031, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x4d3c, 0x4346, -0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3238, +0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3234, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4965, 0x3e44, 0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x493e, 0x4244, 0x425f, 0x5449, 0x414d, 0x5f50, 0x5f5a, 0x4f44, 0x4e57, @@ -1277,7 +1277,7 @@ BEGIN 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x3031, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x4d3c, 0x4346, -0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3737, +0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3933, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4965, 0x3e44, 0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x493e, 0x4244, 0x425f, 0x5449, 0x414d, 0x5f50, 0x4c50, 0x5355, 0x535f, @@ -1305,7 +1305,7 @@ BEGIN 0x7954, 0x6570, 0x3c3e, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x3031, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x5465, 0x7079, 0x3e65, 0x4d3c, 0x4346, -0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3637, +0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x4449, 0x313e, 0x3833, 0x2f3c, 0x464d, 0x4243, 0x7475, 0x6f74, 0x5f6e, 0x6d49, 0x6761, 0x4965, 0x3e44, 0x4d3c, 0x4346, 0x7542, 0x7474, 0x6e6f, 0x495f, 0x616d, 0x6567, 0x493e, 0x4244, 0x425f, 0x5449, 0x414d, 0x5f50, 0x494d, 0x554e, 0x5f53, @@ -2314,6 +2314,10 @@ END STRINGTABLE BEGIN IDS_ABOUTBOX "&About Mv_Util..." +END + +STRINGTABLE +BEGIN IDS_SO7_ABOUTBOX "&About Utility for SO7..." END diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_Program.cpp b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_Program.cpp index 4b33c00..cffe198 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_Program.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_Program.cpp @@ -366,16 +366,56 @@ void CSo7_Util_Program::OnBnClickedButtonSo7ProgramAddCncProgram() void CSo7_Util_Program::OnBnClickedButtonSo7ProgramNewCnc() { m_pSo7_CNC_Program->RemoveAll(); + OutputWithScroll(_T("Remove all cnc program."),m_edMSG); } //=================================================== void CSo7_Util_Program::OnBnClickedButtonSo7ProgramOpenCnc() { - AfxMessageBox(_T("Not supported!")); + CString m_csFile = _T("CNCFILE"); + CString szFilter=_T("Utility CNC Files(*.Prog)|*.Prog|ALL Files(*.*)|*.*||"); + + CFileDialog fileDialog(TRUE, _T("*.Prog"),(LPCTSTR) m_csFile, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter, this); + + if ( fileDialog.DoModal ()==IDOK ) + { + m_pSo7_CNC_Program->RemoveAll(); + OutputWithScroll(_T("Remove all cnc program."),m_edMSG); + m_pSo7_CNC_Program->m_CncProgFileName = fileDialog.GetPathName(); + m_pSo7_CNC_Program->open(); + for (int i=0;im_Program_Number;i++) + { + int iType=m_pSo7_CNC_Program->m_CNC_element[i]->get_type(); + CPoint3 m_pnt; + m_pSo7_CNC_Program->m_CNC_element[i]->GetPoint(0,0,0,NULL,m_pnt); + CString csType=m_pSo7_CNC_Program->GetEntityName(iType); + m_OutMessage.Format(_T("[No.%d] X:%3.4f,Y:%3.4f,Z:%3.4f"), + m_pSo7_CNC_Program->m_CNC_element[i]->m_ID, + m_pnt.x, m_pnt.y, m_pnt.z + ); + m_OutMessage=_T("Add ")+csType+m_OutMessage; + OutputWithScroll(m_OutMessage,m_edMSG); + } + } + delete fileDialog; } //=================================================== void CSo7_Util_Program::OnBnClickedButtonSo7ProgramSaveCncFile() { - AfxMessageBox(_T("Not supported!")); + CString PathName; + + PathName=_T("CNCFILE"); + CString szFilter=_T("Utility CNC Files(*.Prog)|*.Prog|ALL Files(*.*)|*.*||"); + + CFileDialog fdlg(FALSE,_T("Prog"),PathName,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,szFilter); + + if( fdlg.DoModal()==IDOK) + { + m_pSo7_CNC_Program->m_CncProgFileName=fdlg.GetPathName(); + m_pSo7_CNC_Program->Save(); + m_OutMessage=_T("CNC Program has been saved to[")+m_pSo7_CNC_Program->m_CncProgFileName+_T("]."); + OutputWithScroll(m_OutMessage,m_edMSG); + } + delete fdlg; } //=================================================== void CSo7_Util_Program::OnEnKillfocusEditSo7ProgeamCncRuingTimes() diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo index 16c0237..ca32d3b 100644 Binary files a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo and b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo differ