📄 digitalpoweranalystview.cpp
字号:
break;
case 8:
if(m_StationOnLine[4])
{
m_ComPort.WriteToDevice((char ) 0x96,4,0,"",0);//23 Return whether a adapter is present in a station or not
}
break;
case 10:
if(m_StationOnLine[1])
{
m_ComPort.WriteToDevice((char ) 0x97,1,0,"",0);//23 Return whether a adapter is present in a station or not
}
break;
case 12:
if(m_StationOnLine[2])
{
m_ComPort.WriteToDevice((char ) 0x97,2,0,"",0);//23 Return whether a adapter is present in a station or not
}
break;
case 14:
if(m_StationOnLine[3])
{
m_ComPort.WriteToDevice((char ) 0x97,3,0,"",0);//23 Return whether a adapter is present in a station or not
}
break;
case 16:
if((m_StationOnLine[4]))
{
m_ComPort.WriteToDevice((char ) 0x97,4,0,"",0);//23 Return whether a adapter is present in a station or not
}
break;
case 18:
if((m_BatteryStatus[1]))
{
m_ComPort.WriteToDevice((char )0x83,1,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 20:
if((m_BatteryStatus[2]))
{
m_ComPort.WriteToDevice((char )0x83,2,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 22:
if((m_BatteryStatus[3]))
{
m_ComPort.WriteToDevice((char )0x83,3,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 24:
if((m_BatteryStatus[4]))
{
m_ComPort.WriteToDevice((char )0x83,4,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 26:
if((m_BatteryStatus[1]))
{
m_ComPort.WriteToDevice((char )0x88,1,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 28:
if((m_BatteryStatus[2]))
{
m_ComPort.WriteToDevice((char )0x88,2,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 30:
if((m_BatteryStatus[3]))
{
m_ComPort.WriteToDevice((char )0x88,3,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 32:
if((m_BatteryStatus[4]))
{
m_ComPort.WriteToDevice((char )0x88,4,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 34:
//if((m_BatteryStatus[1]))
{
m_ComPort.WriteToDevice((char )0x99,1,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 36:
if((m_BatteryStatus[2]))
{
m_ComPort.WriteToDevice((char )0x99,2,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 40:
if((m_BatteryStatus[3]))
{
m_ComPort.WriteToDevice((char )0x99,3,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 42:
if((m_BatteryStatus[4]))
{
m_ComPort.WriteToDevice((char )0x99,4,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 44:
// if((m_BatteryStatus[4]))
{
m_ComPort.WriteToDevice((char )0xBD,0,0,"",0); //25 Return the special data-format for battery-pack
}
break;
case 46:
// if((m_BatteryStatus[4]))
{
// m_ComPort.WriteToDevice((char )0x85,0,0,"",0); //25 Return the special data-format for battery-pack
}
break;
}
//Invalidate(FALSE);
// for(int j=0;j<8;j++)
// m_BatteryStatus[j]=1;
switch (lInterval%8)
{
case 1: //if((m_BatteryStatus[1]))
{
m_ComPort.WriteToDevice((char )0x8B,1,0,"",0);//11 send detail display data
}
break;
case 3: //if((m_BatteryStatus[2]))
{
m_ComPort.WriteToDevice((char )0x8B,2,0,"",0);//11 send detail display data
}
break;
case 5: //if((m_BatteryStatus[3]))
{ //
m_ComPort.WriteToDevice((char )0x8B,3,0,"",0);//11 send detail display data
}
break;
case 7:// if((m_BatteryStatus[4]))
{
m_ComPort.WriteToDevice((char )0x8B,4,0,"",0); //25 Return the special data-format for battery-pack
//m_StaticPicture.InvalidateRect(&rectLcd , TRUE );
}
break;
}
m_lInterval=(long)(lInterval *1.5);
lInterval++;
}
void CDigitalPowerAnalystView::WriteToPicture(int x,int y,int z)
{static long TotlLineDot=0;
int tmpY,tmpX,tmpZ;
long RestoreNum;
static long LineDotNum=0;
static int OldXPicture;
static int OldYPicture;
static int OldZPicture;
int tmpMidY,tmpMidX,tmpMidZ;
CString tmpStr;
if(bClearData==TRUE)
{TotlLineDot=0;
LineDotNum=0;
bClearData=FALSE;
return;
}
pDCPicture=new CClientDC(&m_StaticDataDisp);//&m_StaticPicture);&m_StaticDataDisp
CPen * oldPenPicture=(CPen*)pDCPicture->SelectObject(&penPicture);
tmpY=y; tmpX=x;tmpZ=z;
if((TotlLineDot==0)&&(m_CHECKStationALL ==FALSE) )
{
{
m_StepScaleY=STEPSCALEY;
m_StandMinY=(int)((int)(y/STEPSCALEY)*STEPSCALEY);
m_StandMaxY=(int)(((int)(y/STEPSCALEY)*STEPSCALEY+m_StepScaleY));
ChangeLable( m_StandMinY,m_StepScaleY/8);//
m_StandMinX=0;
m_StandMaxX=1800;
m_StepScaleX=1800;
ChangLableTime( m_StandMinX,m_StepScaleX/8);
m_StepScaleZ=STEPSCALEZ;
m_StandMinZ=(int)((int)(z/STEPSCALEZ)*STEPSCALEZ);
m_StandMaxZ=(int)(((int)(z/STEPSCALEZ)*STEPSCALEZ+m_StepScaleZ));
ChangLabeCurrent( m_StandMinZ,m_StepScaleZ/8);//
}
}
x=nLeftPicture+nRightPicture*(tmpX-m_StandMinX)/m_StepScaleX;//5000
y=nBottomPicture-int(nBottomPicture*((tmpY-m_StandMinY)/m_StepScaleY));//-m_StandMinY
z=nBottomPicture-int(nBottomPicture*((tmpZ-m_StandMinZ)/m_StepScaleZ));
if(( m_bTranStation==TRUE)||(TotlLineDot==0))
{
OldXPicture=x;
OldYPicture=y;
OldZPicture=z;
}
if(m_bTranStation==FALSE)
{
LineDotNum++; TotlLineDot++;
}
if(x>nRightPicture)
{ m_StandMinX=tmpX;
m_StandMaxX=m_StandMinX+m_StepScaleX;
ChangLableTime( m_StandMinX,m_StepScaleX/8);//
LineDotNum=0;
ClearLine();
WriteGrid(&m_StaticDataDisp);
//5000
OldXPicture=0;
x=nLeftPicture+nRightPicture*(tmpX-m_StandMinX)/m_StepScaleX;//5000
}
while(y>nBottomPicture)
{ m_StepScaleY=m_StepScaleY+STEPSCALEY;
m_StandMinY=m_StandMinY-STEPSCALEY;///2
y=nBottomPicture-nBottomPicture* (float(tmpY-m_StandMinY)/(m_StepScaleY));//-m_StandMinY
m_bTranStation=TRUE;
OldXPicture=x;
OldYPicture=y;
}
while(z>nBottomPicture)
{ m_StepScaleZ=m_StepScaleZ+STEPSCALEZ;
m_StandMinZ=m_StandMinZ-STEPSCALEZ;///2
z=nBottomPicture-nBottomPicture* (float(tmpZ-m_StandMinZ)/(m_StepScaleZ));//-m_StandMinY
m_bTranStation=TRUE;
OldXPicture=x;
OldZPicture=z;
}
while(y<0)
{ m_StepScaleY=m_StepScaleY+STEPSCALEY ;
m_StandMaxY=m_StandMinY+STEPSCALEY;///2
y=nBottomPicture-nBottomPicture* (float(tmpY-m_StandMinY)/m_StepScaleY);//-m_StandMinY
m_bTranStation=TRUE;
}
while(z<0)
{ m_StepScaleZ=m_StepScaleZ+STEPSCALEZ ;
m_StandMaxZ=m_StandMinY+STEPSCALEZ;///2
z=nBottomPicture-nBottomPicture* (float(tmpZ-m_StandMinZ)/m_StepScaleZ);//-m_StandMinY
m_bTranStation=TRUE;
}
if( m_bTranStation==TRUE)
{
ChangeLable( m_StandMinY,m_StepScaleY/8);//
ChangLabeCurrent( m_StandMinZ,m_StepScaleZ/8);//
//OnDraw(pDCPicture) ;
ClearLine();
WriteGrid(&m_StaticDataDisp);
OldXPicture=x;
OldYPicture=y;
OldZPicture=z;
}
UpdateData(FALSE);
// tmpY=OldYPicture;/////////
pDCPicture->SelectObject(&penPicture);
pDCPicture->MoveTo(OldXPicture,OldYPicture);
pDCPicture->LineTo(x,y);
pDCPicture->SelectObject(&penPictureV);
pDCPicture->MoveTo(OldXPicture,OldZPicture);
pDCPicture->LineTo(x,z);
if( m_bTranStation==TRUE)
{
//if((!m_pSet->IsEOF())&&(!m_pSet->IsBOF()))
m_pSet->MoveLast();
if(m_CHECKStationALL ==TRUE)
RestoreNum=(TotlLineDot)*4+CurStation-1;
else
RestoreNum=(LineDotNum )*4+CurStation -1;
for(int j=0;j< RestoreNum;j++)
{ if(!m_pSet->IsBOF())
m_pSet->MovePrev();
}
for( j=0;j< RestoreNum;j++)
{
if(CurStation==m_pSet->m_Station)
{
x=nLeftPicture+nRightPicture*(m_pSet->m_CourseTime-m_StandMinX)/m_StepScaleX;//5000
y=nBottomPicture-nBottomPicture* (float(m_pSet->m_ChargeVoltage-m_StandMinY)/m_StepScaleY);
z=nBottomPicture-nBottomPicture* (float(m_pSet->m_ChargeCurrent-m_StandMinZ)/m_StepScaleZ);
if (j/4==0)
{ //pDCPicture->MoveTo(x,y);
tmpMidY=y;
tmpMidX=x;
tmpMidZ=z;
}
else
{
// if(j>=4)
pDCPicture->SelectObject(&penPicture);
pDCPicture->MoveTo(tmpMidX,tmpMidY);
pDCPicture->LineTo(x,y);
pDCPicture->SelectObject(&penPictureV);
pDCPicture->MoveTo(tmpMidX,tmpMidZ);
pDCPicture->LineTo(x,z);
tmpMidY=y;
tmpMidX=x;
tmpMidZ=z;
}
}
if( (!m_pSet->IsEOF()))
{
m_pSet->MoveNext(); //Prev
}
}
m_pSet->MoveLast();
// pDCPicture->MoveTo(x,y);
m_bTranStation=FALSE;
}
OldXPicture=x;
OldYPicture=y;
OldZPicture=z;
pDCPicture->SelectObject(oldPenPicture);
delete[] pDCPicture;
}
/*
void CDigitalPowerAnalystView::WriteToPictureALL(int x,int y)
{static int i=0;
int tmpY,tmpX,MinY,m_StandMaxY;
static long LineDotNum=0;
CString tmpStr;
pDCPicture=new CClientDC(&m_StaticDataDisp);//&m_StaticPicture);&m_StaticDataDisp
CPen * oldPenPicture=(CPen*)pDCPicture->SelectObject(&penPicture);
if((i==0)&&(m_bTranStation==FALSE) )
{
m_StepScaleY=312.5;
m_StandMinY=(int)((y/312)*STEPSCALEY);
m_StandMaxY=(int)(((y/312)*STEPSCALEY+STEPSCALEY));
ChangeLable( m_StandMinY,m_StepScaleY/8);//
m_StandMinX=0;
m_StandMaxX=1800;
m_StepScaleX=1800;
m_bTranStation=FALSE;
}
tmpY=y; tmpX=x;
x=nLeftPicture+nRightPicture*(tmpX-m_StandMinX)/m_StepScaleX;//5000
y=nBottomPicture-int(nBottomPicture*((tmpY-m_StandMinY)/m_StepScaleY));//-m_StandMinY
static int OldXPicture=x;
static int OldYPicture=y;
if(x>nRightPicture)
{ m_StandMinX=tmpX;
m_StandMaxX=m_StandMinX+m_StepScaleX;
ChangLableTime( m_StandMinX,m_StepScaleX/8);//
LineDotNum=0;
ClearLine();
WriteGrid(&m_StaticDataDisp);
// this->Invalidate(TRUE);
//OnDraw(pDCPicture) ;
//5000
OldXPicture=0;
x=nLeftPicture+nRightPicture*(tmpX-m_StandMinX)/m_StepScaleX;//5000
}
while(y>nBottomPicture)
{ m_StepScaleY=m_StepScaleY+STEPSCALEY;
m_StandMinY=m_StandMinY-STEPSCALEY;///2
y=nBottomPicture-nBottomPicture* (float(tmpY-m_StandMinY)/(m_StepScaleY));//-m_StandMinY
m_bTranStation=TRUE;
OldXPicture=x;
OldYPicture=y;
}
while(y<0)
{ m_StepScaleY=m_StepScaleY+STEPSCALEY ;
m_StandMaxY=m_StandMinY+STEPSCALEY;///2
y=nBottomPicture-nBottomPicture* (float(tmpY-m_St
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -