综述
fillConvexPoly绘制一个填充的凸多边形。
这个函数比fillPoly函数快得多。它不仅可以填充凸多边形,也可以填充任何无自交点的单调多边形。
函数
void fillConvexPoly
(
InputOutputArray img,
InputArray points,
const Scalar& color,
int lineType = LINE_8,
int shift = 0
);
img | 输出目标 |
points | 顶点坐标集合 |
color | 填充颜色 |
linType | 边线类型 |
shift | 顶点坐标中的小数位数。 |
测试代码
#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <vector>
using namespace cv;
using namespace std;
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
//新建一个图像
cv::Mat mat(500,600,CV_8UC3,Scalar(200,200,200));
vector<Point> pts;
pts.push_back(Point(100,100));
pts.push_back(Point(300,50));
pts.push_back(Point(510,150));
pts.push_back(Point(300,330));
pts.push_back(Point(150,220));
cv::Scalar color(0,255,0);
fillConvexPoly(mat,pts,color,8);
//显示
imshow("mat",mat);
}
Widget::~Widget()
{
delete ui;
}