一、绘制圆
1、CvCircle( )函数
<span style="font-size:18px;">void cvCircle(
CvArr* img,
CvPoint center,
int radius,
CvScalar color,
int thickness=1,
int line_type=8,
int shift=0
);</span>
参数:
- img 图像
- center 圆心坐标
- radius 圆形的半径
- color 线条的颜色
- thickness 如果是正数,表示组成圆的线条的粗细程度。否则,表示圆是否被填充
- line_type 线条的类型。
- shift 圆心坐标点和半径值的小数点位数
<span style="font-size:18px;">#include<cv.h>
#include<highgui.h>
using namespace cv;
int main()
{
Point center = Point(100, 100); //圆心
int r = 100; //半径
Scalar Color = CV_RGB(1, 1,1); //线条的颜色
int thickness = 5; //如果是正数,表示组成圆的线条的粗细,否则,表示圆是否被填充。
int line_type = 8; //线条类型
int shift = 0; //圆心坐标点和半径值的小数点位数
Mat picture(200, 200, CV_8UC3, Scalar(255, 255, 255));
circle(picture, center, r, Color,thickness,line_type,shift);
imshow("【底板】", picture);
waitKey(0);
return 0;
}</span>
二、绘制直线
1、CvLine( )函数
<span style="font-size:18px;">void cvLine(
CvArr* img,
CvPoint pt1,
CvPoint pt2,
CvScalar color,
int thickness=1,
int line_type=8,
int shift=0
);</span>
参数:
- img 图像。
- pt1 线段的第一个端点。
- pt2 线段的第二个端点。
- color 线段的颜色。
- thickness 线段的粗细程度。
- line_type 线段的类型。
- shift 坐标点的小数点位数。
<span style="font-size:18px;">#include<cv.h>
#include<highgui.h>
using namespace cv;
int main()
{
Point pst1 = Point(150, 150);
Point pst2 = Point(10, 30);
Scalar color = CV_RGB(255, 0, 0);
int thinkness = 4;
int line_type = 4;
int shift = 0;
Mat img(200, 200, CV_8UC3, Scalar(255, 255, 255));
line(img, pst1, pst2, color, thinkness, CV_AA
, shift);
imshow("【效果图】", img);
waitKey(0);
return 0;
}</span>