ellipse函数用来在图片中绘制椭圆、扇形,有两个重载函数。
函数原型1:
void cv::ellipse( InputOutputArray img,Point center,Size axes,double angle,double startAngle,double endAngle,const Scalar & color,int thickness = 1,int lineType = LINE_8,int shift = 0 )
参数详解:
img:绘制的图像;
center:中心点;
axes:长短轴;
angle:起始的角度;
startangle:弧段的起始角度,
endangle:弧段的结束角度;
color:线条颜色,或者填充的颜色;
thickness:线宽,-1时表示填充;
lineType:线型;
shift:坐标偏移;
注:startangle = 0,endangle = 360时,可绘制出整个椭圆
函数原型2:
void cv::ellipse( InputOutputArray img,const RotatedRect & box,const Scalar & color,int thickness = 1,int lineType = LINE_8
)
参数详解:
img:绘制的图像;
box:椭圆的形状,RotatedRect,有三个属性:angle center size
color:线条颜色,或者填充的颜色;
thickness:线宽,-1时表示填充;
lineType:线型
实例
ellipse(msk, Point(200,200), Size(200,100), 30, 0, 360, Scalar(255),2);
ellipse(msk, Point(300,200), Size(100,200), 0, 0, 180, Scalar(255),2);
RotatedRect e1;e1.center = Point(300,200);e1.size.width = 300;e1.size.height = 200;e1.angle = 90;ellipse(msk, e1, Scalar(255, 0, 0), 1, LINE_AA);