// 绘制多边形
void CV120201012Dlg::mutiplyDraw()
{
// 定义一张背景板
Mat img = Mat(Size(800, 800), CV_8UC3);
img = Scalar(0, 0, 0);
// 定义5个顶点坐标
Point p1(439, 126);
Point p2(466, 198);
Point p3(546, 198);
Point p4(482, 244);
Point p5(507, 316);
Point p6(439, 275);
Point p7(371,316);
Point p8(396,244);
Point p9(330, 198);
Point p10(414, 198);
// 将5个坐标放入一个容器中
std::vector<Point> vecp;
vecp.push_back(p1);
vecp.push_back(p2);
vecp.push_back(p3);
vecp.push_back(p4);
vecp.push_back(p5);
vecp.push_back(p6);
vecp.push_back(p7);
vecp.push_back(p8);
vecp.push_back(p9);
vecp.push_back(p10);
fillPoly(img,vecp,Scalar(255,0,0),8,0);
polylines(img,vecp,true,Scalar(0,0,255),2,LINE_AA,0);
std::vector<std::vector<Point>> contours;
contours.push_back(vecp);
//drawContours(img, contours, -1,Scalar(0,255,0),-1);
imshow("多边形绘制",img);
}
结果图: