代碼如下:
#define POLYGON_AMOUNT 2
void test()
{
//同時繪制兩個多邊形,一個是三角形,一個是正方形。
CvPoint** points = new CvPoint* [POLYGON_AMOUNT];
//兩個多邊形,各有幾個點
int npts[POLYGON_AMOUNT] = {0};
/* 三角形的點的相關資訊 */
npts[0] = 3;
points[0] = new CvPoint[3];
points[0][0] = cvPoint(200, 40);
points[0][1] = cvPoint(150, 80);
points[0][2] = cvPoint(250, 80);
/* 正方形的相關資訊 */
npts[1] = 4;
points[1] = new CvPoint[4];
points[1][0] = cvPoint(150, 100);
points[1][1] = cvPoint(250, 100);
points[1][2] = cvPoint(250, 200);
points[1][3] = cvPoint(150, 200);
CvScalar polycolor;
polycolor.val[0] = 0;
polycolor.val[1] = 0;
polycolor.val[2] = 0xFF;
polycolor.val[3] = 0;
//IplImage * pImage=cvCreateImage(size, pIplImage->depth, pIplImage->nChannels);
//填充多邊形。
cvFillPoly(pImage, points, npts, POLYGON_AMOUNT, polycolor);
//繪制多邊形。可以用不同顔色來突出顯示。
cvPolyLine(pImage, points, npts, POLYGON_AMOUNT, 1, polycolor, 2);
}