Структура вычислительной системы: трехмерная с размерностью 4х4х3, страница 10

m_memDC.LineTo(pp->pl3[11][0],pp->pl3[11][1]);

m_memDC.MoveTo(pp->pl3[12][0],pp->pl3[12][1]);

m_memDC.LineTo(pp->pl3[15][0],pp->pl3[15][1]);

m_memDC.MoveTo(pp->pl3[0][0],pp->pl3[0][1]);

m_memDC.LineTo(pp->pl3[12][0],pp->pl3[12][1]);

m_memDC.MoveTo(pp->pl3[1][0],pp->pl3[1][1]);

m_memDC.LineTo(pp->pl3[13][0],pp->pl3[13][1]);

m_memDC.MoveTo(pp->pl3[2][0],pp->pl3[2][1]);

m_memDC.LineTo(pp->pl3[14][0],pp->pl3[14][1]);

m_memDC.MoveTo(pp->pl3[3][0],pp->pl3[3][1]);

m_memDC.LineTo(pp->pl3[15][0],pp->pl3[15][1]);

                  m_memDC.SelectObject(old);

//--------------

CString s1;

char f[3];

old=m_memDC.SelectObject(&pgre);

for(int kp=0;kp<16;kp++)

{                itoa(kp+1,f,10);

                  s1=f;

                  m_memDC.TextOut(pp->pl1[kp][0]-20,pp->pl1[kp][1]-20,s1);

}

for(int kp1=0;kp1<16;kp1++,kp++)

{                itoa(kp+1,f,10);

                  s1=f;

                  m_memDC.TextOut(pp->pl2[kp1][0]-20,pp->pl2[kp1][1]-20,s1);

}

for(int kp2=0;kp2<16;kp2++,kp++)

{                itoa(kp+1,f,10);

                  s1=f;

                  m_memDC.TextOut(pp->pl3[kp2][0]-20,pp->pl3[kp2][1]-20,s1);

}

                  m_memDC.SelectObject(old);

//-------------------

                  int d=0;

for(;d<16;d++)

{

m_memDC.MoveTo(pp->pl1[d][0],pp->pl1[d][1]);

m_memDC.LineTo(pp->pl1[d][0]-5,pp->pl1[d][1]+15);

m_memDC.LineTo(pp->pl1[d][0]+(pp->dxpl)*2-5,pp->pl1[d][1]+15);

m_memDC.LineTo(pp->pl1[d][0]+(pp->dxpl)*2,pp->pl1[d][1]);

}

for(d=0;d<4;d++)

{m_memDC.MoveTo(pp->pl1[d][0],pp->pl1[d][1]);

m_memDC.LineTo(pp->pl1[d][0]-30,pp->pl1[d][1]-5);

m_memDC.LineTo(pp->pl1[d][0]-30,pp->pl1[d][1]-(pp->dy)*15+5);

m_memDC.LineTo(pp->pl1[d][0],pp->pl1[d][1]-(pp->dy)*15);

m_memDC.MoveTo(pp->pl2[d][0],pp->pl2[d][1]);

m_memDC.LineTo(pp->pl2[d][0]-30,pp->pl2[d][1]-5);

m_memDC.LineTo(pp->pl2[d][0]-30,pp->pl2[d][1]-(pp->dy)*15+5);

m_memDC.LineTo(pp->pl2[d][0],pp->pl2[d][1]-(pp->dy)*15);

m_memDC.MoveTo(pp->pl3[d][0],pp->pl3[d][1]);

m_memDC.LineTo(pp->pl3[d][0]-30,pp->pl3[d][1]-5);

m_memDC.LineTo(pp->pl3[d][0]-30,pp->pl3[d][1]-(pp->dy)*15+5);

m_memDC.LineTo(pp->pl3[d][0],pp->pl3[d][1]-(pp->dy)*15);

}

for(d=0;d<16;d+=4)

{

m_memDC.MoveTo(pp->pl1[d][0],pp->pl1[d][1]);

m_memDC.LineTo(pp->pl1[d][0]-10,pp->pl1[d][1]-10);

m_memDC.LineTo(pp->pl1[d][0]-10+(pp->dx)*3,pp->pl1[d][1]-10-(pp->dy)*3);

m_memDC.LineTo(pp->pl1[d][0]+(pp->dx)*3,pp->pl1[d][1]-(pp->dy)*3);

m_memDC.MoveTo(pp->pl2[d][0],pp->pl2[d][1]);

m_memDC.LineTo(pp->pl2[d][0]-10,pp->pl2[d][1]-10);

m_memDC.LineTo(pp->pl2[d][0]-10+(pp->dx)*3,pp->pl2[d][1]-10-(pp->dy)*3);

m_memDC.LineTo(pp->pl2[d][0]+(pp->dx)*3,pp->pl2[d][1]-(pp->dy)*3);

m_memDC.MoveTo(pp->pl3[d][0],pp->pl3[d][1]);

m_memDC.LineTo(pp->pl3[d][0]-10,pp->pl3[d][1]-10);

m_memDC.LineTo(pp->pl3[d][0]-10+(pp->dx)*3,pp->pl3[d][1]-10-(pp->dy)*3);

m_memDC.LineTo(pp->pl3[d][0]+(pp->dx)*3,pp->pl3[d][1]-(pp->dy)*3);

}

//----------

if(pp->pcpumf[0]==NULL)

{pDC->BitBlt(0,0,maxX,maxY,&m_memDC,0,0,SRCCOPY);return;}

int kolz=0,sumtr=0;

COLORREF cl=0x000000ff;

COLORREF cl1=0x00000000;

CPen pDR,pDR1;

pDR1.CreatePen(PS_SOLID,5,cl1);//RGB(green?,blue?,red!));

pDR.CreatePen(PS_SOLID,4,cl);//RGB(green?,blue?,red!));

r-=3;

for(kp=0;kp<16;kp++)

{                if(pp->pcpumf[kp]->bitrab==0)

                  {               

                                    CPen *old=m_memDC.SelectObject(&pDR);

m_memDC.Ellipse(pp->pl1[kp][0]-r,pp->pl1[kp][1]-r,pp->pl1[kp][0]+r,pp->pl1[kp][1]+r);

m_memDC.MoveTo(pp->pl1[kp][0]-r-3,pp->pl1[kp][1]-r-3);

m_memDC.LineTo(pp->pl1[kp][0]+r+3,pp->pl1[kp][1]+r+3);