椭圆被勾勒出来,如何填充?

时间:2014-10-06 11:38:47

标签: matlab fill ellipse

在此tutorial中,将概述ellipse。如您所见,将绘制一个红色边框。形成这样的结果,我们如何用white填充这样的包围边界,并将图像的其余部分填充为black

感谢。

1 个答案:

答案 0 :(得分:5)

使用fill和Matlab这样的Google搜索会告诉您有一个名为fill的函数可以执行您想要的操作(检查here)。

在示例中,在调用plot之后将其置于右下角,如下所示。我把整个代码放在for循环中:

for k = 1:length(s)
xbar = s(k).Centroid(1);
ybar = s(k).Centroid(2);

a = s(k).MajorAxisLength/2;
b = s(k).MinorAxisLength/2;

theta = pi*s(k).Orientation/180;
R = [ cos(theta)   sin(theta)
     -sin(theta)   cos(theta)];

xy = [a*cosphi; b*sinphi];
xy = R*xy;

x = xy(1,:) + xbar;
y = xy(2,:) + ybar;

plot(x,y,'r','LineWidth',2);

fill(x,y,rand(1,3)) %// Here is the important line.
end

enter image description here

我将让您了解如何用白色而不是随机颜色填充椭圆。