www.pudn.com > subject_1_113294.rar > Polyline.cpp, change:2002-05-24,size:1217b
// Polyline.cpp: implementation of the CPolyline class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "Paint.h"
#include "Polyline.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CPolyline::CPolyline():CElement()
{
PointNum=0;
PointList=new CPoint[100];
}
CPolyline::CPolyline(int PointNumber,CPoint *List):CElement()
{
PointNum=PointNumber;
PointList=List;
}
CPolyline::~CPolyline()
{
}
void CPolyline::DrawItem(CDC *pDC)
{
CPen *Pen=new CPen();
CPen *OldPen;
Pen->CreatePen(LineStyle,LineWidth,LineColor);
OldPen=pDC->SelectObject(Pen);
pDC->Polyline(PointList,PointNum);
pDC->SelectObject(OldPen);
delete Pen;
}
void CPolyline::Serialize(CArchive &ar)
{
CElement::Serialize(ar);
if(ar.IsStoring())
{
ar<<PointNum;
for(int i=0;i<PointNum;i++)
ar<<PointList[i];
}
else
{
ar>>PointNum;
for(int i=0;i<PointNum;i++)
ar>>PointList[i];
}
}