我编写了一个程序,本意是想显示两个三角形交集后的图形。
可不知为什么显示不出交集图形。请高手给以指教。
谢谢。
我的信箱:yiwanghu@163.com
我的编写步骤如下:
步骤一. 打开 Microsoft Visual C++6.0软件。
步骤二. 选择“ 文件 ” 、 “ 新建 ” 、“ 工程 ” 项
步骤三. 选择“ MFC AppWizard[exe]
步骤四. 输入工程名为“ EE ”
步骤五. 选择“ 确定 ”
步骤六. 选择“单个文档 ”
步骤七. 选择“ 完成 ” 、“ 确定 ” 。
步骤八. 选择“ ClassView ”项
步骤九 在OnDraw(CDC *pDC )成员函数中添加如下代码( 或粘贴代码):
void CEEView::OnDraw(CDC* pDC)
{
CEEDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
POINT pA[3 ] ;
pA[0].x=100;
pA[0].y=100;
pA[1].x=100;
pA[1].y=200;
pA[2].x=300;
pA[2].y=180;
POINT pB[3 ] ;
pB[0].x=170;
pB[0].y=130;
pB[1].x=130;
pB[1].y=230;
pB[2].x=450;
pB[2].y=280;
int nA=1 ;
int nB=1 ;
//创建多边形区域1
CRgn RgA;
RgA.CreatePolygonRgn(pA ,nA,ALTERNATE);
//创建多边形区域2
CRgn RgB;
RgB.CreatePolygonRgn(pB,nB,ALTERNATE);
//获取相交的多边形区域
CRgn RgC;
RgC.CombineRgn( &RgA,&RgB,RGN_AND);
CBrush brC;
COLORREF colorC=RGB(0,255,0);
brC.CreateSolidBrush(colorC);
pDC->FillRgn( &RgC, &brC);
}